Commit Graph
10 Commits
Author SHA1 Message Date
google-labs-jules[bot] 1174b4b293 feat: add interoperability test script for Nostr protocol
Implements `scripts/agent/interop-test.mjs` to validate Nostr event schemas and client publishing against public relays.

- Uses ephemeral keys (generated via `nostr-tools`) for safety.
- Connects to `wss://relay.damus.io` and `wss://nos.lol` for testing.
- Verifies:
  - Video Post creation (via `buildVideoPostEvent`) and publishing.
  - View Event creation (via `buildViewEvent`) and publishing.
  - Direct Message sending and decryption (using client's encrypted DM logic).
- Includes necessary Node.js polyfills (`WebSocket`, `crypto`, `localStorage`, `window`) to run browser-targeted client code.
2026-01-26 07:24:00 +00:00
google-labs-jules[bot] 70e63ca922 feat(test): add interop-test.mjs for Nostr integration testing
- Implements `scripts/agent/interop-test.mjs` to validate Nostr protocol interoperability.
- Uses `simple-relay.mjs` to spin up a local test relay (no public relay spam).
- Generates ephemeral keys for each run using `nostr-tools`.
- Verifies `VIDEO_POST` (Video Note) publishing and fetching.
- Verifies `VIEW_EVENT` publishing.
- Verifies Direct Message (DM) sending and listing (decryption).
- Polyfills browser globals (WebSocket, crypto, localStorage, IndexedDB) for Node.js execution.
2026-01-25 07:51:08 +00:00
google-labs-jules[bot] 4c235b4ace feat: add interoperability test script for Nostr protocol verification
- Adds `scripts/agent/interop-test.mjs` to verify Video Post, View Event, and DM publishing/retrieval.
- Uses public relays (damus, nos.lol, snort) and ephemeral keys.
- Polyfills WebSocket and mocks localStorage for Node.js environment.
2026-01-24 07:38:35 +00:00
google-labs-jules[bot] e88efec6c5 Add interoperability test script
This commit adds `scripts/agent/interop-test.mjs` to verify protocol interoperability using `NostrClient` and `nostrEventSchemas` against a local test relay. Covers Video Post (kind 30078), View Event (kind 30079), and Encrypted DM.

Verified locally with Node.js and `simple-relay.mjs`.
2026-01-23 07:40:57 +00:00
google-labs-jules[bot] f75531d2db chore(ai): format sources and fix moderation bugs (agent)
- Format `css/tailwind.source.css` with Prettier.
- Add allowlist entry for `VideoCard.js` media query pixel value in `scripts/check-design-tokens.mjs`.
- Remove accidental artifact `js/ui/dm/jules_session_4520373547615093905.zip`.
- Fix bug in `js/app.js` and `js/services/moderationActionController.js` where blocked users' videos were not correctly hidden in the UI immediately after blocking.
- Fix bug in `tests/app/moderation-overrides.test.mjs` where `userBlocks` mocks were insufficient to reflect state changes.
2026-01-22 14:58:35 +00:00
google-labs-jules[bot] e0757f581f feat: add interoperability test script
- Adds `scripts/agent/interop-test.mjs` to verify protocol compliance.
- Tests Video Post, View Event, and encrypted Direct Message publishing/decryption.
- Uses ephemeral keys and a local relay (`simple-relay.mjs`).
- Polyfills browser environment for `NostrClient` execution in Node.js.
2026-01-22 07:19:21 +00:00
google-labs-jules[bot] 8dc1d0e791 feat(tests): implement interop-test.mjs with ephemeral keys and protocol checks
- Implements `scripts/agent/interop-test.mjs` to verify Nostr protocol compatibility.
- Uses `NostrClient` programmatically with ephemeral keys (no persistence).
- Defines a strict test relay list (`relay.damus.io`, `nos.lol`) to avoid spam.
- Validates Video Post publishing (Kind 30078) using `js/nostrEventSchemas.js` builders.
- Validates View Event publishing (Kind 30079).
- Validates DM encryption and decryption (Kind 4) using `js/dmDecryptor.js`.
- Adheres to AGENTS.md guardrails (no session actor comments).
- Outputs clear pass/fail logs for verification.
2026-01-21 07:14:32 +00:00
google-labs-jules[bot] b52396b6f7 feat: add protocol interop tests script
- Added `scripts/agent/interop-test.mjs` to verify Nostr protocol compatibility (Video Post, View Event, DM) using ephemeral keys.
- Added `scripts/agent/setup-test-env.js` to polyfill browser globals for Node.js execution.
- Ensures events are constructed via schema builders and published to test relays.
2026-01-20 07:16:20 +00:00
google-labs-jules[bot] 9d97d8dcf8 feat(agent): add interop-test.mjs for Nostr protocol verification
- Implements `scripts/agent/interop-test.mjs` using Playwright to run integration tests in a browser context.
- Tests include:
  - Publishing `VIDEO_POST` (Kind 30078) events using schema builders.
  - Verifying event roundtrip (fetch by ID).
  - Publishing `VIEW_EVENT` (Watch History).
  - Sending and decrypting Encrypted DMs (NIP-04/NIP-44) using ephemeral keys.
- Uses local `simple-relay.mjs` (port 8008) and Python HTTP server (port 8001) to ensure environment isolation.
- Generates artifacts in `artifacts/` folder including logs and reports.
2026-01-19 07:30:44 +00:00
google-labs-jules[bot] 82f92d420f feat(ai): add interop-test.mjs for Nostr protocol validation
Implements `scripts/agent/interop-test.mjs` to validate core Nostr operations
(Video Post, View Event, Encrypted DM) against a small set of public relays.
Ensures ephemeral keys are used and no private data is persisted.

Features:
- Ephemeral sender/receiver key generation.
- Polyfills for WebSocket, localStorage, and Crypto for Node.js environment.
- Verification of event signatures, IDs, and content shape.
- DM encryption/decryption roundtrip verification.
- Safe relay list usage (only 2 known relays).
2026-01-18 07:11:08 +00:00