Files
bitvid/fleet/RULE-CHANGES.md

8.3 KiB

Rule changes

Newest first. One ## YYYY-MM-DD heading per day, then a line per change. Read this file newest first now and before every backlog item. These lines override a stale system prompt. Nothing filters them down to a window of days.

The session manager adds a line here whenever a rule, a prompt, a tool's usage, or a landing rule changes.

2026-10-20

  • client8 minimal media-only fix routed after worker+dispatch9mode evidence: final-owner retains1src/3listeners/1timer/1slot/unsettled;7controls pass. Own controller cancellation/active media settle cleanup+focused lifecycle tests/unique integrity/spec notes only. Explicit Stage3 spec correction replaces disposed active cache/timeout/rejoin expectations with immediate cleanup/null/no cache/mirror/stale writes/fresh request; preserve separate live/shared/legacy success/error/timeout/cache/FIFO controls and identity safety. No observer/cache/HEAD/HLS/torrent/app edits. Focused+mutants+lint then request full/browser slot; unchanged normal gate/durable landing.

  • Owner resumes bounded active-probe/URL cancellation via interpreter20:44:41UTC: client8 current-HEAD actual observer/controller active URL-media last-owner/shared/rejoin measurements first. Read-only source/scratch evidence until demonstrated defect and explicit fix/contract routing. Prior active cache tests express queued-only contract; do not silently weaken. Other2 workers idle. Local-review hold superseded only for this slice; no HEAD/HLS/torrent widening,app.js/kit/scheduler/external authority.

  • Local-review hard blocker measured: coldTrending cache0 then relayEVENT3/EOSE ingests eligible3 but view remainsEMPTY/DOM0. client-reliability-7 temporary ownership ONLY nostrService.loadVideos subscription notification path, minimal service-owned current-consumer state/subscription-clear lifecycle where proven necessary, + new focused regression/integrity/evidence; reproduce current method before minimal fix. Existing app/feed modules read-only unless additional evidence/routing. Preserve access/filter/deletion/cache/event semantics; no forcedrefresh baseline substitute. QA retains actual-app/browser qualification; client cheapfocused until explicit fullslot.

  • Owner stopmilestone is Ready for me to review and test locally. Finish current storage2/history6/faithful actual-app baseline+preview/handoff,then no new optional tasks before review. Reconcile upstream docs-only8d4622bb via area merge+normal queue;new playback promises stay explicit/open,do not churn current scope or declare them done from partial/static evidence. Genuine cached offline dependency mirror is testprep only,not CDN/deployed/offline production proof.

  • QA1 retained regression64143f42 landed1bb3a4fc,dispatch4/4. New QA2 actual-app local core/mobile baseline has bounded browser-only slot,no UI changes/full E2E. Client6 test-only actual history wiring regression routed after current pass/historical no-op failure. Storage2 temporary ownership deleteVideoStorage-only in r2Service+new test after2 real cached-metadata rejects/6controls;upload-copy logic unchanged,s3UploadService has no deletion counterpart,prove shared provider-aware delete for R2/S3. Full slots allocated only when validated-ready after browser release.

  • Latest14:57:03 interpreter checkpoint prioritizes remaining storage/upload/delete safety for storage worker. storage-cors-2 now read-only best-effort delete safety/current followups audit;prior feed/view audit retained deferred as storage-cors-3. Client6 history audit unchanged. No product/test writes before evidence/routing;QA expensive slot stays exclusive.

  • Owner continuation now extends beyond trial until project quality is evidenced,tracked in QUALITY.md with local/live gates distinct. Existing client worker item6 investigates real profile-history removal wiring;storage worker item2 temporarily investigates feed/view tombstone coverage. Both read-only scratch/evidence,no product or committed tests before routing. QA retains expensive full/normal slot. Same3 workers,disjoint scope,no app.js writers/new features/kit/scheduler/external authority.

  • storage-cors-1 fix routed after worker+dispatch offline reproduction: preserve existing bucket CORS rules/fields; append default rule only for uncovered origins, idempotent no-PUT for equivalent coverage, only NoSuchCORSConfiguration permits absent config, other read errors no PUT. Own s3-multipart.js/s3-client.js+focused new test/integrity. No real cloud/credential operations or unrelated policy change; full gate slot follows client.

  • Item5 narrow fix routed after worker+dispatch reproduction: prevent fresh mirror HEAD after disposed last-owner active-media error; controller+focused URL lifecycle tests only. Preserve bounded active/cache/shared/rejoin/timeout semantics, no active abort. Parallel trial CLI/agent/lander launches clear inherited NODE_TEST_CONTEXT transport; exact gate/assertions unchanged. Original roster gate hit binary capture cap, not identified product assertion. No kit patch.

  • Owner authorizes bounded parallel trial via interpreter: dispatch plus existing client-reliability and two new areas storage-cors/playback-qa. Separate worktrees/disjoint write ownership; no competing app/grid/URL writers. QA initially owns browser; one expensive full gate at a time coordinated through dispatch. Each worker sends read/next-action and timed contention/evidence events. No new external authority or scheduler changes.

  • client-reliability-5 assigned to existing worker: read-only active URL/torrent cancellation reproduction at current HEAD, starting active URL media last-owner/shared-owner controls. Evidence notes only; product/test changes need demonstrated defect and dispatch routing. Continue selecting bounded next actions under existing owner direction; no new routine approval required. No scheduler or external authority change.

  • client-reliability-4 reproduced queued URL media work after last-feed disposal (obsolete starts1, expected0); dispatch independently confirmed failure and shared-owner control. Investigation restriction superseded for bounded implementation: urlHealthObserver.js, ui/urlHealthController.js, focused tests/integrity/evidence. Active abort, HEAD/HLS/torrent, shared observer/app/cache modules, limits/TTLs remain excluded. Normal gates and durable landing required.

  • Owner continuation relayed by interpreter permits the requested bounded development step now despite quiet hours; recurring schedule/config unchanged. client-reliability-4 is read-only source-health cancellation reproduction at current HEAD, evidence notes only. Product/test fixes require dispatch routing after reproduction; mailbox tools now deliver short wakes, superseding prior no-wake limitation for updated runtime. No unattended monitoring claim.

2026-10-19

  • client-reliability-3 redirects the existing single worker to queued torrent-probe ownership in js/gridHealth.js, an optional small queue helper, and focused lifecycle tests. Prior validation tasks are done. Active probes, URL checks, WebTorrent implementation, cache/concurrency policy and kit remain out of scope. Completion must send dispatch mailbox evidence; mailbox delivery is not a session wakeup. No scheduler/kit changes.

  • Bounded routing: existing client-reliability worker temporarily owns tests/race/nostr-client-init-race.test.mjs plus its regression/integrity notes for client-reliability-2. Nostr product code and global runner remain excluded. Preserve assertions, separate commits, and normal landing gates.

  • One-time first-worker bootstrap: the administrative roster/brief commit may land through a temporary queue configuration with an exact roster-and-documentation-only validator because the worker is assigned to the existing full-suite hang. No product/test/persistent-gate change is permitted by this check. Record the exception and actual result; subsequent code uses the normal full gate.

  • Owner direction relayed from Codex desktop chat authorizes dispatch to operate tmux, start the approved single client-reliability worker, and make routine staffing, prioritization, test/build, fix, and local unstable landing decisions without repeated approval. Record relay provenance; this is not approval for deploys, spending, production data, real-wallet operations, or schedulers. Send owner-mailbox event updates and refresh the existing local preview after verified changes.