Initial dependency review REQUEST_CHANGES from canonical claude-fable-5-1, full verdict below. Runtime dependency itself verified correct; stale internal spec pin/CI-blocker prose fixed6a1e05b and obsolete duplicated code-comment paragraphs removed. AHEAD remains unmerged, no new wire-value claim. Full gate/review follow-up running; no merge/deploy.
Verdict: REQUEST_CHANGES, narrowly. The dependency change itself is correct and verified. What blocks is that the branch retires 60b01a8 and leaves six places in the repo saying it is still the pin, plus a stated reason for the AHEAD lag that the upstream merge has removed.
Verified on the fetched module, not the worktree
- The go.sum
h1:line matches the module cache ziphash forv0.0.0-20260907203125-1ac4323a7317, and the cache.inforecords origin hash1ac4323a7317a2bf…. The/go.modhash is unchanged, so suite's own dependency set did not move. - Diff between the two cached module versions:
s1.go,s3.go,subject.go,fixtures.go,strictjson.goare byte-identical.s2.gogains pointer wire fields and the nil check.transport.gogains the scheme check ahead of the host guard. New: two test files,conformance/, and.amadan/ci.d/10-gate(gofmt, vet, build,test -count=1). Exported API is unchanged, so memoria compiles against it without edits, which the gate log confirms. - The scheme check and the S2 nil check in the module match the source in the suite worktree line for line.
S2 fail-closed, from memoria's side
A row missing or null in any of item_id, revision, result now voids the whole response to UNKNOWN. Decide maps UNKNOWN to Withhold, which Notices() and renders as "did not answer; N results withheld". Nothing reaches OmitSilently. Previously a row with no revision decoded as revision 0 and could match an asked pair at revision 0 and answer VISIBLE. That was a real, if narrow, false-authorisation path and it is now closed. Memoria's Authorize has no error return, so no consumer branch changes shape.
HTTPS before dial, from memoria's side
LoadSiblings already refuses a non-https base at boot at config_siblings.go:108, so production never reaches the new check. NewForTest uses a plain client, so loopback tests are untouched. If it were reached, Feed and Content wrap it as "S1/S3 unreachable: sibling broke the contract" after bare() strips the URL, and Authorize returns all UNKNOWN. No log or error string carries content. No existing consumer leaked, and none is claimed to.
AHEAD lag still holds: the module has four constants, and TestAheadIsStillAShippingLag stays green as the gate log shows.
Required before merge (prose only, same commit):
docs/superpowers/specs/2026-09-03-memoria-design.md:16and:1025name60b01a8as the pinned module. Update to1ac4323.- Lines 17-19 and 1031 of the same spec,
sibling/policy.go:120, andsibling/policy_test.go:215say the AHEAD branch is held because suite CI is unconfigured. The pinned commit carries.amadan/ci.d/10-gateand merged under it. The lag is now "AHEAD has not been merged upstream", not "CI is unconfigured". AGENTS.md's own rule applies: when you retire something, grep for it by name.
Non-blocking: nothing else. Do not deploy or promote past this until memoria's own CI, review record and canary are done, as you stated.