Commit Graph
4334 Commits
Author SHA1 Message Date
google-labs-jules[bot]andPR0M3TH3AN 1b7575eaab Add minimal reproducers for known bugs
- Added reproducer for mobile sidebar margin mismatch (tests/visual/overlay-layers.spec.ts).
- Added reproducer for Moderation UI "Show anyway" button visibility (tests/visual/moderation.spec.ts).
- Added reproducer for NIP-07 login unit test ReferenceError (tests/nostr-login-permissions.test.mjs).
- Added examples/reproducers/playwright.config.ts to support running these tests.
- Updated examples/reproducers/README.md with instructions.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-29 12:18:28 +00:00
thePR0M3TH3AN b48320fc9a Merge pull request #1911 from PR0M3TH3AN/ai/ci-health-fixes-5352004242655593784
chore(ai): CI health fixes (flaky tests)
2026-01-28 22:22:24 -05:00
thePR0M3TH3AN bc2e5533e8 Merge branch 'unstable' into ai/ci-health-fixes-5352004242655593784 2026-01-28 22:22:17 -05:00
thePR0M3TH3AN daed244b8b Merge pull request #1910 from PR0M3TH3AN/ai/todo-triage-YYYYMMDD-143089001340590731
chore(ai): automated TODO triage scan
2026-01-28 22:21:50 -05:00
thePR0M3TH3AN f4c360f4f8 Merge pull request #1909 from PR0M3TH3AN/agent-pr-reviews-14144120924152591610
Automated PR Reviews
2026-01-28 22:21:32 -05:00
google-labs-jules[bot]andPR0M3TH3AN 5cd3131366 fix(ai): update nostr-login-permissions tests to match production logic (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-29 02:54:13 +00:00
google-labs-jules[bot]andPR0M3TH3AN 224e0c96bb chore(ai): Triage TODOs and generate report (agent)
Scanned the repository for TODO/FIXME/XXX comments.
Identified known flaky test TODOs in tests/visual/moderation.spec.ts, which are already tracked in issues/todo-moderation-tests.md.
No other actionable TODOs found in JS/TS sources.
Generated artifacts/todos.txt as a triage report.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-29 01:35:37 +00:00
google-labs-jules[bot]andPR0M3TH3AN cfbbf78941 chore(ai): add automated PR review report
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 23:49:33 +00:00
thePR0M3TH3AN c3f96c8819 Merge pull request #1906 from PR0M3TH3AN/ai/smoke-tests-20260128-13931457920280615023
chore(ai): add smoke test script (agent)
2026-01-28 17:00:41 -05:00
thePR0M3TH3AN 802f242483 Merge pull request #1908 from PR0M3TH3AN/codex/update-ensureloaded-to-verify-pubkey
Fix ensureLoaded guard to check active pubkey after normalization
2026-01-28 16:58:14 -05:00
thePR0M3TH3AN 10d628fe35 Fix ensureLoaded pubkey guard 2026-01-28 16:57:24 -05:00
thePR0M3TH3AN 2a5fa3ef90 Merge pull request #1907 from PR0M3TH3AN/codex/handle-no-pubkey-case-in-profilemodalcontroller
profileModal: show signer-required empty state for blocked list when signed out
2026-01-28 16:50:27 -05:00
thePR0M3TH3AN c14b29031c Handle empty block list when signed out 2026-01-28 16:49:31 -05:00
google-labs-jules[bot]andPR0M3TH3AN 0c8f0f3ca7 chore(ai): add smoke test script (agent)
- Created scripts/agent/smoke-test.mjs using Playwright for UI tests and Node for DM verification.
- Updated scripts/agent/load-test-relay.mjs to support NIP-45 COUNT frames (dummy).
- Included artifacts generation (logs, screenshots).

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 21:24:50 +00:00
thePR0M3TH3AN 2e58093467 Merge pull request #1905 from PR0M3TH3AN/codex/refactor-nip-07-connect-method-permissions
Remove duplicate NIP-07 permission check in js/nostr/client.js
2026-01-28 15:41:09 -05:00
thePR0M3TH3AN 4f6035f709 Remove duplicate NIP-07 permission check 2026-01-28 15:40:07 -05:00
thePR0M3TH3AN 7992098f0f Merge pull request #1902 from PR0M3TH3AN/fix-nip07-permissions-login-4760472543706451561
fix(auth): restore NIP-07 permission request flow on login
2026-01-28 15:29:58 -05:00
thePR0M3TH3AN b9f01e3f74 Merge pull request #1903 from PR0M3TH3AN/codex/add-fast-relays-for-initial-fetch
Fast-relay fast-path for subscription/hashtag/block list fetches with background full-relay fallback
2026-01-28 15:29:10 -05:00
thePR0M3TH3AN e4ad07b2cf Add fast relay fallback for list fetches 2026-01-28 15:28:58 -05:00
google-labs-jules[bot]andPR0M3TH3AN 9edf4e3e6b fix(auth): restore NIP-07 permission request flow on login (agent)
This change restores the missing `ensureExtensionPermissions` call in `NostrClient.loginWithExtension` to ensure that encryption permissions (NIP-04/NIP-44) are requested upfront as intended. It also updates the unit tests to match the current optimized permission request strategy (Plain -> Structured -> String) and fixes a timeout calculation logic that was preventing fast test execution.

- js/nostr/client.js: Added `ensureExtensionPermissions` call in `loginWithExtension` and throw on failure.
- js/nostr/nip07Permissions.js: Allow short timeouts (<1s) to bypass the default 15s minimum for faster testing.
- tests/nostr-login-permissions.test.mjs: Updated test expectations to match the Plain -> Structured -> String request order.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 20:17:13 +00:00
thePR0M3TH3AN 5eb8ce9799 Merge pull request #1900 from PR0M3TH3AN/fix-nip07-permissions-17914553616063457773
fix(auth): request NIP-07 permissions during login and fix retry order
2026-01-28 15:16:48 -05:00
thePR0M3TH3AN bcb9f13751 Merge pull request #1901 from PR0M3TH3AN/codex/move-background-tasks-to-after-login
Defer login hydration loads and show profile list loading placeholders
2026-01-28 15:16:13 -05:00
thePR0M3TH3AN dd9b9f1968 Defer login hydration loads 2026-01-28 15:15:52 -05:00
google-labs-jules[bot]andPR0M3TH3AN 4e549709a9 fix(auth): request NIP-07 permissions during login and fix retry order (agent)
- Updated `NostrClient.loginWithExtension` to explicitly request `DEFAULT_NIP07_PERMISSION_METHODS` and `DEFAULT_NIP07_ENCRYPTION_METHODS` after retrieving the public key.
- Ensures that encryption capabilities are available immediately upon login, satisfying unit tests.
- Modified `requestEnablePermissions` in `js/nostr/nip07Permissions.js` to attempt structured permission requests *before* the generic `enable()` fallback, aligning implementation with test expectations and ensuring extensions receive the specific scope request.
- `loginWithExtension` now throws if the permission request fails.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 20:12:17 +00:00
thePR0M3TH3AN 617095d995 Merge pull request #1899 from PR0M3TH3AN/codex/update-requestenablepermissions-logic
Prefer null `extension.enable()` with short timeout and extend explicit-permissions timeout
2026-01-28 15:05:49 -05:00
thePR0M3TH3AN 4fcb785f58 Adjust NIP-07 enable timeouts 2026-01-28 15:05:38 -05:00
thePR0M3TH3AN 0ecd10a84e Merge pull request #1898 from PR0M3TH3AN/codex/lower-default-timeout-values-and-document-overrides
Lower NIP-07 timeouts and add runtime override globals
2026-01-28 15:00:32 -05:00
thePR0M3TH3AN f0e27d175d Adjust NIP-07 timeouts and document overrides 2026-01-28 15:00:20 -05:00
thePR0M3TH3AN 9e137720b0 Merge pull request #1896 from PR0M3TH3AN/ai/load-test-20260128-17910285802654865988
feat(ai): Load Test Script & Report (agent)
2026-01-28 14:48:49 -05:00
thePR0M3TH3AN 7583b7791f Merge pull request #1897 from PR0M3TH3AN/codex/remove-nip04-and-nip44-from-default-permissions
Limit default NIP-07 login perms; request NIP-04/NIP-44 on-demand with decrypt UI
2026-01-28 14:47:20 -05:00
thePR0M3TH3AN 7c47208255 Adjust NIP-07 permissions for decrypt flows 2026-01-28 14:47:06 -05:00
google-labs-jules[bot]andPR0M3TH3AN 09187194d8 feat(ai): Load Test Script & Report (agent)
- Updated scripts/agent/load-test.mjs to handle empty reports.
- Added scripts/agent/load-test.mjs and load-test-relay.mjs to tracking.
- Generated artifacts/load-report-20260128.json.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 19:42:29 +00:00
thePR0M3TH3AN 661f501a15 Merge pull request #1895 from PR0M3TH3AN/codex/call-ensuredmdecryptor-on-login
Preload DM decryptor after NIP-07 login
2026-01-28 14:06:33 -05:00
thePR0M3TH3AN c67bf61c50 Preload DM decryptor after NIP-07 login 2026-01-28 14:06:20 -05:00
thePR0M3TH3AN 24e7fc39c5 Merge pull request #1894 from PR0M3TH3AN/codex/update-logout-to-preserve-nip-07-permissions
Preserve NIP-07 permissions on logout (configurable)
2026-01-28 14:03:56 -05:00
thePR0M3TH3AN 596e2f472b Preserve NIP-07 permissions on logout 2026-01-28 14:03:43 -05:00
thePR0M3TH3AN 377564c53b Merge pull request #1893 from PR0M3TH3AN/codex/add-centralized-permission-gate
Add shared NIP-07 permission gate with memoized in-flight promise
2026-01-28 13:59:41 -05:00
thePR0M3TH3AN cf9082b83f Add shared NIP-07 permission gate 2026-01-28 13:57:40 -05:00
thePR0M3TH3AN e24207c12d Merge pull request #1892 from PR0M3TH3AN/ai/debug-frontend-20260128-16915912596521663527
fix(ai): frontend console error — ignore .torrent urls in probeUrl (agent)
2026-01-28 13:51:43 -05:00
google-labs-jules[bot]andPR0M3TH3AN 9f60eeaaf2 fix(ai): frontend console error — ignore .torrent urls in probeUrl (agent)
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 18:50:36 +00:00
thePR0M3TH3AN 16f4b6b9fa Merge pull request #1891 from PR0M3TH3AN/codex/refactor-requestenablepermissions-function
Prefer null `enable()` first for NIP-07 and adjust enable timeouts
2026-01-28 13:48:46 -05:00
thePR0M3TH3AN b48dd4a28e Adjust NIP-07 enable permission fallback 2026-01-28 13:47:19 -05:00
thePR0M3TH3AN 8f27a12d07 Merge pull request #1890 from PR0M3TH3AN/codex/update-loginwithextension-logic
Fetch NIP-07 pubkey before permission prompt and defer permission requests
2026-01-28 13:44:40 -05:00
thePR0M3TH3AN 57e9dfff2c Adjust NIP-07 login permission flow 2026-01-28 13:44:21 -05:00
thePR0M3TH3AN fa3610f4f7 Merge pull request #1889 from PR0M3TH3AN/fix/optimize-nip07-login-perf-4235940878368250470
fix(perf): optimize NIP-07 login and user data loading speed
2026-01-28 13:11:14 -05:00
google-labs-jules[bot]andPR0M3TH3AN 90a74e7721 fix(perf): parallelize user data loading during NIP-07 login
Optimizes `handleAuthLogin` in `js/app.js` to run user data fetching (blocks, subscriptions, hashtag preferences) in the background instead of blocking the main UI render. This significantly improves perceived login speed, especially for users with large lists or slow NIP-07 extensions.

- Moves `userBlocks.seedWithNpubs` (which involves publishing) to background.
- Moves `subscriptions.ensureLoaded` and `hashtagPreferences.load` (which involve decryption) to background.
- Adds a race condition for `userBlocks.ensureLoaded` (read-only) with a short timeout to attempt early hydration without blocking indefinitely.
- Ensures the UI updates reactively when background data arrives via existing event listeners.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 18:02:37 +00:00
thePR0M3TH3AN 4de479aaca Merge pull request #1888 from PR0M3TH3AN/prioritize-user-data-sync-7512452180473262009
Prioritize User Data Sync (Blocklists, DMs) over Video Feed
2026-01-28 12:27:43 -05:00
google-labs-jules[bot]andPR0M3TH3AN 64fa5d4cb3 Prioritize User Data Sync (Blocklists, DMs) over Video Feed
* Boost DM decryption priority to HIGH in `nostrClient` to match other critical user data.
* Enforce blocking in `handleAuthLogin` to await initial DM sync before refreshing the main video feed.
* This ensures users see their personal data (blocks, messages) correctly loaded before the public feed appears, improving the perception of consistency.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-01-28 17:23:13 +00:00
thePR0M3TH3AN a4c5afe699 Merge pull request #1887 from PR0M3TH3AN/ai/fuzz-robustness-20260128-5464314293176064392
Fuzz Testing Implementation and Robustness Fixes
2026-01-28 11:46:40 -05:00
thePR0M3TH3AN 076fd221a7 Merge pull request #1886 from PR0M3TH3AN/fix-visual-test-sidebar-2740881461449457530
Fix mobile sidebar visual test flakiness
2026-01-28 11:46:25 -05:00