Hand off unavailable mandatory evidence after feasible remediation - #10
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2e28a43a97
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| Unless the selected source explicitly makes them an acceptance or safety | ||
| prerequisite, the following are advisory evidence and must not fail verification | ||
| by themselves: |
There was a problem hiding this comment.
Propagate mandatory handoffs to the Markdown verifier
Consumers using the projected /moonspec.verify Markdown command do not receive this exception: bundle/commands/markdown/moonspec.verify.md:106-115 still classifies unavailable deployment evidence as unconditionally non-blocking, and its report contract at lines 126 and 167 omits BLOCKED and the new continuation decision. When a source explicitly requires a drain, permission, or deployment check, that command can therefore return FULLY_IMPLEMENTED instead of the required evidence handoff; update the exported command alongside the skill.
Useful? React with 👍 / 👎.
| repository work, but if only unavailable mandatory prerequisites remain, report | ||
| `BLOCKED` with that handoff instead of starting another implementation pass. |
There was a problem hiding this comment.
Stop orchestration when assessment reports BLOCKED
The new assessment verdict cannot currently stop the end-to-end workflow: the assessment step in bundle/presets/moonspec-orchestrate.yaml:58-60 checks only that the artifact and matching featureId exist, then proceeds to planning, while bundle/skills/moonspec-orchestrate/SKILL.md defines stop handling only for final verification verdicts. Thus, when only an unavailable mandatory prerequisite remains, the emitted BLOCKED assessment is still fed into plan/tasks/implementation as a backlog, defeating this handoff and potentially advancing past a required safety prerequisite; add an assessment gate and routing rule before planning.
Useful? React with 👍 / 👎.
Description
Assessment and verification could repeatedly request repository remediation when the remaining acceptance evidence required unavailable runtime tooling, deployment access, or an authority decision. Preserve mandatory prerequisites with an owner, required evidence, and resume check; complete independent repository fixes, then stop with the appropriate handoff when only unavailable prerequisites remain. Optional environment diagnostics remain advisory.
This supplies the canonical bundle changes consumed by MoonLadderStudios/MoonMind#4145.
Testing
python tools/validate_bundle.pypassed. The complete test suite passed (17 tests) in the MoonMind Python test image withPYTHONPATH=/app/src. Independent skill scenario checks covered optional diagnostics, mandatory external evidence, mixed fixable work, and missing required hermetic-test capabilities.uv run specify --helpuv sync && uv run pytest(equivalent installed-dependencypytestrun described above)AI Disclosure
Codex implemented the instruction changes and ran validation as part of the requested MoonMind workflow-reliability improvements.