oficina / memoria Public

Clone
git clone https://amadan.net/oficina/memoria

Plain git — no account needed to clone.

Download

Download this file

Adversarial review brief — memoria design spec, DRAFT 3

You reviewed draft 2 in a previous session and returned REQUEST CHANGES with one blocker and six findings, plus twelve verdicts on the earlier round. Draft 3 claims to answer them. Check whether it did, and find what is still wrong.

Under review: docs/superpowers/specs/2026-09-03-memoria-design.md Measurements it now cites: docs/BENCHMARKS.md Code that now exists: internal/memoria/ and internal/memoriatest/ — slice 0 is built, so some claims are checkable against an implementation rather than only against prose.

Your draft-2 findings

  • B1 BLOCKER — the ingestion contract contradicts the source apps' instance-boundary rules.
  • B2 — S3 cannot perform the grants join it promises (no asker).
  • B3 — NOT_VISIBLE conflates denial with stale data.
  • B5 — the FTS measurement and the 150k ceiling cannot both describe the stated corpus.
  • B6 — live authorization has no bounded availability design.
  • B7 — the gate suite does not enforce several claimed fixes.
  • Plus PARTIALs on findings 1, 3, 5, 6, 9, 11, 12 of the previous round.

For each, state ANSWERED / PARTIALLY ANSWERED / REWORDED / UNANSWERED, with evidence. "Reworded" remains the verdict I most want you to be willing to give.

Note that draft 3 concedes B1 rather than answering it — it records the blocker as not memoria's to close and says slice 1 is blocked on agreement. Judge whether that concession is honest or whether it lets the design proceed on an assumption it should not.

Verify against, and do not trust the spec's characterisation of

  • /home/paulca/amadan.net/oficina/sheets-core/AGENTS.md
  • /home/paulca/amadan.net/oficina/sheets-core/PRODUCT.md
  • /home/paulca/amadan.net/oficina/sheets-core/docs/superpowers/specs/2026-08-30-sheets-design.md
  • /home/paulca/amadan.net/oficina/home/docs/superpowers/specs/2026-08-30-home-design.md
  • /home/paulca/amadan.net/oficina/docs/docs/superpowers/specs/2026-08-30-docs-design.md

Quote binding rules; do not paraphrase them.

New surface in draft 3 — attack these specifically

  1. Admission is now relayed from siblings (decision 11, §4.3) via a new S7 call, cached per session. Does that actually close the membership hole, or move it? A session outlives a revocation by its TTL — is that stated honestly and is the TTL bounded anywhere?
  2. S2 is four-valued with STALE, and the decoder is claimed total (§4.1). Find a transport or protocol outcome with no defined mapping.
  3. §8.7, numeric questions. A new S6 call takes enumerated functions over cell refs. Does anything let memoria become a formula author by another route? Can the slot-resolution scheme produce a confidently wrong number, or does it genuinely refuse? Does it introduce a leak S1–S3 did not — S6 reveals which cells a person is comparing.
  4. §6.5's availability contract. 800 ms, concurrent, partial pages normal. Is failing closed still guaranteed under every partial case?
  5. §7's numbers are now measured (docs/BENCHMARKS.md gives machine and command). Check the arithmetic, and check what the benchmark does NOT establish — the file admits a cycled corpus and unmeasured bandwidth. Is the ~90–110k ceiling now supported, or merely better-sourced?
  6. §7.4's durable tombstone log and the rule that a snapshot is not retired while a restorable backup could reference it. Is there still a restore ordering that serves deleted content, or that finds no index at all?
  7. The gates (§10), now 21. For each claimed fix, is there a gate that would fail if the fix were reverted? Gate 5 now demands two people get different answers — is that enough?
  8. The implementation. internal/memoria/ is real code. Does it match what the spec says slice 0 does? Are the five gates in internal/memoriatest/gates_test.go capable of failing? Note that one earlier gate passed when the thing it guarded was deleted, and was replaced for that reason — look for others of that shape.

What I do not want

Style feedback. Unverified findings. An over-broad kill.

Output

Part A: verdicts on the draft-2 findings, with evidence. Part B: new findings — section, defect, evidence, BLOCKER/MAJOR/MINOR. Part C: verdict, one paragraph. Part D: re-review your own new findings; say which you would withdraw.

State your exact model id at the top.