Artifacts
| Path (relative to named root) | Writer / purpose |
|---|---|
<selected-root>/.project | Configuration file; project init or explicitly reviewed setup |
<runtime-root>/.praxis-jira/proposals/<EPIC>.json | Runtime BA proposal; local, not automatically committed |
<runtime-root>/work-packages/<WP>/manifest.json | Runtime Architect materialization; local WP ↔ Jira key |
<product-root>/design/<canon-WP>/change-spec.json (source path) or <runtime-root>/design/<runtime-WP>/change-spec.json | Architect machine scope; location depends on workflow |
design/<WP>/architect-developer.handoff.json | Architect writes architect.developer.handoff; verify its root and references |
<runtime-root>/design/<WP>/dev/completion-evidence.json | Runtime Developer Complete; source runner has its own dev/ evidence under explicit --design-dir |
design/<WP>/dev/quality-handoff.json | Developer writes under Runtime root or source --design-dir |
<runtime-root>/.praxis-jira/quality/<KEY>.json | Quality Apply local/Jira reconciliation |
<runtime-root>/design/<WP>/qa/quality-review.json | Quality Review result and file snapshot |
<runtime-root>/.praxis-quality/quality.sqlite | Local Quality service review/audit storage |
Quality discovers readiness from the last two Developer files, not from Jira Done.
The local-canon workflow additionally uses <product-root>/wp/<canon-WP>/handoffs/ba-architect.handoff.json and <product-root>/design/<canon-WP>/context-slice.md. BA creates the initial WP; Architect enriches its design. File existence does not imply a Git commit; staging and syncing are explicit. That requirements folder is distinct from the Runtime execution manifest. See handoff contracts for the exact receiver expectations and separate-repository setup.