rdmsm4x — replicantDB v1.1.0–v1.3.0, then durability + cross-project handoffs
2026-08-26 19:10:51 EDT · rdmsm4x · project
~/dev/apps/replicantDB Session span: 2026-08-26
morning → 2026-08-26 19:10:51 EDT. Written so this work survives the
loss of the thread.
What shipped
Three tagged releases, each built universal2
(x86_64 arm64), signed
TeamIdentifier=ZU2882L4HT, and deployed to 5 of 6
fleet hosts — where "deployed" means the CLI was
executed on each host and self-reported its version,
including on Intel.
| Tag | Codename | What it added |
|---|---|---|
v1.1.0 |
Custody | Override export/import archive — closes gate G6,
the last one. Restore matches by path, then by content hash, so a human
correction survives a rename. Plus scripts/squash_index.zsh
(export first, refuse while the WAL is held, move-not-delete, checksum,
README with restore and undo) and single-source
versioning. |
v1.2.0 |
Reconcile | Index liveness (missing_since, lstat(2)
only, marks and never deletes), honest pass accounting,
the generated self-contained HTML/JSON dashboard, macOS App
Intents. |
v1.3.0 |
Evidence | Purpose IS-vs-ABOUT signal tiering plus a corpus repair path; photo EXIF + perceptual-hash near-duplicates. |
Then, unversioned but shipped: MCP protocol
conformance (281c6e3) — the server had never been
loadable by any client.
323 tests, 0 failures, 0 warnings (up from 163 at seed). Tree clean. Nothing pushed to any remote — D-26 is Rich's call alone, and the history still carries employer client names.
The three defects that only running it could find
- 58.6% of the index was dead rows — 35,769 of 61,037
pointed at deleted files. The hashing pass dropped unreachable files
with a bare
continuewhile printing success and exiting 0, so every figure the product reported was inflated ~1.4×. - The classifier confused what a file IS with what it is
ABOUT —
OTPAuthParserTests.swiftfiled as a credential,scanROO/PRD.mdas a receipt. Not the old substring bug; these match on clean word boundaries. Fixed by signal tiering, verified file-by-file: credential −86%, contract −91%, receipt −90%. - Near-duplicate grouping produced one "group" of 2,873 unrelated images — three compounding causes (single-linkage chaining, 274 images hashing to exactly 0, 301 identical favicons). Largest group after the fix: 10.
And the finding that retroactively justified gate G6: Rich's
single human correction is on a file that has already been
deleted. It is preserved in the v1.1.0 override archive, and
--purge refuses to drop it.
Stated boundaries — what is NOT proven
- Siri has never been asked to invoke an intent. The metadata now ships; voice invocation is a separate, unrun check.
- The ≤10-of-64 perceptual threshold is not tuned against ground truth. I tried to build one from the corpus, measured 99.5% recall at 0.00–0.07% false positives on an identical-name+size proxy, judged the proxy untrustworthy for resized copies, and therefore declined to claim a tuned threshold.
- The classifier fix is large, not complete. Residual
false positives are
.mdreference docs outside a source repo. Four known real examples. --applydedup has never run against the live corpus; 626 MB is computed, not reclaimed.
Delegation
Five codex exec --model gpt-5.6-sol jobs in
file-disjoint git worktrees. Anthropic weekly hit 90%
(hold) around midday; OpenAI sat at 12%, so the
volume went there.
Every codex job reported 22–23 test failures that did not exist — Vision/OCR sandbox artifacts; the same suites ran 0 failures on the host. Reviewing the merged diffs rather than the summaries also caught two real defects the agents did not mention: an id lookup done by a 50-capped filename search where an exact path lookup belonged, and results that could return deleted files.
rdmpw3265m — diagnosed, and the real defect found
Unreachable on every path: LAN
192.168.1.53 (no ping, ARP incomplete from four
independent hosts), secondary 10.0.4.26, both
Tailscale nodes (offline; tailscale ping timed out via
relay nyc), SSH Host is down. Below layer 3 —
powered off or asleep with Wake-for-network off.
The fixable defect: a Wake-on-LAN packet needs the
target's MAC and has no broadcast form, and no
MAC was recorded anywhere in the fleet inventory — so a
sleeping host could only be recovered by walking to it. MACs for the
five reachable hosts are now in
~/.agent-coordination/fleet-macs.json (mode 600),
deliberately outside ~/dev/data/ because
that feeds fleet_status.zsh → the dashboard published to
dev.dataroo.net. The one still missing is rdmpw3265m's own,
which needs the host up.
Cross-project
context dispatched (ledger: replicantDB/HANDOFFS.md)
Ten findings, each filed into the target's own auto-ingested channel
— direct ISSUES.md for "broken now",
~/dev/todo/items/ + scan_todo.zsh for "work to
do".
The one worth naming: a pure-SwiftPM product ships App
Intents that Siri, Shortcuts and Spotlight cannot see.
Metadata.appintents is emitted by
appintentsmetadataprocessor, which Xcode runs as a build
phase and swift build never does. The code
compiles, tests pass, and the whole Apple Intelligence surface is
silently absent. Verified by reading built bundles:
| App | Metadata.appintents |
|---|---|
| replicantDB | present (wired today) |
| RTTy — the family's own reference implementation | ABSENT |
| bookmarkROO | ABSENT |
| iCloudMonitor | ABSENT |
| logTTY (Xcode-built) | present, for free |
Filed in each project's ISSUES.md (created for two that
had none) and as a rule in ~/dev/apps/CLAUDE.md §2, which
every app session auto-discovers by walking up.
Also dispatched: the fleet wake problem; "a delegated agent's test
verdict is a claim, not a result" (cross-llm-bus.md §9);
three shell traps that fail silently (terminal-shell-env),
one of which bit during this very handoff pass; and a stale
dashboard — products.json was still publishing 163
tests and zero purposes, now refreshed from live read-only measurements
and regenerated (p/replicantdb.html carries
323/323, no 163/163).
Waiting on Rich
Full Disk Access click (unblocks ~/Library indexing) ·
CloudKit container choice, team-permanent
(docs/CLOUDKIT-PLAN.md §7) · D-26 git-history
decision before anything is pushed · daemon registration
(D-4).
Next
v1.4 — give reference documentation its own structural
type, so .md files outside a source repo stop
landing in credential/receipt. Explicitly
not by making the archetype tier stricter: a genuine
.md note in ~/Documents must still be able to
be correspondence.