Commit Graph
4657 Commits
Author SHA1 Message Date
thePR0M3TH3AN 5694e940f0 Merge pull request #2005 from PR0M3TH3AN/chore/triage-todos-2139580575813254887
Triage TODOs and report issues
2026-01-31 13:47:32 -05:00
thePR0M3TH3AN 300706382a Merge pull request #2012 from PR0M3TH3AN/ai/deps-safe-upgrades-3374834892089585189
chore(ai): dependency scan and safe upgrades
2026-01-31 13:46:49 -05:00
thePR0M3TH3AN f58b9f709e Merge branch 'unstable' into ai/deps-safe-upgrades-3374834892089585189 2026-01-31 13:46:34 -05:00
thePR0M3TH3AN 1746933051 Merge pull request #2017 from PR0M3TH3AN/ai/docs-update-20251025-11051811202313978357
docs(ai): update quickstart and contributing (agent)
2026-01-31 13:45:59 -05:00
thePR0M3TH3AN e0f2711b2b Merge branch 'unstable' into ai/docs-update-20251025-11051811202313978357 2026-01-31 13:45:48 -05:00
thePR0M3TH3AN 45228d4e21 Merge pull request #2013 from PR0M3TH3AN/ai/changelog-20260131-14640726990701590988
docs(ai): weekly changelog draft
2026-01-31 13:44:34 -05:00
thePR0M3TH3AN 4fc101f7ce Merge branch 'unstable' into ai/changelog-20260131-14640726990701590988 2026-01-31 13:44:21 -05:00
thePR0M3TH3AN 22e02cedc2 Merge pull request #2009 from PR0M3TH3AN/telemetry-aggregation-8056813995017540806
Document and verify privacy-preserving telemetry aggregation
2026-01-31 13:43:25 -05:00
thePR0M3TH3AN 6422dc6e71 Merge branch 'unstable' into telemetry-aggregation-8056813995017540806 2026-01-31 13:42:13 -05:00
thePR0M3TH3AN 93fd6de309 Merge pull request #2008 from PR0M3TH3AN/ai/schema-validate-20250226-13203498180481473459
chore(ai): event schema validation tool + fixes
2026-01-31 13:41:04 -05:00
thePR0M3TH3AN 47fde8dd84 Merge branch 'unstable' into ai/schema-validate-20250226-13203498180481473459 2026-01-31 13:40:52 -05:00
google-labs-jules[bot]andPR0M3TH3AN 0ffdf9c7f8 fix(ci): Resolve unit test failures in nostr-login-permissions and hashtag-preferences
*   Updated `loginWithExtension` in `js/nostr/client.js` to request `DEFAULT_NIP07_PERMISSION_METHODS` (which includes encryption permissions) instead of `DEFAULT_NIP07_CORE_METHODS`. This fixes `tests/nostr-login-permissions.test.mjs` by ensuring the permission cache is correctly populated during login.
*   Updated the `fetchListIncrementally` mock in `tests/hashtag-preferences.test.mjs` to consistently return the event array on subsequent calls. This fixes the "load defers permission-required decrypts" test case by ensuring the second `load()` attempt actually receives data to process, triggering the decryption retry logic.
*   Retained artifacts from the TODO triage task (`artifacts/todos.txt` and `artifacts/issue_moderation_tests.md`) as part of the overall work unit.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:51:27 +00:00
google-labs-jules[bot]andPR0M3TH3AN 76a90a1a62 chore(ai): safe dependency upgrades and test fixes
- Upgrade playwright to 1.58.1 and autoprefixer to 10.4.24
- Fix permission caching in client.js
- Improve test robustness for hashtag preferences
- Add dependency scan artifacts
- Document deferred upgrades

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:46:06 +00:00
google-labs-jules[bot]andPR0M3TH3AN f825b84dfd fix(ci): Resolve unit test failures in nostr-login-permissions and hashtag-preferences
*   Updated `loginWithExtension` in `js/nostr/client.js` to request `DEFAULT_NIP07_PERMISSION_METHODS` (which includes encryption permissions) instead of `DEFAULT_NIP07_CORE_METHODS`. This fixes `tests/nostr-login-permissions.test.mjs` by ensuring the permission cache is correctly populated during login.
*   Updated the `fetchListIncrementally` mock in `tests/hashtag-preferences.test.mjs` to consistently return the event array on subsequent calls. This fixes the "load defers permission-required decrypts" test case by ensuring the second `load()` attempt actually receives data to process, triggering the decryption retry logic.
*   Retained artifacts from the TODO triage task (`artifacts/todos.txt` and `artifacts/issue_moderation_tests.md`) as part of the overall work unit.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:32:09 +00:00
thePR0M3TH3AN d999b79e5a Merge pull request #2011 from PR0M3TH3AN/ai/onboarding-20250129-12232766230754991727
docs(ai): improve onboarding steps and fix unit tests
2026-01-31 10:23:04 -05:00
thePR0M3TH3AN 525fc049be Merge pull request #2014 from PR0M3TH3AN/ai/tests-profile-cache-20250220-7730745390613459017
Add unit tests for ProfileCache
2026-01-31 10:20:47 -05:00
thePR0M3TH3AN cffbe26c04 Merge pull request #2007 from PR0M3TH3AN/ai/refactor-profile-modal-20231026-3866161108178541875
Refactor handleAddProfile to ProfileModalController
2026-01-31 10:18:13 -05:00
thePR0M3TH3AN d622feae7e Merge pull request #2006 from PR0M3TH3AN/ai/ci-health-20250222-10294193962202990825
chore(ai): CI health fixes (flaky tests)
2026-01-31 10:17:17 -05:00
google-labs-jules[bot]andPR0M3TH3AN 015d979d6d fix(ci): update nostr client login permissions and test mocks (agent)
- Update `js/nostr/client.js` to request all default permissions (including encryption) during login, fixing `tests/nostr-login-permissions.test.mjs`.
- Update `tests/hashtag-preferences.test.mjs` to properly mock `window.nostr` with `signEvent` and `getPublicKey`, and fix `fetchListIncrementally` mock.
- Fix broken test assertions in `hashtag-preferences.test.mjs`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:04:27 +00:00
google-labs-jules[bot]andPR0M3TH3AN 85545d2566 fix(ci): update nostr client login permissions and test mocks (agent)
- Update `js/nostr/client.js` to request all default permissions (including encryption) during login, fixing `tests/nostr-login-permissions.test.mjs`.
- Update `tests/hashtag-preferences.test.mjs` to properly mock `window.nostr` with `signEvent` and `getPublicKey`, and fix `fetchListIncrementally` mock.
- Fix broken test assertions in `hashtag-preferences.test.mjs`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 14:58:55 +00:00
google-labs-jules[bot]andPR0M3TH3AN dc3a14c086 fix(ci): update nostr client login permissions and test mocks (agent)
- Update `js/nostr/client.js` to request all default permissions (including encryption) during login, fixing `tests/nostr-login-permissions.test.mjs`.
- Update `tests/hashtag-preferences.test.mjs` to properly mock `window.nostr` with `signEvent` and `getPublicKey`, and fix `fetchListIncrementally` mock to ensure reliable test execution.
- Fix broken test assertions in `hashtag-preferences.test.mjs`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 14:53:43 +00:00
google-labs-jules[bot]andPR0M3TH3AN d8d82cc51d docs(ai): update quickstart and contributing (agent)
- Update `README.md` example to clarify 's' tag auto-generation.
- Update `CONTRIBUTING.md` with explicit `npm run lint` details and new "Event Schema Validation" section.
- Verified all documentation against codebase.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 14:18:55 +00:00
google-labs-jules[bot]andPR0M3TH3AN a39e7d832d test(ai): add unit tests for profileCache (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 11:24:53 +00:00
google-labs-jules[bot]andPR0M3TH3AN 3c2eb7b2a5 fix(build): remove duplicate dependencies from devDependencies
- Removes `@noble/hashes`, `@tailwindcss/typography`, and `autoprefixer` from `devDependencies` as they are already in `dependencies`.
- This resolves build instability on Netlify caused by duplicate dependency declarations.
- Updates `package-lock.json`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 10:47:28 +00:00
google-labs-jules[bot]andPR0M3TH3AN 9c682040c5 fix(build): remove duplicate dependencies from devDependencies
- Removes `@noble/hashes`, `@tailwindcss/typography`, and `autoprefixer` from `devDependencies`.
- These packages are already listed in `dependencies` (sometimes with mismatched versions), which violates the project's dependency guidelines and can cause build instability on CI platforms like Netlify.
- Updates `package-lock.json` via `npm install`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 10:41:56 +00:00
google-labs-jules[bot]andPR0M3TH3AN 5fe938ef9f fix(ci): address failures in lint, login permissions, and unit tests
- Update `scripts/check-hex.js` to ignore `releases/` directory to prevent false positives from PR numbers.
- Update `js/nostr/client.js` to request full NIP-07 permissions (including encryption) during login, fixing `tests/nostr-login-permissions.test.mjs`.
- Update `tests/hashtag-preferences.test.mjs` to make the mock fetch function consistently return the event, allowing retry logic to be tested correctly.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 10:34:19 +00:00
google-labs-jules[bot]andPR0M3TH3AN be43c266e0 fix(test): resolve hangs in multiple unit tests and harden runner
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 10:33:50 +00:00
google-labs-jules[bot]andPR0M3TH3AN 0d37880443 docs(ai): weekly changelog draft
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 10:24:04 +00:00
google-labs-jules[bot]andPR0M3TH3AN 42a18fa784 fix(test): resolve hangs in multiple unit tests
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 10:13:24 +00:00
google-labs-jules[bot]andPR0M3TH3AN 2c87b94b62 fix(tests): resolve hashtag preferences unit test failure
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 09:50:04 +00:00
google-labs-jules[bot]andPR0M3TH3AN 9d829f548b fix(nostr): request encryption permissions during extension login
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 09:32:02 +00:00
google-labs-jules[bot]andPR0M3TH3AN de7a215f77 fix(test): resolve hang in nostr-login-permissions test
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 09:23:29 +00:00
google-labs-jules[bot]andPR0M3TH3AN 8588473ca9 chore(ai): bump playwright, autoprefixer and document dependency status
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 09:22:51 +00:00
google-labs-jules[bot]andPR0M3TH3AN ec3691e659 docs(ai): improve onboarding steps and fix unit tests
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 08:54:59 +00:00
google-labs-jules[bot]andPR0M3TH3AN eeb3283344 fix(ci): prevent signer hangs in tests and background services
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 08:14:53 +00:00
google-labs-jules[bot]andPR0M3TH3AN a920032993 fix(ci): prevent signer timeouts in background tests
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 07:14:47 +00:00
google-labs-jules[bot]andPR0M3TH3AN 731cde1d95 feat(telemetry): Add privacy-preserving telemetry aggregator and fix CI unit tests
- Added `scripts/agent/telemetry-aggregator.mjs` to aggregate error logs while stripping PII.
- Updated `AGENTS.md` with telemetry policy.
- Cleaned up `package.json` dev dependencies.
- Fixed `tests/nostr-login-permissions.test.mjs` by updating `js/nostr/client.js` to request all encryption permissions during login.
- Fixed `tests/hashtag-preferences.test.mjs` by clearing `nostrClient.extensionPermissionCache` in test setup to prevent state leakage.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 07:06:24 +00:00
google-labs-jules[bot]andPR0M3TH3AN e487d6584a fix(ci): Resolve unit test failures and clean up package.json
- Fix `tests/nostr-login-permissions.test.mjs`: Refresh permission cache reference after login.
- Fix `tests/hashtag-preferences.test.mjs`: Update mock to correctly simulate permission state.
- Remove duplicate dependencies from `devDependencies` in `package.json`.
- Document telemetry script in `AGENTS.md`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 06:53:32 +00:00
google-labs-jules[bot]andPR0M3TH3AN ce8c5931e5 chore(ai): event schema validation tool + fixes
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 06:53:22 +00:00
google-labs-jules[bot]andPR0M3TH3AN c761bb4b24 fix(ci): Fix unit tests for permissions and document telemetry aggregation
- Fix `tests/nostr-login-permissions.test.mjs`: Refresh `extensionPermissionCache` reference after login to ensure assertions check the current state.
- Fix `tests/hashtag-preferences.test.mjs`: Update `window.nostr` mock to accurately simulate permission state for `runNip07WithRetry`, resolving assertion failures.
- Document `telemetry:aggregate` script in `AGENTS.md` as previously planned.
- Verify `scripts/agent/telemetry-aggregator.mjs` is tracked and functional.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 06:43:18 +00:00
google-labs-jules[bot]andPR0M3TH3AN 45f28f1d6b feat(telemetry): Document telemetry aggregation tool usage in AGENTS.md
- Added section 11 to AGENTS.md describing the `telemetry:aggregate` script.
- Documented privacy policy (PII sanitization) and opt-in guardrails.
- Verified the script functionality and PII removal.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 06:18:57 +00:00
google-labs-jules[bot]andPR0M3TH3AN 05a3aa2b1f chore(ai): event schema validation tool + fixes
- Created `scripts/agent/validate-events.mjs` to verify event builders against schemas.
- Enhanced validation script with test cases for Relay List (object format), Hashtag Preferences (encrypted), and Video Post (additional tags).
- Updated `docs/nostr-event-schemas.md` to document the validation workflow.
- Verified runtime event construction by instrumenting tests with dev mode (reverted clean).

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 05:36:48 +00:00
google-labs-jules[bot]andPR0M3TH3AN 1c12cc0d17 refactor(ai): extract handleAddProfile from js/app.js (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 04:20:24 +00:00
google-labs-jules[bot]andPR0M3TH3AN 2c5fc53f3f refactor(ai): extract handleAddProfile from js/app.js (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 04:05:20 +00:00
google-labs-jules[bot]andPR0M3TH3AN f5e16f296e refactor(ai): extract handleAddProfile from js/app.js (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 03:55:51 +00:00
google-labs-jules[bot]andPR0M3TH3AN 4fd8f5203e chore(ai): CI health fixes (flaky tests, deps cleanup)
- Fix flaky `tests/hashtag-preferences.test.mjs` by correcting mock implementation.
- Fix `tests/nostr-login-permissions.test.mjs` failure by requesting correct permissions in `js/nostr/client.js`.
- Fix 90s timeout in `HashtagPreferencesService` by clearing the timeout timer properly.
- Clean up `package.json` by removing duplicate devDependencies (`autoprefixer`, `@tailwindcss/typography`) that are already in `dependencies`.
- Ensure `tailwindcss`, `postcss`, `autoprefixer`, and `@tailwindcss/typography` are in `dependencies` for robust production builds.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 03:33:30 +00:00
google-labs-jules[bot]andPR0M3TH3AN 51087fad7e refactor(ai): extract handleAddProfile from js/app.js (agent)
Moves `handleAddProfile` logic from the main application class into `ProfileModalController` to improve separation of concerns as per `AGENTS.md`.

- Extracts `handleAddProfile` to `js/ui/profileModalController.js`.
- Updates `ProfileModalController` to handle add account flow internally.
- Removes legacy callback wiring from `js/app.js` and `js/ui/applicationBootstrap.js`.
- Adds unit tests for the extracted logic in `tests/ui/profileModalController-addProfile.test.mjs`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 03:32:52 +00:00
google-labs-jules[bot]andPR0M3TH3AN df938c7564 chore(ai): CI health fixes (flaky tests, deps, deploy)
- Fix flaky `tests/hashtag-preferences.test.mjs` by correcting mock implementation for `fetchListIncrementally`.
- Fix `tests/nostr-login-permissions.test.mjs` failure by requesting correct permissions in `js/nostr/client.js` (ReferenceError fix).
- Fix 90s timeout in `HashtagPreferencesService` by clearing the timeout timer upon successful decryption.
- Correct `package.json` dependency classification:
  - Remove duplicate devDependencies (`autoprefixer`, `@tailwindcss/typography`) that are already in `dependencies`.
  - Ensure build-critical tools (`tailwindcss`, etc.) are in `dependencies` to survive `npm prune --production` on Netlify.
  - Install `esbuild` and `cross-env` as devDependencies.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 03:27:16 +00:00
google-labs-jules[bot]andPR0M3TH3AN daa97a827b chore(ai): CI health fixes (flaky tests) and variable correction
- Fix flaky `tests/hashtag-preferences.test.mjs` by correcting mock implementation for `fetchListIncrementally`.
- Fix `tests/nostr-login-permissions.test.mjs` failure by requesting correct permissions in `js/nostr/client.js` (ReferenceError fix).
- Fix 90s timeout in `HashtagPreferencesService` by clearing the timeout timer upon successful decryption.
- `npm install` was run to ensure dependencies like `jsdom` are present.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 03:14:30 +00:00
google-labs-jules[bot]andPR0M3TH3AN e027e6bba3 chore(ai): CI health fixes (flaky tests)
- Fix flaky `tests/hashtag-preferences.test.mjs` by correcting mock implementation for `fetchListIncrementally`.
- Fix `tests/nostr-login-permissions.test.mjs` failure by requesting correct permissions in `js/nostr/client.js`.
- Fix 90s timeout in `HashtagPreferencesService` by clearing the timeout timer upon successful decryption.
- `npm install` was run to ensure dependencies like `jsdom` are present for `tests/app/channel-profile-moderation.test.mjs`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 03:08:33 +00:00