Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions .codex/skills/development-workflow/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,14 @@ Do not use this skill for document-only relocation/classification tasks; use `do

## Required evidence block in feature aggregation doc

Each active feature aggregation doc MUST contain an `## Evidence` section with at least:
Each active/in_review feature aggregation doc MUST contain an `## Evidence` section with at least:
- commands executed (exact commands)
- command results (pass/fail + key output summary)
- contract delta (`schema`/`error semantics`/`retry`; each as changed or `none/n.a + reason`)
- golden case file updates
- regression summary (runner output)
- observability/failure localization (`start/tool_call/end/fail` + locator fields)
- structured review report (module boundary/state/concurrency/side-effect/coverage)
- behavior verification (happy path + changed error branch)
- risks and rollback notes
- review/merge-gate evidence links (review request, key review threads, merge gate result)
Expand Down Expand Up @@ -75,10 +80,12 @@ Reference contract: `docs/guides/Evidence_Truth_Implementation_Strategy.md`.
- verify status consistency: feature doc is source of truth, linked docs are non-conflicting
- verify `docs/**` can stand alone as the current-state record without depending on OpenSpec internals
- verify governance CI scope is complete (frontmatter by mode, link resolution, evidence block completeness, TODO->change mapping, checkpoint mapping)
- verify feature evidence block includes commands, results, behavior verification, risks, rollback, and review links
- verify feature evidence block includes acceptance-pack semantics and structured review report content
- verify review links include both intent PR and implementation PR records

4. review-merge-gate
- request review with explicit evidence links from the feature aggregation doc
- reviewer default path is evidence-first, then risk-targeted code sampling (contract boundary + control-flow/side-effects)
- process review feedback thread-by-thread and keep evidence section updated with fix commits
- require explicit non-blocking merge gate signal (approval or equivalent repo policy signal) before archive
- keep mailbox records linked: temporary coordination notes vs retained audit evidence
Expand Down
37 changes: 37 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,26 @@ List all touched files and why each file changed.

If this PR is a large diff (>300 changed lines), explain why split PRs are not possible and provide a split follow-up plan.

## Intent / Implementation Gate (required)
- Intent PR link (docs-only): `...`
- Intent PR merged into `main` before this implementation started: [ ] Yes
- Implementation PR link (this PR): `...`

## Acceptance Criteria
- [ ] Criteria 1
- [ ] Criteria 2

## Acceptance Pack (required)
- Contract Delta (`schema` / `error semantics` / `retry` dimensions; each as changed or `none/n.a + reason`):
- `...`
- Golden Cases (new/updated file names):
- `...`
- Regression Summary (runner outputs):
- `...`
- Observability and Failure Localization (`start/tool_call/end/fail` + `run_id/tool_call_id/capability_id/attempt/trace_id` + one of `error_code`/`error_type`/`exception_class`/`ToolResult.error`):
- `...`
- Structured Review Report attached: [ ] Yes

## Test Evidence (required)
- Local commands run:
- `...`
Expand All @@ -35,6 +51,27 @@ If this PR changes high-risk runtime paths (auth/concurrency/execution control),
- Main risk points:
- Rollback plan:

## Structured Review Report (required)
### Changed Module Boundaries / Public API
- `...`

### New State
- New cache/global/singleton state:
- Lifecycle and cleanup:

### Concurrency / Timeout / Retry
- New concurrency points:
- Timeout/retry locations:
- Upper bounds:

### Side Effects and Idempotency
- Side effects:
- Anti-duplication strategy:

### Coverage and Residual Risk
- Covered tests/evaluations:
- Residual risks not covered:

## Dependency and Lockfile Changes
- Lockfile changed in this PR: [ ] Yes [ ] No
- If yes, manifest updated in same PR (`requirements.txt`/`pyproject.toml`/`package.json`): [ ] Yes [ ] No [ ] N/A
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-gate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -140,5 +140,5 @@ jobs:
- name: Checkout
uses: actions/checkout@v4

- name: Check governance evidence truth contract
- name: Check governance evidence-first contract (structure + semantics)
run: ./scripts/ci/check_governance_evidence_truth.sh
10 changes: 10 additions & 0 deletions dare_framework/plan_v2/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,21 @@
from dare_framework.plan_v2.registry import SubAgentRegistry
from dare_framework.plan_v2.types import (
Milestone,
PlanStateName,
PlannerState,
STEP_STATES,
Step,
Task,
is_valid_state_transition,
)
from dare_framework.plan_v2.prompts import PLAN_AGENT_SYSTEM_PROMPT, SUB_AGENT_TASK_PROMPT
from dare_framework.plan_v2.tools import (
CreatePlanTool,
DecomposeTaskTool,
DelegateToSubAgentTool,
FinishPlanTool,
ReflectTool,
ReviseCurrentPlanTool,
ValidatePlanTool,
VerifyMilestoneTool,
)
Expand All @@ -25,15 +30,20 @@
"CreatePlanTool",
"DecomposeTaskTool",
"DelegateToSubAgentTool",
"FinishPlanTool",
"Milestone",
"PLAN_AGENT_SYSTEM_PROMPT",
"PlanStateName",
"Planner",
"SUB_AGENT_TASK_PROMPT",
"STEP_STATES",
"PlannerState",
"ReflectTool",
"ReviseCurrentPlanTool",
"Step",
"SubAgentRegistry",
"Task",
"ValidatePlanTool",
"VerifyMilestoneTool",
"is_valid_state_transition",
]
4 changes: 4 additions & 0 deletions dare_framework/plan_v2/planner.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@
from dare_framework.plan_v2.tools import (
CreatePlanTool,
DecomposeTaskTool,
FinishPlanTool,
ReflectTool,
ReviseCurrentPlanTool,
SubAgentTool,
ValidatePlanTool,
VerifyMilestoneTool,
Expand All @@ -35,6 +37,8 @@ def __init__(
self._tools.extend([
CreatePlanTool(self._state),
ValidatePlanTool(self._state),
ReviseCurrentPlanTool(self._state),
FinishPlanTool(self._state),
VerifyMilestoneTool(self._state),
ReflectTool(self._state),
DecomposeTaskTool(self._state),
Expand Down
Loading