Tasks: end-to-end PDLC scenario tests
Derived from
design.mdandtesting-plan.md. Ticket: #217.
Task list
- [x] 1. Runner core (
cli/tests/test_pdlc_e2e/runner.py)Scenario.load(manifest parse + validation with file/field-naming refusals),ScenarioRun(tmp checkout, harness config, FakeIntegration atintegrations.resolve, event log to tmp, session registry seed), the step interpreter (comment,emit,complete,advance,ask,reply,inner-loop,fail-github,restore-github,expect), the trace collector andassert_tracewith first-divergence reporting.- Depends on: none
- Requirements: R1.1–R1.4, R2.1–R2.2, R3.1–R3.3
- Test: T1, T2 (red→green while authoring the happy path)
- [x] 2. Happy-path scenario (fixtures + expected trace)
scenarios/happy-path/— locked spec-chain fixtures, execution-log fixture with the review-chain sections, full expected node/label/event trace.- Depends on: 1
- Requirements: R1.3, R2.3 (happy path)
- Test: T1
- [x] 3. Trivial-tier + ask-reply scenarios
- Declared-skip checklist reply; skip provenance assertions. Ask/park/reply with session-missing fail-closed check mid-run.
- Depends on: 2
- Requirements: R2.3
- Test: T1
- [x] 4. Error + loop-prevention scenarios
gate-rejection,review-rejection,gh-unreachable,loop-prevention.- Depends on: 2
- Requirements: R2.3, R3.3, Security 2
- Test: T1, T8
- [x] 5. Test module + meta-tests + README
cli/tests/test_pdlc_e2e_integration.py(named tests with Gherkin docstrings, scenario-dir↔test consistency check, runner meta-tests),README.mddocumenting the fixture-set format.- Depends on: 1–4
- Requirements: R2.1, R2.2, R4.1, R4.3
- Test: T2, T3
- [x] 6. Docs
docs/capabilities/testing-and-contracts.md(current behaviour + history row); execution-log Documentation/Capability docs sections.- Depends on: 1–5
- Requirements: R4.2
- Test: T12, T14
- [x] 7. Verification
- Execute the plan, tick activities with evidence under
evidence/. - Depends on: 1–6
- Requirements: all
- Test: the plan itself
- Execute the plan, tick activities with evidence under