Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

v0.11 issue-direction study: question, reshape, and sequence the open work

FieldValue
Date finalised2026-06-15
AuthorRômulo Febasi romulo@febasi.com.br (4 specialised research subagents)
ScopeCritically question every open v0.11 issue (market, technical state-of-art, user-problem, adversarial), then reshape/sequence each. Implementation follows.
Statusaccepted
Inputs4 parallel subagents (market/competitor with web; technical state-of-art with web; user-problem strategist; adversarial critic: all read the repo + the 2026-06-14 field study).
Out of scopeCutting any v0.11 issue entirely (owner directive: adjust, don’t drop). Multi-user/Commercial milestone design.

Executive summary

After v0.10 the governance moat is built; the proof of it is parked. Four independent subagents converge on three things: (1) several v0.11 items are multi-user features mis-filed under a single-user phase (SYN-249C, parts of SYN-254/248): keep them but scope them honestly to opt-in/minimal; (2) two items are already partly shipped (SYN-259 per-field delta authorship landed with SYN-256; the SYN-245 self-kNN “blocker” is already proven in a test): strike the stale halves; (3) the highest-value, most copy-proof artifact in the whole field (syn verify (provable non-corruption, SYN-253)) is buried in v1.0 while the market commoditises Synapse’s crypto primitives (Anthropic ships editable-Markdown-with-audit; Microsoft/MemLineage publish Ed25519+Merkle protocols; Memoir/Memoria ship “git for memory”). Reshape v0.11 to deliver the provable-quality thread (reshape SYN-258 into a temporal-correctness invariant, the seed of syn verify) while finishing the disciplined scale/graph slices that survive the “prove-the-need” ruler. Implement all nine, adjusted.

1. Context and premisses

v0.10 shipped (governed memory-quality: both-doors, contract finish, trust-in-ranking, proposal contract, contradiction→gate). v0.11 (#14) was a holding milestone: explicitly to be re-scoped when it became active. It is now active. Pillars are non-negotiable: local-first, single-user by design, Markdown-as-truth, governed+provable, git-native, reversible. Ruler: deterministic > ML; prove the need before building; no dep without an ADR; collapse forks, don’t extend them.

2. Market scan

2.1 The crypto-provenance moat is being commoditised: fast

Anthropic (2026-04) shipped editable Markdown agent memory with audit logs + rollback/redact as the default substrate; Microsoft “Portable Agent Memory” and “MemLineage” publish BLAKE3/Ed25519 Merkle-DAG provenance protocols; Memoir/Memoria/Beads ship “git for AI memory” with cryptographic integrity. Synapse’s hash-chain + ed25519 + receipts are now a published, copyable pattern. What this means for Synapse: the durable moat is no longer the crypto primitives; it is local-first + git + identity-binding + the ability to prove non-corruption to the user (which a hosted store structurally cannot). Lead with syn verify, not “we also have hashes.”

2.2 Bitemporality and contradiction are now table-stakes; auto-resolution still fails

Zep/Graphiti bitemporal edges and Mem0’s temporal gains are the reference; HaluMem still measures auto-update correctness <26%. What this means for Synapse: our valid-time + supersession + contradiction→gate (don’t auto-resolve) posture is correct and now mainstream-validated. Temporal correctness we can prove (replay-as-invariant) is the differentiator, not temporal features per se.

2.3 Scale pressure moved to token-efficiency, not ANN speed

The field optimises tokens-per-retrieval and reports at-scale degradation (BEAM −25% at 1M–10M tokens); nobody hits flat-vs-HNSW pain at single-user scale. What this means for Synapse: the flat-vector/defer-HNSW ruler is vindicated. SYN-225/246 stay deferred; SYN-251’s value is ingestion correctness (don’t re-embed unchanged fields), not query speed.

3. Cross-check vs the open v0.11 issues

IssueSubagent consensusDecision (this study)
SYN-260 hygieneContains 2 real latent bugs (inert pre-commit fmt gate; unwrap_used unenforced despite CLAUDE.md). Elevate.DO FIRST. Split: fix fmt-hook PATH + add clippy::unwrap_used deny (staged) + split queries.rs (ADR-015). cliff noise → cosmetic.
SYN-259 retrievalPart (2) per-field delta authorship already shipped (core::changes). Part (1) valid-time pushdown is a real latent bug (fts_rank/vector_rank ignore as_of).RESHAPE. Strike (2). Keep: push valid_at_predicate into FTS+vector candidate queries; add search --type <custom> (the documented gap). pattern regex → its own dep+ADR, slip.
SYN-251 ingestionReal win = batch-embed only changed embeddable fields + content-hash move detection. Watermark is a multi-writer lesson.RESHAPE. Ship the two high-ROI slices; keep the existing (mtime,size) ledger.
SYN-254 identity dedupScope to deterministic fingerprint + collision→gate; never derive id/filename from hash (pillar risk); opt-in. Fuzzy/MinHash deferred.RESHAPE. Internal identity fingerprint for dedup comparison; collision routes to the gate (detect-don’t-merge); never touches the slug/id. ADR.
SYN-245 semantic edgesSelf-kNN blocker already resolved (test exists). Build explainable mutual-kNN + per-edge provenance; JGF is the consumer.RESHAPE. Remove stale blocker; build mutual-kNN + local-baseline rescale + provenance (cosine,k,shared_terms); drop-semantic-first under limits.
SYN-255 anchor rerankDependency-free (reuse graph_rank); bench-gate.KEEP, bench-gated. Reuse the existing graph leg; ship behind a recall check; cheap either way.
SYN-248 per-type policyReshape to the “profile vs log” (overwrite vs append / decay) axis, not a write_policy/pii/link matrix. Only hardens the gate.RESHAPE. Minimal [policy.<kind>] with a decay/mutability axis; deterministic; can only raise the gate. ADR.
SYN-249C sig verifyMulti-user value; opt-in; ssh-key + ADR (pre-authorised by ADR-030); rank last.KEEP, opt-in, last. ssh-key SSHSIG verify of the commit gpgsig vs non-revoked identities; doctor/audit verify flag unsigned/unknown. ADR.
SYN-258 temporal replayDon’t build a replay engine (~zero daily solo use). Reshape to the temporal-correctness invariant feeding SYN-253.RESHAPE. A property/invariant test asserting at <ref> -- … --as-of <date> reconstructs the state that held, the seed of syn verify. No replay command.

4. White space / disruptive opportunities (fit the pillars)

  • syn verify: provable non-corruption as a command (promote SYN-253 to the next milestone’s headline). A hosted store cannot let a user prove its store didn’t corrupt theirs; Synapse can, because the truth is the user’s git. The single most on-brand, copy-proof artifact. SYN-258 is reshaped as its first invariant.
  • “Import your AI’s memory, then govern it”: one-way ingest of Claude/ChatGPT memory exports into governed, signed, git-versioned Markdown (extends SYN-228). Anthropic normalised memory export; Synapse becomes the provable home.
  • Decay-as-a-daily-value-moment: fold a “re-confirm aged high-trust facts” prompt into syn digest, routed to the accept queue (builds on SYN-250 + ADR-029). Turns the gate from pure cost into recurring value.

5. Decision: v0.11 stays, reshaped; v1.0 = “Provable, daily, done”

Implement all nine v0.11 issues, reshaped per §3, in the dependency-aware order: SYN-260 → SYN-259 → SYN-251 → SYN-254 → SYN-245 → SYN-255 → SYN-248 → SYN-249C → SYN-258. Recommend the next milestone be v1.0-hardening headlined by syn verify (SYN-253), the import-and-govern wedge, and the decay-value-moment, not more scale/graph. SYN-249C/254-merge/248-multi-actor value ultimately points at the Commercial/team wedge; shipped here only in their honest single-user-minimal form.

Hypothesis (pre-study)StatusReason
v0.11 = scale & graph is the right next themechallenged3/4 agents: the moat’s proof (syn verify) outranks scale/graph for a single-user tool; reshape toward provable-quality.
All v0.11 issues are net-new workchallengedSYN-259(2) shipped; SYN-245 blocker resolved: reconcile before building.
HNSW / graph-UI deferralvalidatedMarket moved to token-efficiency; flat-vector correct < ~100k.
Deterministic-first contradiction/dedupvalidatedHaluMem auto-update <26% unchanged; gate-don’t-resolve is correct.