proposal apply silently drops all claims in local mode
Version: 0.3.0 (installed 2026-08-31, unchanged since — no update involved)
Mode: local, path-bound repo. Hooks/auto-memory disabled.
Symptom
greplica proposal validate passes, proposal apply reports success with a
memory commit id — but zero claim rows are written (verified directly in
graph.db: claims has no new ids, graph_memberships has no new links).
Counts in apply output are all 0 (Components: 0 ... Claims: 0 ...).
Bisect (all validated, applied, then row-counted in DB)
- New component + plain claim → dropped.
- Existing component + plain new id → dropped.
- Supersede-shaped pair (
status: superseded + superseded_by /
supersedes) → validates, applies, dropped. No crash, no error.
So the local writer drops everything, not a specific shape.
Window (from memory_commits + membership mapping)
- Last claim-bearing commit:
mc_a42c3e (2026-09-09T22:06:12Z, 2 claims).
- First claimless commit:
mc_450a43 titled "Supersede epic-level claims
with phase-level state" (2026-09-09T22:06:27Z) — 15 seconds later, same
session. Three subsequent applies (incl. plain claims) also empty.
Ruled out
- Update: binary/package/npm-cache all dated 2026-08-31.
- Migrations: 0.11.0/0.12.0/0.12.2 were wedged; force-retried to clean
(doctor FAIL cleared) and re-applied — still 0 claims.
- External LLM: binary has no ollama/remote-LLM references; embeddings
are local Xenova mpnet (healthy, 100% coverage).
Suspected
The first failing commit is the first supersede/retire-style operation.
Hypothesis: the local applier choked on a retire directive and stayed wedged
(commit rows still recorded). The validator accepts supersede fields, so
validate gives false confidence.
Repro
# proposal.json: {title, component, claims:[{id,kind,status,text,evidence}]}
greplica proposal validate proposal.json # valid
greplica proposal apply proposal.json # success + commit id, 0 claims
sqlite3 ~/.greplica/graph.db "select count(*) from claims where id='<your-id>';"
# → 0
Ask
Either fix the local claim writer, or make apply fail loudly when claims
are dropped (exit nonzero + reason) instead of reporting success.
proposal applysilently drops all claims in local modeVersion: 0.3.0 (installed 2026-08-31, unchanged since — no update involved)
Mode: local, path-bound repo. Hooks/auto-memory disabled.
Symptom
greplica proposal validatepasses,proposal applyreports success with amemory commit id — but zero claim rows are written (verified directly in
graph.db:claimshas no new ids,graph_membershipshas no new links).Counts in apply output are all 0 (
Components: 0 ... Claims: 0 ...).Bisect (all validated, applied, then row-counted in DB)
status: superseded+superseded_by/supersedes) → validates, applies, dropped. No crash, no error.So the local writer drops everything, not a specific shape.
Window (from
memory_commits+ membership mapping)mc_a42c3e(2026-09-09T22:06:12Z, 2 claims).mc_450a43titled "Supersede epic-level claimswith phase-level state" (2026-09-09T22:06:27Z) — 15 seconds later, same
session. Three subsequent applies (incl. plain claims) also empty.
Ruled out
(
doctorFAIL cleared) and re-applied — still 0 claims.are local Xenova mpnet (healthy, 100% coverage).
Suspected
The first failing commit is the first supersede/retire-style operation.
Hypothesis: the local applier choked on a retire directive and stayed wedged
(commit rows still recorded). The validator accepts supersede fields, so
validate gives false confidence.
Repro
Ask
Either fix the local claim writer, or make
applyfail loudly when claimsare dropped (exit nonzero + reason) instead of reporting success.