You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As a lead draining the queue on a different machine, or days after a close whose local tmp was
cleaned, I want/nxs.distill to recover the analyze verdict and the close record's rationale from
GitHub instead of failing outright, so that a wiped local tmp doesn't strand an otherwise-closed
epic.
Acceptance Criteria
Given a --pr-closed epic whose .nexus/tmp copy is gone and no committed close-record.md
exists, when/nxs.distill resolves that entry's why source, then it falls back to
the epic issue's close comment (posted by /nxs.close Phase 8.2, carrying Key Decisions +
Deviation Rationale verbatim) with no loss of content versus draining it fresh off the worktree.
Given the same missing-tmp condition for an epic with a linked PR, when/nxs.distill
wants the analyze verdict for its own report, then it can recover it from the PR's published
review (the existing --pr machine block) rather than treating conformance as unknown.
Given a local (non---pr) close whose .nexus/tmp copy is gone and no PR exists for the
epic, when/nxs.distill --recover <epic-issue> looks for that entry's rationale, then
it recovers it from the epic issue's close comment exactly as in --pr mode — that comment is
the durable close record in every mode — rather than treating a local close as unrecoverable. (Amended at implementation per record Decision Record: Tmp-First Analyze & Close Artifacts, with GitHub Fallback for Distill #176: this criterion's original premise — that a local
close leaves no GitHub surface to recover from — is false.)
Given an epic issue carrying no trusted close comment (or none carrying the machine
block), or a recovered range: head that cannot be resolved locally and that no PR resolves, when recovery runs, then each is a named per-entry hard block
(no-close-comment / range-unresolvable) reported precisely — naming the entry and why it
cannot be drained — never silently treated as "not yet closed", never drained with fabricated
or empty rationale, and never a silent empty or partial diff.
As a lead draining the queue on a different machine, or days after a close whose local tmp was
cleaned, I want
/nxs.distillto recover the analyze verdict and the close record's rationale fromGitHub instead of failing outright, so that a wiped local tmp doesn't strand an otherwise-closed
epic.
Acceptance Criteria
--pr-closed epic whose.nexus/tmpcopy is gone and no committedclose-record.mdexists, when
/nxs.distillresolves that entry's why source, then it falls back tothe epic issue's close comment (posted by
/nxs.closePhase 8.2, carrying Key Decisions +Deviation Rationale verbatim) with no loss of content versus draining it fresh off the worktree.
/nxs.distillwants the analyze verdict for its own report, then it can recover it from the PR's published
review (the existing
--prmachine block) rather than treating conformance as unknown.--pr) close whose.nexus/tmpcopy is gone and no PR exists for theepic, when
/nxs.distill --recover <epic-issue>looks for that entry's rationale, thenit recovers it from the epic issue's close comment exactly as in
--prmode — that comment isthe durable close record in every mode — rather than treating a local close as unrecoverable.
(Amended at implementation per record Decision Record: Tmp-First Analyze & Close Artifacts, with GitHub Fallback for Distill #176: this criterion's original premise — that a local
close leaves no GitHub surface to recover from — is false.)
block), or a recovered
range:head that cannot be resolved locally and that no PR resolves,when recovery runs, then each is a named per-entry hard block
(
no-close-comment/range-unresolvable) reported precisely — naming the entry and why itcannot be drained — never silently treated as "not yet closed", never drained with fabricated
or empty rationale, and never a silent empty or partial diff.
to explicit invariants recorded by
/nxs.decision-recordfor this epic (record Decision Record: Tmp-First Analyze & Close Artifacts, with GitHub Fallback for Distill #176,invariants 14 and 15) — this story does not itself mandate the resolution.
Notes
Part of epic #170. Builds on
STORY-170.03's tmp-first discovery mechanism in/nxs.distill.