Commit Graph
4682 Commits
Author SHA1 Message Date
google-labs-jules[bot]andPR0M3TH3AN 2b07311832 fix(webtorrent): ensure webseed-only streams are marked healthy
Previously, `probePeers` would mark a stream as unhealthy if no P2P peers were found, even if a valid webseed was present. This caused the UI to disable playback for webseed-only content.

This fix:
1. Updates `js/webtorrent.js` to return `healthy: true` (reason: "webseed") if `peers === 0` but `hasWebSeed` is true.
2. Adds `tests/webtorrent-regression.test.mjs` to verify this behavior.
3. Fixes `package-lock.json` to resolve inconsistencies with `esbuild` versions that were causing CI build failures.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 19:14:57 +00:00
google-labs-jules[bot]andPR0M3TH3AN 9aaf8aa4d5 fix(webtorrent): ensure webseed-only streams are marked healthy
Previously, `probePeers` would mark a stream as unhealthy (healthy: false) if no P2P peers were found, even if a valid webseed was present. This caused the UI to potentially disable playback or show error states for webseed-only content.

This fix ensures that if `peers === 0` but `hasWebSeed` is true, the probe result returns `healthy: true` with reason `"webseed"`.

Added `tests/webtorrent-regression.test.mjs` to verify this behavior and prevent future regressions.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 19:07:31 +00:00
thePR0M3TH3AN 1dd379577f Merge pull request #2021 from PR0M3TH3AN/ai/fuzz-targets-20260131-17598416067342863881
feat: fuzz testing harnesses for input robustness
2026-01-31 13:50:48 -05:00
thePR0M3TH3AN 3ea7cc3c64 Merge branch 'unstable' into ai/fuzz-targets-20260131-17598416067342863881 2026-01-31 13:50:37 -05:00
thePR0M3TH3AN 01f6ab10c8 Merge pull request #2020 from PR0M3TH3AN/chore/design-system-audit-report-12130445815758743012
chore: Daily Design System Audit Report
2026-01-31 13:49:30 -05:00
thePR0M3TH3AN 394dec1ad2 Merge branch 'unstable' into chore/design-system-audit-report-12130445815758743012 2026-01-31 13:49:21 -05:00
thePR0M3TH3AN 232599dda8 Merge pull request #2019 from PR0M3TH3AN/agent/automated-pr-review-fixes-3637557005884121646
fix(ai): automated review fixes for tests and permissions
2026-01-31 13:48:58 -05:00
thePR0M3TH3AN daa9161f96 Merge branch 'unstable' into agent/automated-pr-review-fixes-3637557005884121646 2026-01-31 13:48:46 -05:00
thePR0M3TH3AN 66f41b56a1 Merge pull request #2018 from PR0M3TH3AN/ai/dead-code-20241024-16967779679149472382
Dead Code Sweep: Remove orphaned tracker config and signing adapter
2026-01-31 13:47:52 -05:00
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 3aec530b02 fix: resolve CI deploy failure by enforcing Node 22 and moving build deps
- Create `.nvmrc` with `22` to ensure consistent Node version on Netlify/CI.
- Move `cross-env`, `esbuild`, `nostr-tools` to `dependencies` to prevent pruning issues.
- (Previous) Added fuzz harnesses and harmonized iterations.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 17:55:07 +00:00
google-labs-jules[bot]andPR0M3TH3AN 4e0bb10325 fix: resolve CI deploy failure by enforcing Node 22 and moving build deps
- Create `.nvmrc` with `22` to ensure consistent Node version on Netlify/CI.
- Move `cross-env`, `esbuild`, `nostr-tools` to `dependencies` to prevent pruning issues.
- (Previous) Added fuzz harnesses and harmonized iterations.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 17:41:34 +00:00
google-labs-jules[bot]andPR0M3TH3AN a0daeb8e63 feat: add fuzz testing harnesses and fix build dependencies
- Add fuzz testing harnesses for `nostrEventSchemas.js`, `dmDecryptor.js`, and `magnetUtils.js`.
- Move build-critical devDependencies (`cross-env`, `esbuild`, `nostr-tools`) to dependencies to fix Netlify deployment failure.
- Harmonize fuzzing iterations to 50,000.
- Add documentation headers to fuzz scripts.
- Verified robustness of fuzz targets (no crashes found).

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 17:26:47 +00:00
google-labs-jules[bot]andPR0M3TH3AN 26b1552af5 feat: add fuzz testing harnesses for schemas, dm, and magnet utils
- Harmonize fuzzing iteration counts to 50,000 for robustness
- Add documentation headers to fuzz scripts
- Verify robustness of `nostrEventSchemas.js`, `dmDecryptor.js`, and `magnetUtils.js`
- Clean up temporary reproducers and crash reports

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 17:22:54 +00:00
google-labs-jules[bot]andPR0M3TH3AN 628a39469b fix: revert NODE_ENV to development in netlify.toml
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 16:18:25 +00:00
google-labs-jules[bot]andPR0M3TH3AN 3efdb19511 fix: set NODE_ENV to production in netlify.toml
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 16:14:42 +00:00
google-labs-jules[bot]andPR0M3TH3AN 8390476bdf fix(ai): repair CI build dependencies and test reliability (agent)
- Move build/runtime deps (`nostr-tools`, `esbuild`, `autoprefixer`, `@tailwindcss/typography`, `cross-env`) to `dependencies` for production builds.
- Resolve duplicate package entries in `package.json`.
- Fix open handle (timeout leak) in `hashtagPreferencesService.js`.
- Fix flaky test mock in `hashtag-preferences.test.mjs`.
- Fix runtime variable error in `nostr/client.js`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 16:11:21 +00:00
google-labs-jules[bot]andPR0M3TH3AN 8c24fc36df fix: remove duplicate @noble/hashes dependency and move cross-env to dependencies
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 16:08:51 +00:00
google-labs-jules[bot]andPR0M3TH3AN 9a7a9ba65e fix(ai): fix CI build and test failures (agent)
- Move `nostr-tools`, `esbuild`, `cross-env` to `dependencies` to ensure availability in production builds.
- Remove duplicate dependencies (`autoprefixer`, `@noble/hashes`, `@tailwindcss/typography`) to fix potential version conflicts.
- Fix timeout leak in `hashtagPreferencesService.js`.
- Fix test mock in `hashtag-preferences.test.mjs` to prevent timeouts.
- Update `nostrClient` permission request to use correct constant.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 16:04:35 +00:00
google-labs-jules[bot]andPR0M3TH3AN e073aea8a4 chore: Daily Design System Audit Report
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 16:04:00 +00:00
google-labs-jules[bot]andPR0M3TH3AN f0606065c9 fix(ai): resolve test failures and permission regressions (agent)
- Fix flaky mock in `tests/hashtag-preferences.test.mjs` (limit mock responses to avoid timeouts)
- Fix timeout leak in `js/services/hashtagPreferencesService.js` (clear timeout on success)
- Update `nostrClient.loginWithExtension` to request full permissions (fixing `nostr-login-permissions.test.mjs`)
- Ensure `jsdom` is available for `channel-profile-moderation.test.mjs`

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:53:38 +00: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 06c1951cd3 fix(ci): remove all stale references to deleted files
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:48:34 +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 dd1fc79b83 chore(ai): remove dead code (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:45:21 +00:00
google-labs-jules[bot]andPR0M3TH3AN 28d52aa245 chore(ai): remove dead code (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:34:19 +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
google-labs-jules[bot]andPR0M3TH3AN 5232f38bed fix(ai): resolve test failures and permission regressions (agent)
- Fix flaky mock in `tests/hashtag-preferences.test.mjs`
- Update `nostrClient.loginWithExtension` to request full permissions (fixing `nostr-login-permissions.test.mjs`)
- Ensure `jsdom` is available for `channel-profile-moderation.test.mjs`

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 15:30:15 +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 56d9465165 chore(ai): remove dead code (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-31 14:58:50 +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