OverviewFilesCommitsIssuesDocsReleasesPeers

atproto-base commits / f2528fd

EXTRACTION-PLAN: Phase 1 complete (1b-cleanup + 1c done; #10/#11 + did-peer hosting deferred)
Duplicates retired (bridge 8fa871a), favela verified already-on-shared-module, co-owned front()-ingest deferred to Phase 4. Records the _staleStrikes co-owned-break gotcha and the atproto-did-peer no-pear-remote follow-up. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
f2528fdbfb406e84049da6ac97f2517d2edc80a5
by plankatron <fleeky@gmail.com> · 2026-07-23T23:46:27.000Z

Changed files (1) +23 -6

EXTRACTION-PLAN.md +23 -6
……@@ -83,12 +83,29 @@ still carries), and already had the appview `commitOps`. Findings that settled t
8383 under node) is the working gate. The committed pds lockfile is pre-existingly stale (npm ci fails);
8484 the repo installs via `npm install --production` at ROOT + the cp -rL vendor step (CI never installs
8585 in pds/). Siblings are symlinks — never `npm install` a sibling (it drifts bare-fetch).
86 - ▢ 1b-cleanup — migrate the remaining 12 bridge tests off peer-router.js/peer-front.js/did-peer.js
87 (some now redundant with atproto-did-peer's own suite), then DELETE those 3 lib files + the dead
88 `front-peer.mjs` (uses the removed PeerFront.discover). Also fold in hyper-social #10/#11 here
89 (never fold the relay from a front with `rpcConnected:false`).
90- ▢ 1c — repoint favela: mostly free; migrate co-owned reads to `front()` freshest-selection.
91- ▢ 1d — (folded into 1b-cleanup) hyper-social #10/#11.
86 - ✅ 1b-cleanup (2026-07-23, atproto-bridge commit 8fa871a): retired peer-router.js/peer-front.js/
87 did-peer.js + dead front-peer.mjs. New test/mk-did-router.js builds the shared DidPeerRouter as
88 pds-serve does; migrated 10 tests onto it/DidPeer, deleted 2 redundant (co-owned-front-thrash →
89 atproto-did-peer co-owned.test.mjs; did-peer.test → dormant module). Adaptations: getLatestCommit
90 is SYNC now; fronts expose `_repoKey`/`_firehoseKey` (private); DidPeer.getRepo needs the reconciled
91 head. Full pds suite green 43/43, 174/174.
92 ⚠ GOTCHA: re-adding a `_staleStrikes` counter to DidPeerRouter DETERMINISTICALLY broke the co-owned
93 freshest-by-rev test via an unexplained interaction (the diff only touched _refreshFronts/diagnose/
94 ctor, none on the read path) — reverted, NOT reintroduced. Whoever does #10/#11 must re-derive strike/
95 liveness tracking carefully and re-run co-owned.test.mjs after.
96- ✅ 1c (2026-07-23): favela was ALREADY on the shared module (that's why it was the canonical home);
97 verified green under bare (appview/appview-ingest/appview-dedup/roster-integration, 47 asserts). The
98 co-owned `front()`-ingest rewrite is DEFERRED to Phase 4 — favela's roster is single-origin (front()
99 == add()→DidPeer there), so it's a no-op until the co-owned feed-room exists; rewriting the bare
100 firehose-tail loop now = invasive for zero present benefit.
101- ▢ 1d — hyper-social #10/#11 (never fold the relay from a front with `rpcConnected:false`). DEFERRED —
102 needs the issue detail + careful strike/liveness tracking (see the 1b-cleanup _staleStrikes gotcha).
103
104## Follow-ups surfaced this session (not Phase 1 blockers)
105- ⚠ `atproto-did-peer` is a proper local git repo but has NO `pear` remote — unlike its siblings it was
106 never set up on the pgh forge. Commits (0.2.x) are LOCAL-ONLY. Deploy still works (bridge ci.yaml
107 `cp -rL` vendors it from the KB path), but the module isn't independently forge-hosted. Set up
108 `~/git-repos/atproto-did-peer.git` + `pear` remote to match the sibling pattern.
92109
93110## PHASE 2 — migration, rehearsed on a SNAPSHOT (never hot)
94111Per the wj62 discipline (`reconcileFromCar` on FRESH storage; rocksdb hot-copy is inconsistent):