Summary
A focused Reviewer local-Git recovery attempt found a restart failure after the live source repository was deliberately removed. Track this separately from the initial commit / git_diff activation in #40.
Reproduction observed
- Admit and fully read a local
commit target.
- Append a direct
git_diff target to the same active PracticeRun.
- Verify the journal, Evidence, target snapshots, commit manifest, and diff Artifact before restart.
- Wait for journal and Evidence durability.
- Delete only the derived PracticeRun snapshot.
- Delete the fixture repository's
.git directory.
- Restart the Reviewer Worker.
Observed result: the Worker did not report ready within the bounded recovery window. The run-owned Worker and storage were cleaned up. No root cause has been confirmed yet.
The local-Git Basic path passed before this recovery attempt: immutable commit/diff admission, manifest inspection, complete target-bound reads, checkpoint completion, Store/Evidence joins, repository byte-state unchanged, external helper sentinel not executed, Matrix delivery, Harness, and exact cleanup.
Expected behavior
Worker startup and active-run reconstruction use only the append-only PracticeRun journal, Evidence, and journal-authorized CapturedArtifactStore objects. They must not require live ref resolution or local-Git execution.
A later read of an incomplete commit member may access the pinned blob source and return a stable GIT_OBJECT_UNAVAILABLE if the source is gone. Stored diff consumption and durable replay must remain source-independent.
Acceptance criteria
Verification discipline
Do not repeat the expensive recovery smoke without new deterministic evidence. Keep model liveness separate from the machine recovery oracle.
Summary
A focused Reviewer local-Git recovery attempt found a restart failure after the live source repository was deliberately removed. Track this separately from the initial
commit/git_diffactivation in #40.Reproduction observed
committarget.git_difftarget to the same active PracticeRun..gitdirectory.Observed result: the Worker did not report ready within the bounded recovery window. The run-owned Worker and storage were cleaned up. No root cause has been confirmed yet.
The local-Git Basic path passed before this recovery attempt: immutable commit/diff admission, manifest inspection, complete target-bound reads, checkpoint completion, Store/Evidence joins, repository byte-state unchanged, external helper sentinel not executed, Matrix delivery, Harness, and exact cleanup.
Expected behavior
Worker startup and active-run reconstruction use only the append-only PracticeRun journal, Evidence, and journal-authorized CapturedArtifactStore objects. They must not require live ref resolution or local-Git execution.
A later read of an incomplete commit member may access the pinned blob source and return a stable
GIT_OBJECT_UNAVAILABLEif the source is gone. Stored diff consumption and durable replay must remain source-independent.Acceptance criteria
Verification discipline
Do not repeat the expensive recovery smoke without new deterministic evidence. Keep model liveness separate from the machine recovery oracle.