@urielsh/prodify 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prodify/AGENTS.md +56 -0
- package/.prodify/README.md +10 -0
- package/.prodify/artifacts/01-understand.md +28 -0
- package/.prodify/artifacts/02-diagnose.md +26 -0
- package/.prodify/artifacts/03-architecture.md +30 -0
- package/.prodify/artifacts/04-plan.md +35 -0
- package/.prodify/artifacts/05-refactor.md +24 -0
- package/.prodify/artifacts/06-validate.md +17 -0
- package/.prodify/artifacts/README.md +6 -0
- package/.prodify/artifacts/architecture_spec.md +29 -0
- package/.prodify/artifacts/artifact-validation-design.md +276 -0
- package/.prodify/artifacts/cli-command-design.md +299 -0
- package/.prodify/artifacts/completed-steps-tracking.md +201 -0
- package/.prodify/artifacts/diagnostic_report.md +45 -0
- package/.prodify/artifacts/hardening-patch-summary.md +57 -0
- package/.prodify/artifacts/hardening-verification-report.md +48 -0
- package/.prodify/artifacts/implementation_summary.md +19 -0
- package/.prodify/artifacts/improvement-evaluation-spec.md +148 -0
- package/.prodify/artifacts/next-step-resolver-design.md +570 -0
- package/.prodify/artifacts/orientation_map.md +32 -0
- package/.prodify/artifacts/persona-removal-audit.md +106 -0
- package/.prodify/artifacts/planning-alignment-report.md +189 -0
- package/.prodify/artifacts/refactor-plan-template-hardening.md +83 -0
- package/.prodify/artifacts/refactor-validate-loop-design.md +231 -0
- package/.prodify/artifacts/refactor_plan.md +21 -0
- package/.prodify/artifacts/refactor_plan.strict-example.md +31 -0
- package/.prodify/artifacts/run-state-design.md +292 -0
- package/.prodify/artifacts/run-summary-spec.md +149 -0
- package/.prodify/artifacts/run_state.json +14 -0
- package/.prodify/artifacts/sample-repo-test-plan.md +129 -0
- package/.prodify/artifacts/status-output-spec.md +349 -0
- package/.prodify/artifacts/step-selection-design.md +251 -0
- package/.prodify/artifacts/task-dispatcher-design.md +266 -0
- package/.prodify/artifacts/task-header-audit.md +42 -0
- package/.prodify/artifacts/task-log-enhancement-spec.md +264 -0
- package/.prodify/artifacts/task-protocol-hardening-plan.md +68 -0
- package/.prodify/artifacts/task-self-validation-spec.md +171 -0
- package/.prodify/artifacts/task_log.json +160 -0
- package/.prodify/artifacts/template-usage-audit.md +20 -0
- package/.prodify/artifacts/validation_report.md +22 -0
- package/.prodify/contracts/README.md +3 -0
- package/.prodify/contracts/architecture.contract.json +42 -0
- package/.prodify/contracts/diagnose.contract.json +42 -0
- package/.prodify/contracts/plan.contract.json +42 -0
- package/.prodify/contracts/refactor.contract.json +45 -0
- package/.prodify/contracts/understand.contract.json +42 -0
- package/.prodify/contracts/validate.contract.json +52 -0
- package/.prodify/contracts-src/README.md +4 -0
- package/.prodify/contracts-src/architecture.contract.md +29 -0
- package/.prodify/contracts-src/diagnose.contract.md +29 -0
- package/.prodify/contracts-src/plan.contract.md +29 -0
- package/.prodify/contracts-src/refactor.contract.md +32 -0
- package/.prodify/contracts-src/understand.contract.md +29 -0
- package/.prodify/contracts-src/validate.contract.md +35 -0
- package/.prodify/metrics/README.md +4 -0
- package/.prodify/planning.md +13 -0
- package/.prodify/project.md +15 -0
- package/.prodify/rules/01-global-operating-rules.md +21 -0
- package/.prodify/rules/02-analysis-discipline.md +17 -0
- package/.prodify/rules/03-diagnosis-severity-rules.md +42 -0
- package/.prodify/rules/04-architecture-rules.md +27 -0
- package/.prodify/rules/05-planning-rules.md +23 -0
- package/.prodify/rules/06-refactor-rules.md +20 -0
- package/.prodify/rules/07-validation-rules.md +25 -0
- package/.prodify/rules/08-output-format-rules.md +20 -0
- package/.prodify/rules/09-template-usage-rules.md +11 -0
- package/.prodify/rules/10-artifact-flow-and-orchestration-rules.md +40 -0
- package/.prodify/rules/README.md +3 -0
- package/.prodify/rules/example-rule.md +4 -0
- package/.prodify/runtime-commands.md +57 -0
- package/.prodify/skills/README.md +8 -0
- package/.prodify/skills/domain/react-frontend.skill.json +34 -0
- package/.prodify/skills/domain/typescript-backend.skill.json +34 -0
- package/.prodify/skills/quality-policy/maintainability-review.skill.json +25 -0
- package/.prodify/skills/quality-policy/security-hardening.skill.json +32 -0
- package/.prodify/skills/quality-policy/test-hardening.skill.json +23 -0
- package/.prodify/skills/registry.json +16 -0
- package/.prodify/skills/stage-method/architecture-method.skill.json +22 -0
- package/.prodify/skills/stage-method/codebase-scanning.skill.json +22 -0
- package/.prodify/skills/stage-method/diagnosis-method.skill.json +22 -0
- package/.prodify/skills/stage-method/planning-method.skill.json +22 -0
- package/.prodify/skills/stage-method/refactoring-method.skill.json +22 -0
- package/.prodify/skills/stage-method/validation-method.skill.json +22 -0
- package/.prodify/state.json +30 -0
- package/.prodify/tasks/01-understand.md +83 -0
- package/.prodify/tasks/02-diagnose.md +67 -0
- package/.prodify/tasks/03-architecture.md +70 -0
- package/.prodify/tasks/04-plan.md +71 -0
- package/.prodify/tasks/05-refactor.md +61 -0
- package/.prodify/tasks/06-validate.md +69 -0
- package/.prodify/tasks/README.md +3 -0
- package/.prodify/tasks/example-task.md +13 -0
- package/.prodify/templates/01-understand.template.md +18 -0
- package/.prodify/templates/02-diagnose.template.md +18 -0
- package/.prodify/templates/03-architecture.template.md +18 -0
- package/.prodify/templates/04-plan.template.md +22 -0
- package/.prodify/templates/05-refactor.template.md +19 -0
- package/.prodify/templates/06-validate.template.md +16 -0
- package/.prodify/templates/README.md +3 -0
- package/.prodify/templates/architecture_spec.template.md +29 -0
- package/.prodify/templates/diagnostic_report.template.md +45 -0
- package/.prodify/templates/example.template.md +5 -0
- package/.prodify/templates/implementation_summary.template.md +19 -0
- package/.prodify/templates/orientation_map.template.md +32 -0
- package/.prodify/templates/refactor_plan.template.md +24 -0
- package/.prodify/templates/validation_report.template.md +22 -0
- package/.prodify/version.json +5 -0
- package/AGENTS.md +305 -0
- package/LICENSE +201 -0
- package/README.md +118 -0
- package/assets/presets/default/canonical/AGENTS.md +54 -0
- package/assets/presets/default/canonical/artifacts/README.md +6 -0
- package/assets/presets/default/canonical/contracts-src/README.md +4 -0
- package/assets/presets/default/canonical/contracts-src/architecture.contract.md +56 -0
- package/assets/presets/default/canonical/contracts-src/diagnose.contract.md +49 -0
- package/assets/presets/default/canonical/contracts-src/plan.contract.md +42 -0
- package/assets/presets/default/canonical/contracts-src/refactor.contract.md +54 -0
- package/assets/presets/default/canonical/contracts-src/understand.contract.md +56 -0
- package/assets/presets/default/canonical/contracts-src/validate.contract.md +64 -0
- package/assets/presets/default/canonical/metrics/README.md +4 -0
- package/assets/presets/default/canonical/planning.md +13 -0
- package/assets/presets/default/canonical/project.md +15 -0
- package/assets/presets/default/canonical/rules/README.md +3 -0
- package/assets/presets/default/canonical/rules/example-rule.md +4 -0
- package/assets/presets/default/canonical/runtime-commands.md +57 -0
- package/assets/presets/default/canonical/skills/README.md +8 -0
- package/assets/presets/default/canonical/skills/domain/react-frontend.skill.json +34 -0
- package/assets/presets/default/canonical/skills/domain/typescript-backend.skill.json +34 -0
- package/assets/presets/default/canonical/skills/quality-policy/maintainability-review.skill.json +25 -0
- package/assets/presets/default/canonical/skills/quality-policy/security-hardening.skill.json +32 -0
- package/assets/presets/default/canonical/skills/quality-policy/test-hardening.skill.json +23 -0
- package/assets/presets/default/canonical/skills/registry.json +16 -0
- package/assets/presets/default/canonical/skills/stage-method/architecture-method.skill.json +22 -0
- package/assets/presets/default/canonical/skills/stage-method/codebase-scanning.skill.json +22 -0
- package/assets/presets/default/canonical/skills/stage-method/diagnosis-method.skill.json +22 -0
- package/assets/presets/default/canonical/skills/stage-method/planning-method.skill.json +22 -0
- package/assets/presets/default/canonical/skills/stage-method/refactoring-method.skill.json +22 -0
- package/assets/presets/default/canonical/skills/stage-method/validation-method.skill.json +22 -0
- package/assets/presets/default/canonical/state.json +30 -0
- package/assets/presets/default/canonical/tasks/README.md +3 -0
- package/assets/presets/default/canonical/tasks/example-task.md +13 -0
- package/assets/presets/default/canonical/templates/README.md +3 -0
- package/assets/presets/default/canonical/templates/example.template.md +5 -0
- package/assets/presets/default/preset.json +5 -0
- package/dist/cli.js +53 -0
- package/dist/commands/doctor.js +16 -0
- package/dist/commands/init.js +30 -0
- package/dist/commands/install.js +27 -0
- package/dist/commands/setup-agent.js +23 -0
- package/dist/commands/status.js +28 -0
- package/dist/commands/sync.js +29 -0
- package/dist/commands/update.js +18 -0
- package/dist/contracts/compiled-schema.js +37 -0
- package/dist/contracts/compiler.js +83 -0
- package/dist/contracts/freshness.js +52 -0
- package/dist/contracts/index.js +5 -0
- package/dist/contracts/parser.js +201 -0
- package/dist/contracts/schema.js +138 -0
- package/dist/contracts/source-schema.js +111 -0
- package/dist/core/agent-runtime.js +36 -0
- package/dist/core/agent-setup.js +111 -0
- package/dist/core/doctor.js +155 -0
- package/dist/core/errors.js +19 -0
- package/dist/core/flow-state.js +262 -0
- package/dist/core/fs.js +50 -0
- package/dist/core/install.js +44 -0
- package/dist/core/managed-files.js +106 -0
- package/dist/core/paths.js +56 -0
- package/dist/core/preset-validation.js +43 -0
- package/dist/core/prompt-builder.js +63 -0
- package/dist/core/repo-context.js +77 -0
- package/dist/core/repo-root.js +55 -0
- package/dist/core/skill-resolution.js +123 -0
- package/dist/core/state.js +220 -0
- package/dist/core/status.js +293 -0
- package/dist/core/sync.js +63 -0
- package/dist/core/targets.js +48 -0
- package/dist/core/upgrade.js +57 -0
- package/dist/core/validation.js +138 -0
- package/dist/core/version-checks.js +35 -0
- package/dist/generators/claude.js +14 -0
- package/dist/generators/codex.js +14 -0
- package/dist/generators/copilot.js +29 -0
- package/dist/generators/header.js +13 -0
- package/dist/generators/opencode.js +14 -0
- package/dist/generators/shared.js +37 -0
- package/dist/index.js +9 -0
- package/dist/legacy/targets.js +55 -0
- package/dist/presets/default.js +3 -0
- package/dist/presets/loader.js +34 -0
- package/dist/presets/version.js +18 -0
- package/dist/scoring/model.js +262 -0
- package/dist/skills/loader.js +40 -0
- package/dist/skills/schema.js +159 -0
- package/dist/types.js +1 -0
- package/docs/canonical-prodify-layout.md +87 -0
- package/docs/claude-support.md +22 -0
- package/docs/cli-doctor-spec.md +52 -0
- package/docs/cli-init-spec.md +70 -0
- package/docs/cli-install-agent-spec.md +48 -0
- package/docs/cli-sync-spec.md +40 -0
- package/docs/codex-support.md +24 -0
- package/docs/compatibility-targets.md +59 -0
- package/docs/copilot-support.md +30 -0
- package/docs/default-preset.md +47 -0
- package/docs/generated-file-headers.md +45 -0
- package/docs/generation-rules.md +94 -0
- package/docs/idempotency-guarantees.md +31 -0
- package/docs/managed-file-detection.md +45 -0
- package/docs/manual-edit-conflicts.md +37 -0
- package/docs/opencode-support.md +27 -0
- package/docs/ownership-rules.md +39 -0
- package/docs/path-resolution-rules.md +40 -0
- package/docs/preset-structure.md +49 -0
- package/docs/skill-system.md +67 -0
- package/docs/versioning-and-upgrade-strategy.md +40 -0
- package/package.json +22 -0
- package/src/README.md +11 -0
- package/src/cli.ts +61 -0
- package/src/commands/doctor.ts +20 -0
- package/src/commands/init.ts +37 -0
- package/src/commands/setup-agent.ts +28 -0
- package/src/commands/status.ts +34 -0
- package/src/commands/update.ts +23 -0
- package/src/contracts/README.md +10 -0
- package/src/contracts/compiled-schema.ts +42 -0
- package/src/contracts/compiler.ts +111 -0
- package/src/contracts/freshness.ts +58 -0
- package/src/contracts/index.ts +11 -0
- package/src/contracts/parser.ts +253 -0
- package/src/contracts/source-schema.ts +141 -0
- package/src/core/agent-runtime.ts +53 -0
- package/src/core/agent-setup.ts +147 -0
- package/src/core/doctor.ts +171 -0
- package/src/core/errors.ts +28 -0
- package/src/core/flow-state.ts +333 -0
- package/src/core/fs.ts +59 -0
- package/src/core/paths.ts +63 -0
- package/src/core/preset-validation.ts +47 -0
- package/src/core/prompt-builder.ts +73 -0
- package/src/core/repo-context.ts +93 -0
- package/src/core/repo-root.ts +74 -0
- package/src/core/skill-resolution.ts +151 -0
- package/src/core/state.ts +264 -0
- package/src/core/status.ts +372 -0
- package/src/core/targets.ts +53 -0
- package/src/core/upgrade.ts +66 -0
- package/src/core/validation.ts +233 -0
- package/src/core/version-checks.ts +40 -0
- package/src/index.ts +13 -0
- package/src/presets/default.ts +7 -0
- package/src/presets/loader.ts +46 -0
- package/src/presets/version.ts +31 -0
- package/src/scoring/model.ts +332 -0
- package/src/skills/loader.ts +58 -0
- package/src/skills/schema.ts +197 -0
- package/src/types.ts +329 -0
- package/tests/integration/cli-flows.test.js +347 -0
- package/tests/unit/agent-setup.test.js +81 -0
- package/tests/unit/cli.test.js +28 -0
- package/tests/unit/contracts.test.js +61 -0
- package/tests/unit/helpers.js +28 -0
- package/tests/unit/paths.test.js +52 -0
- package/tests/unit/preset-loader.test.js +37 -0
- package/tests/unit/scoring.test.js +65 -0
- package/tests/unit/self-hosted-workspace.test.js +22 -0
- package/tests/unit/skills.test.js +115 -0
- package/tests/unit/state-and-flow.test.js +120 -0
- package/tests/unit/targets.test.js +13 -0
- package/tests/unit/validation.test.js +73 -0
- package/tests/unit/version.test.js +24 -0
- package/tsconfig.json +23 -0
- package/urielsh-prodify-0.1.0.tgz +0 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# Task Self-Validation Spec
|
|
2
|
+
|
|
3
|
+
Date: 2026-03-28
|
|
4
|
+
Scope: `./.prodify/tasks/*.md`
|
|
5
|
+
|
|
6
|
+
## Purpose
|
|
7
|
+
Define a lightweight, agent-executable validation contract that every Prodify task should run before execution and after producing its output artifact.
|
|
8
|
+
|
|
9
|
+
## Validation Model
|
|
10
|
+
|
|
11
|
+
### Pre-Run Checks
|
|
12
|
+
Run these checks before starting task execution:
|
|
13
|
+
|
|
14
|
+
1. Confirm the task file exists and contains the required frontmatter keys:
|
|
15
|
+
- `task_id`
|
|
16
|
+
- `reads`
|
|
17
|
+
- `writes`
|
|
18
|
+
- `next_task`
|
|
19
|
+
- `mode`
|
|
20
|
+
2. Confirm every declared input artifact in `reads` exists, unless the task intentionally declares an empty `reads` list.
|
|
21
|
+
3. Confirm every declared template file referenced in the task's output specification exists.
|
|
22
|
+
4. Confirm the task's declared output artifact in `writes` matches the artifact described in the task body.
|
|
23
|
+
5. Confirm the output specification names an exact template file rather than a generic or freeform instruction.
|
|
24
|
+
|
|
25
|
+
### Post-Run Checks
|
|
26
|
+
Run these checks after task execution completes:
|
|
27
|
+
|
|
28
|
+
1. Confirm every declared output artifact in `writes` exists.
|
|
29
|
+
2. Confirm the output artifact contains the section headings defined by the matching template.
|
|
30
|
+
3. Confirm the artifact is Markdown when the task expects a Markdown artifact.
|
|
31
|
+
4. Confirm the produced artifact path matches the task's declared `writes` path.
|
|
32
|
+
5. Confirm the task did not omit required template sections, even if some sections are intentionally left brief.
|
|
33
|
+
|
|
34
|
+
## Failure Handling Rules
|
|
35
|
+
|
|
36
|
+
### Pre-Run Failure Rules
|
|
37
|
+
- If a required input artifact is missing, stop execution and report the missing path.
|
|
38
|
+
- If the required template file is missing, stop execution and report the missing template path.
|
|
39
|
+
- If the task metadata and task body disagree about the output artifact, stop execution and resolve the mismatch before proceeding.
|
|
40
|
+
- If the output specification allows a freeform artifact, stop execution and tighten the task instructions before proceeding.
|
|
41
|
+
|
|
42
|
+
### Post-Run Failure Rules
|
|
43
|
+
- If the declared output artifact was not created, mark the task as failed.
|
|
44
|
+
- If required template headings are missing, mark the artifact as invalid and revise it before moving to the next task.
|
|
45
|
+
- If the artifact was written to the wrong path, move or regenerate it at the declared path before continuing.
|
|
46
|
+
- If a section is present but empty because the data is unknown, note uncertainty explicitly instead of deleting the section.
|
|
47
|
+
|
|
48
|
+
## Execution Rules
|
|
49
|
+
- Keep validation file-based and heading-based.
|
|
50
|
+
- Prefer deterministic checks over subjective quality judgments.
|
|
51
|
+
- Do not treat deep content correctness as part of this self-validation layer.
|
|
52
|
+
- Allow conservative placeholders when the template expects a section but the data is not yet known.
|
|
53
|
+
|
|
54
|
+
## Task Integration Notes
|
|
55
|
+
|
|
56
|
+
### Task 01 - `01-understand.md`
|
|
57
|
+
- Expected inputs:
|
|
58
|
+
- none
|
|
59
|
+
- Required template:
|
|
60
|
+
- `.prodify/templates/orientation_map.template.md`
|
|
61
|
+
- Expected output:
|
|
62
|
+
- `.prodify/artifacts/orientation_map.md`
|
|
63
|
+
- Required post-run headings:
|
|
64
|
+
- `# Orientation Map`
|
|
65
|
+
- `## Project Summary`
|
|
66
|
+
- `## Entry Points`
|
|
67
|
+
- `## Module Map`
|
|
68
|
+
- `## Monorepo Metadata`
|
|
69
|
+
- `## Dependency Overview`
|
|
70
|
+
- `## Key Observations`
|
|
71
|
+
- `## Uncertainty`
|
|
72
|
+
|
|
73
|
+
### Task 02 - `02-diagnose.md`
|
|
74
|
+
- Expected inputs:
|
|
75
|
+
- `.prodify/artifacts/orientation_map.md`
|
|
76
|
+
- Required template:
|
|
77
|
+
- `.prodify/templates/diagnostic_report.template.md`
|
|
78
|
+
- Expected output:
|
|
79
|
+
- `.prodify/artifacts/diagnostic_report.md`
|
|
80
|
+
- Required post-run headings:
|
|
81
|
+
- `# Diagnostic Report`
|
|
82
|
+
- `## Top 5 Priorities`
|
|
83
|
+
- `## Critical Issues`
|
|
84
|
+
- `## High Issues`
|
|
85
|
+
- `## Medium Issues`
|
|
86
|
+
- `## Low Issues`
|
|
87
|
+
- `## Reliability Risks`
|
|
88
|
+
- `## Technical Debt Score`
|
|
89
|
+
- `## Notes`
|
|
90
|
+
|
|
91
|
+
### Task 03 - `03-architecture.md`
|
|
92
|
+
- Expected inputs:
|
|
93
|
+
- `.prodify/artifacts/orientation_map.md`
|
|
94
|
+
- `.prodify/artifacts/diagnostic_report.md`
|
|
95
|
+
- Required template:
|
|
96
|
+
- `.prodify/templates/architecture_spec.template.md`
|
|
97
|
+
- Expected output:
|
|
98
|
+
- `.prodify/artifacts/architecture_spec.md`
|
|
99
|
+
- Required post-run headings:
|
|
100
|
+
- `# Architecture Spec`
|
|
101
|
+
- `## Detected Pattern`
|
|
102
|
+
- `## Target Style`
|
|
103
|
+
- `## Layer Definitions`
|
|
104
|
+
- `## Violations`
|
|
105
|
+
- `## Gap Analysis`
|
|
106
|
+
- `## Migration Notes`
|
|
107
|
+
|
|
108
|
+
### Task 04 - `04-plan.md`
|
|
109
|
+
- Expected inputs:
|
|
110
|
+
- `.prodify/artifacts/diagnostic_report.md`
|
|
111
|
+
- `.prodify/artifacts/architecture_spec.md`
|
|
112
|
+
- Required template:
|
|
113
|
+
- `.prodify/templates/refactor_plan.template.md`
|
|
114
|
+
- Expected output:
|
|
115
|
+
- `.prodify/artifacts/refactor_plan.md`
|
|
116
|
+
- Required post-run headings:
|
|
117
|
+
- `# Refactor Plan`
|
|
118
|
+
- `## Summary`
|
|
119
|
+
- `## Phase Breakdown`
|
|
120
|
+
- `## Steps`
|
|
121
|
+
- `## Notes`
|
|
122
|
+
|
|
123
|
+
### Task 05 - `05-refactor.md`
|
|
124
|
+
- Expected inputs:
|
|
125
|
+
- `.prodify/artifacts/refactor_plan.md`
|
|
126
|
+
- Required template:
|
|
127
|
+
- `.prodify/templates/implementation_summary.template.md`
|
|
128
|
+
- Expected output:
|
|
129
|
+
- `.prodify/artifacts/implementation_summary.md`
|
|
130
|
+
- Required post-run headings:
|
|
131
|
+
- `# Implementation Summary`
|
|
132
|
+
- `## Step Executed`
|
|
133
|
+
- `## Objective Achieved`
|
|
134
|
+
- `## Files Changed`
|
|
135
|
+
- `## Diff Summary`
|
|
136
|
+
- `## Behavior Change Expected`
|
|
137
|
+
- `## Notes`
|
|
138
|
+
- Special rule:
|
|
139
|
+
- Validate only the summary artifact against the template. Source-file diffs are validated separately by task-specific review and verification.
|
|
140
|
+
|
|
141
|
+
### Task 06 - `06-validate.md`
|
|
142
|
+
- Expected inputs:
|
|
143
|
+
- `.prodify/artifacts/architecture_spec.md`
|
|
144
|
+
- `.prodify/artifacts/refactor_plan.md`
|
|
145
|
+
- `.prodify/artifacts/implementation_summary.md`
|
|
146
|
+
- Required template:
|
|
147
|
+
- `.prodify/templates/validation_report.template.md`
|
|
148
|
+
- Expected output:
|
|
149
|
+
- `.prodify/artifacts/validation_report.md`
|
|
150
|
+
- Required post-run headings:
|
|
151
|
+
- `# Validation Report`
|
|
152
|
+
- `## Readiness Status`
|
|
153
|
+
- `## Final Score`
|
|
154
|
+
- `## Category Scores`
|
|
155
|
+
- `## Remaining Issues`
|
|
156
|
+
- `## Regressions Detected`
|
|
157
|
+
- `## Recommended Next Step`
|
|
158
|
+
|
|
159
|
+
## Suggested Minimal Check Sequence
|
|
160
|
+
1. Read the task frontmatter.
|
|
161
|
+
2. Verify all input paths in `reads`.
|
|
162
|
+
3. Verify the named template path.
|
|
163
|
+
4. Execute the task.
|
|
164
|
+
5. Verify the output path in `writes`.
|
|
165
|
+
6. Verify required template headings in the output artifact.
|
|
166
|
+
7. Fail fast if any required file or heading is missing.
|
|
167
|
+
|
|
168
|
+
## Out Of Scope
|
|
169
|
+
- Semantic correctness of the artifact contents.
|
|
170
|
+
- Code quality or architecture judgment beyond file existence and template-shape compliance.
|
|
171
|
+
- Deep validation of modified source files produced during Task 05.
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
{
|
|
2
|
+
"executions": [
|
|
3
|
+
{
|
|
4
|
+
"timestamp": "2026-04-02T18:45:05Z",
|
|
5
|
+
"task": "01-understand",
|
|
6
|
+
"result": "success",
|
|
7
|
+
"artifacts_touched": [
|
|
8
|
+
".prodify/artifacts/01-understand.md",
|
|
9
|
+
".prodify/artifacts/run_state.json"
|
|
10
|
+
],
|
|
11
|
+
"notes": [
|
|
12
|
+
"Verified repository structure, preset assets, docs, and tests relevant to Task 65.",
|
|
13
|
+
"Wrote the understand-stage artifact and advanced run state to 02-diagnose."
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"timestamp": "2026-04-02T18:45:51Z",
|
|
18
|
+
"task": "02-diagnose",
|
|
19
|
+
"result": "success",
|
|
20
|
+
"artifacts_touched": [
|
|
21
|
+
".prodify/artifacts/02-diagnose.md",
|
|
22
|
+
".prodify/artifacts/run_state.json"
|
|
23
|
+
],
|
|
24
|
+
"notes": [
|
|
25
|
+
"Recorded evidence-backed consistency drift across tasks, docs, preset assets, and checked-in artifacts.",
|
|
26
|
+
"Advanced run state to 03-architecture."
|
|
27
|
+
]
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"timestamp": "2026-04-02T18:46:35Z",
|
|
31
|
+
"task": "03-architecture",
|
|
32
|
+
"result": "success",
|
|
33
|
+
"artifacts_touched": [
|
|
34
|
+
".prodify/artifacts/03-architecture.md",
|
|
35
|
+
".prodify/artifacts/run_state.json"
|
|
36
|
+
],
|
|
37
|
+
"notes": [
|
|
38
|
+
"Defined the target truth boundaries for contracts, tasks, preset assets, docs, and contributor-only root files.",
|
|
39
|
+
"Advanced run state to 04-plan."
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"timestamp": "2026-04-02T18:47:33Z",
|
|
44
|
+
"task": "04-plan",
|
|
45
|
+
"result": "success",
|
|
46
|
+
"artifacts_touched": [
|
|
47
|
+
".prodify/artifacts/04-plan.md",
|
|
48
|
+
".prodify/artifacts/run_state.json"
|
|
49
|
+
],
|
|
50
|
+
"notes": [
|
|
51
|
+
"Planned three atomic consistency steps for Task 65.",
|
|
52
|
+
"Selected step-01-clarify-default-lifecycle-docs as the first refactor step."
|
|
53
|
+
]
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"timestamp": "2026-04-02T18:50:35Z",
|
|
57
|
+
"task": "05-refactor",
|
|
58
|
+
"result": "success",
|
|
59
|
+
"artifacts_touched": [
|
|
60
|
+
".prodify/artifacts/05-refactor.md",
|
|
61
|
+
".prodify/artifacts/run_state.json"
|
|
62
|
+
],
|
|
63
|
+
"notes": [
|
|
64
|
+
"Clarified the default `.prodify`-first lifecycle across root and canonical guidance files.",
|
|
65
|
+
"Validation is now required for step-01-clarify-default-lifecycle-docs."
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"timestamp": "2026-04-02T18:51:31Z",
|
|
70
|
+
"task": "06-validate",
|
|
71
|
+
"result": "success",
|
|
72
|
+
"artifacts_touched": [
|
|
73
|
+
".prodify/artifacts/06-validate.md",
|
|
74
|
+
".prodify/artifacts/run_state.json"
|
|
75
|
+
],
|
|
76
|
+
"notes": [
|
|
77
|
+
"Validation passed for step-01-clarify-default-lifecycle-docs with npm test.",
|
|
78
|
+
"Advanced to step-02-reframe-compatibility-docs."
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"timestamp": "2026-04-02T18:54:14Z",
|
|
83
|
+
"task": "05-refactor",
|
|
84
|
+
"result": "success",
|
|
85
|
+
"artifacts_touched": [
|
|
86
|
+
".prodify/artifacts/05-refactor.md",
|
|
87
|
+
".prodify/artifacts/run_state.json"
|
|
88
|
+
],
|
|
89
|
+
"notes": [
|
|
90
|
+
"Reframed compatibility-target documentation as future or non-default behavior.",
|
|
91
|
+
"Validation is now required for step-02-reframe-compatibility-docs."
|
|
92
|
+
]
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"timestamp": "2026-04-02T18:55:06Z",
|
|
96
|
+
"task": "06-validate",
|
|
97
|
+
"result": "success",
|
|
98
|
+
"artifacts_touched": [
|
|
99
|
+
".prodify/artifacts/06-validate.md",
|
|
100
|
+
".prodify/artifacts/run_state.json"
|
|
101
|
+
],
|
|
102
|
+
"notes": [
|
|
103
|
+
"Validation passed for step-02-reframe-compatibility-docs with npm test.",
|
|
104
|
+
"Advanced to step-03-strengthen-consistency-tests."
|
|
105
|
+
]
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"timestamp": "2026-04-02T18:57:22Z",
|
|
109
|
+
"task": "05-refactor",
|
|
110
|
+
"result": "success",
|
|
111
|
+
"artifacts_touched": [
|
|
112
|
+
".prodify/artifacts/05-refactor.md",
|
|
113
|
+
".prodify/artifacts/run_state.json"
|
|
114
|
+
],
|
|
115
|
+
"notes": [
|
|
116
|
+
"Added explicit consistency assertions for the `.prodify`-first lifecycle and self-hosted workspace boundaries.",
|
|
117
|
+
"Validation is now required for step-03-strengthen-consistency-tests."
|
|
118
|
+
]
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"timestamp": "2026-04-02T18:58:17Z",
|
|
122
|
+
"task": "06-validate",
|
|
123
|
+
"result": "failed",
|
|
124
|
+
"artifacts_touched": [
|
|
125
|
+
".prodify/artifacts/06-validate.md",
|
|
126
|
+
".prodify/artifacts/run_state.json"
|
|
127
|
+
],
|
|
128
|
+
"notes": [
|
|
129
|
+
"Validation failed for step-03-strengthen-consistency-tests during npm test.",
|
|
130
|
+
"Repair the same selected step before continuing."
|
|
131
|
+
]
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"timestamp": "2026-04-02T18:59:29Z",
|
|
135
|
+
"task": "05-refactor",
|
|
136
|
+
"result": "success",
|
|
137
|
+
"artifacts_touched": [
|
|
138
|
+
".prodify/artifacts/05-refactor.md",
|
|
139
|
+
".prodify/artifacts/run_state.json"
|
|
140
|
+
],
|
|
141
|
+
"notes": [
|
|
142
|
+
"Repaired step-03-strengthen-consistency-tests by aligning the regex with the documented repository-local wording.",
|
|
143
|
+
"Validation was retried for the same selected step."
|
|
144
|
+
]
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"timestamp": "2026-04-02T18:59:29Z",
|
|
148
|
+
"task": "06-validate",
|
|
149
|
+
"result": "success",
|
|
150
|
+
"artifacts_touched": [
|
|
151
|
+
".prodify/artifacts/06-validate.md",
|
|
152
|
+
".prodify/artifacts/run_state.json"
|
|
153
|
+
],
|
|
154
|
+
"notes": [
|
|
155
|
+
"Validation passed for step-03-strengthen-consistency-tests with npm test after the repair.",
|
|
156
|
+
"All planned Task 65 steps are now complete."
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
]
|
|
160
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Template Usage Audit
|
|
2
|
+
|
|
3
|
+
Date: 2026-03-28
|
|
4
|
+
Scope: `./.prodify/tasks/*.md`
|
|
5
|
+
|
|
6
|
+
## Audit Results
|
|
7
|
+
|
|
8
|
+
| Task file | Expected artifact | Matching template | Gaps found | Exact fix recommendation |
|
|
9
|
+
| --- | --- | --- | --- | --- |
|
|
10
|
+
| `./.prodify/tasks/01-understand.md` | `.prodify/artifacts/orientation_map.md` | `.prodify/templates/orientation_map.template.md` | Output specification said "matching markdown template" without naming the file. | Replace the generic sentence with: `Use .prodify/templates/orientation_map.template.md and fill every section explicitly. Do not substitute a freeform structure.` |
|
|
11
|
+
| `./.prodify/tasks/02-diagnose.md` | `.prodify/artifacts/diagnostic_report.md` | `.prodify/templates/diagnostic_report.template.md` | Output specification said "matching markdown template" without naming the file. | Replace the generic sentence with: `Use .prodify/templates/diagnostic_report.template.md and fill every section explicitly. Do not substitute a freeform structure.` |
|
|
12
|
+
| `./.prodify/tasks/03-architecture.md` | `.prodify/artifacts/architecture_spec.md` | `.prodify/templates/architecture_spec.template.md` | Output specification said "matching markdown template" without naming the file. | Replace the generic sentence with: `Use .prodify/templates/architecture_spec.template.md and fill every section explicitly. Do not substitute a freeform structure.` |
|
|
13
|
+
| `./.prodify/tasks/04-plan.md` | `.prodify/artifacts/refactor_plan.md` | `.prodify/templates/refactor_plan.template.md` | Output specification said "matching markdown template" without naming the file. | Replace the generic sentence with: `Use .prodify/templates/refactor_plan.template.md and fill every section explicitly. Do not substitute a freeform structure.` |
|
|
14
|
+
| `./.prodify/tasks/05-refactor.md` | `.prodify/artifacts/implementation_summary.md` | `.prodify/templates/implementation_summary.template.md` | Output specification said "matching markdown template" without naming the file, even though the task also allows updated source files. | Replace the generic sentence with: `Use .prodify/templates/implementation_summary.template.md and fill every section explicitly for implementation_summary.md. Do not substitute a freeform structure for the summary artifact.` |
|
|
15
|
+
| `./.prodify/tasks/06-validate.md` | `.prodify/artifacts/validation_report.md` | `.prodify/templates/validation_report.template.md` | Output specification said "matching markdown template" without naming the file. | Replace the generic sentence with: `Use .prodify/templates/validation_report.template.md and fill every section explicitly. Do not substitute a freeform structure.` |
|
|
16
|
+
|
|
17
|
+
## Summary
|
|
18
|
+
- Every task now has a clear one-to-one mapping from output artifact to template file.
|
|
19
|
+
- The ambiguity was consistent across all six task files and has been corrected.
|
|
20
|
+
- No additional template-usage gaps were found in the current task set.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Validation Report
|
|
2
|
+
|
|
3
|
+
## Readiness Status
|
|
4
|
+
- PASS/FAIL:
|
|
5
|
+
|
|
6
|
+
## Final Score
|
|
7
|
+
- Score:
|
|
8
|
+
|
|
9
|
+
## Category Scores
|
|
10
|
+
- Architecture:
|
|
11
|
+
- Maintainability:
|
|
12
|
+
- Reliability:
|
|
13
|
+
- Testability:
|
|
14
|
+
|
|
15
|
+
## Remaining Issues
|
|
16
|
+
-
|
|
17
|
+
|
|
18
|
+
## Regressions Detected
|
|
19
|
+
-
|
|
20
|
+
|
|
21
|
+
## Recommended Next Step
|
|
22
|
+
-
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema_version": "1",
|
|
3
|
+
"contract_version": "1.0.0",
|
|
4
|
+
"stage": "architecture",
|
|
5
|
+
"task_id": "03-architecture",
|
|
6
|
+
"source_path": ".prodify/contracts-src/architecture.contract.md",
|
|
7
|
+
"source_hash": "4069286860c23df3a2cb441a115ffa001544e318e7410f645a8cfebb5b5b30a4",
|
|
8
|
+
"required_artifacts": [
|
|
9
|
+
{
|
|
10
|
+
"path": ".prodify/artifacts/03-architecture.md",
|
|
11
|
+
"format": "markdown",
|
|
12
|
+
"required_sections": [
|
|
13
|
+
"Dependency Rules",
|
|
14
|
+
"Policy Checks",
|
|
15
|
+
"Proposed Structure",
|
|
16
|
+
"Success Criteria",
|
|
17
|
+
"Tradeoffs"
|
|
18
|
+
],
|
|
19
|
+
"required_json_keys": []
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"allowed_write_roots": [
|
|
23
|
+
".prodify/artifacts/"
|
|
24
|
+
],
|
|
25
|
+
"forbidden_writes": [
|
|
26
|
+
"src/",
|
|
27
|
+
"tests/"
|
|
28
|
+
],
|
|
29
|
+
"policy_rules": [
|
|
30
|
+
"Flag mixed concerns explicitly.",
|
|
31
|
+
"Keep Domain dependencies pointing inward only."
|
|
32
|
+
],
|
|
33
|
+
"success_criteria": [
|
|
34
|
+
"Architecture violations are listed clearly.",
|
|
35
|
+
"The target structure is explicit."
|
|
36
|
+
],
|
|
37
|
+
"skill_routing": {
|
|
38
|
+
"default_skills": [],
|
|
39
|
+
"allowed_skills": [],
|
|
40
|
+
"conditional_skills": []
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema_version": "1",
|
|
3
|
+
"contract_version": "1.0.0",
|
|
4
|
+
"stage": "diagnose",
|
|
5
|
+
"task_id": "02-diagnose",
|
|
6
|
+
"source_path": ".prodify/contracts-src/diagnose.contract.md",
|
|
7
|
+
"source_hash": "73a614c393ff1fa7829128f7b05881121efd1a18ec3ad697cfcc73039664a19c",
|
|
8
|
+
"required_artifacts": [
|
|
9
|
+
{
|
|
10
|
+
"path": ".prodify/artifacts/02-diagnose.md",
|
|
11
|
+
"format": "markdown",
|
|
12
|
+
"required_sections": [
|
|
13
|
+
"Constraints",
|
|
14
|
+
"Observed Issues",
|
|
15
|
+
"Policy Checks",
|
|
16
|
+
"Root Causes",
|
|
17
|
+
"Success Criteria"
|
|
18
|
+
],
|
|
19
|
+
"required_json_keys": []
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"allowed_write_roots": [
|
|
23
|
+
".prodify/artifacts/"
|
|
24
|
+
],
|
|
25
|
+
"forbidden_writes": [
|
|
26
|
+
"src/",
|
|
27
|
+
"tests/"
|
|
28
|
+
],
|
|
29
|
+
"policy_rules": [
|
|
30
|
+
"Diagnose from repository evidence only.",
|
|
31
|
+
"Do not propose implementation changes in the diagnosis stage."
|
|
32
|
+
],
|
|
33
|
+
"success_criteria": [
|
|
34
|
+
"Every critical issue is tied to evidence.",
|
|
35
|
+
"Root causes are separated from symptoms."
|
|
36
|
+
],
|
|
37
|
+
"skill_routing": {
|
|
38
|
+
"default_skills": [],
|
|
39
|
+
"allowed_skills": [],
|
|
40
|
+
"conditional_skills": []
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema_version": "1",
|
|
3
|
+
"contract_version": "1.0.0",
|
|
4
|
+
"stage": "plan",
|
|
5
|
+
"task_id": "04-plan",
|
|
6
|
+
"source_path": ".prodify/contracts-src/plan.contract.md",
|
|
7
|
+
"source_hash": "69d7175649ed28daef3cd83059944c26e99821802016124b451f3dc0ead2bfca",
|
|
8
|
+
"required_artifacts": [
|
|
9
|
+
{
|
|
10
|
+
"path": ".prodify/artifacts/04-plan.md",
|
|
11
|
+
"format": "markdown",
|
|
12
|
+
"required_sections": [
|
|
13
|
+
"Policy Checks",
|
|
14
|
+
"Risks",
|
|
15
|
+
"Step Breakdown",
|
|
16
|
+
"Success Criteria",
|
|
17
|
+
"Verification"
|
|
18
|
+
],
|
|
19
|
+
"required_json_keys": []
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"allowed_write_roots": [
|
|
23
|
+
".prodify/artifacts/"
|
|
24
|
+
],
|
|
25
|
+
"forbidden_writes": [
|
|
26
|
+
"src/",
|
|
27
|
+
"tests/"
|
|
28
|
+
],
|
|
29
|
+
"policy_rules": [
|
|
30
|
+
"Keep the plan deterministic and minimal.",
|
|
31
|
+
"Map every step back to a diagnosed issue or architecture rule."
|
|
32
|
+
],
|
|
33
|
+
"success_criteria": [
|
|
34
|
+
"The plan enumerates executable steps.",
|
|
35
|
+
"Verification is defined before refactoring starts."
|
|
36
|
+
],
|
|
37
|
+
"skill_routing": {
|
|
38
|
+
"default_skills": [],
|
|
39
|
+
"allowed_skills": [],
|
|
40
|
+
"conditional_skills": []
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema_version": "1",
|
|
3
|
+
"contract_version": "1.0.0",
|
|
4
|
+
"stage": "refactor",
|
|
5
|
+
"task_id": "05-refactor",
|
|
6
|
+
"source_path": ".prodify/contracts-src/refactor.contract.md",
|
|
7
|
+
"source_hash": "0445b0239d888c292430f8fe5ddba557813f0e19a6bafdb9c7a7ad7d10c627b1",
|
|
8
|
+
"required_artifacts": [
|
|
9
|
+
{
|
|
10
|
+
"path": ".prodify/artifacts/05-refactor.md",
|
|
11
|
+
"format": "markdown",
|
|
12
|
+
"required_sections": [
|
|
13
|
+
"Behavior Guardrails",
|
|
14
|
+
"Changed Files",
|
|
15
|
+
"Policy Checks",
|
|
16
|
+
"Selected Step",
|
|
17
|
+
"Success Criteria"
|
|
18
|
+
],
|
|
19
|
+
"required_json_keys": []
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"allowed_write_roots": [
|
|
23
|
+
".prodify/artifacts/",
|
|
24
|
+
"assets/",
|
|
25
|
+
"README.md",
|
|
26
|
+
"src/",
|
|
27
|
+
"tests/"
|
|
28
|
+
],
|
|
29
|
+
"forbidden_writes": [
|
|
30
|
+
".prodify/contracts/"
|
|
31
|
+
],
|
|
32
|
+
"policy_rules": [
|
|
33
|
+
"Execute exactly one selected step.",
|
|
34
|
+
"Keep the diff minimal and behavior-preserving unless the plan says otherwise."
|
|
35
|
+
],
|
|
36
|
+
"success_criteria": [
|
|
37
|
+
"The selected plan step is implemented fully.",
|
|
38
|
+
"Unrelated files remain untouched."
|
|
39
|
+
],
|
|
40
|
+
"skill_routing": {
|
|
41
|
+
"default_skills": [],
|
|
42
|
+
"allowed_skills": [],
|
|
43
|
+
"conditional_skills": []
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema_version": "1",
|
|
3
|
+
"contract_version": "1.0.0",
|
|
4
|
+
"stage": "understand",
|
|
5
|
+
"task_id": "01-understand",
|
|
6
|
+
"source_path": ".prodify/contracts-src/understand.contract.md",
|
|
7
|
+
"source_hash": "850c024b5d54208e101c16797c84ab43a35bfa8ba46c0fcd8f37ab6783f024cb",
|
|
8
|
+
"required_artifacts": [
|
|
9
|
+
{
|
|
10
|
+
"path": ".prodify/artifacts/01-understand.md",
|
|
11
|
+
"format": "markdown",
|
|
12
|
+
"required_sections": [
|
|
13
|
+
"Current State",
|
|
14
|
+
"Open Questions",
|
|
15
|
+
"Policy Checks",
|
|
16
|
+
"Repository Summary",
|
|
17
|
+
"Success Criteria"
|
|
18
|
+
],
|
|
19
|
+
"required_json_keys": []
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"allowed_write_roots": [
|
|
23
|
+
".prodify/artifacts/"
|
|
24
|
+
],
|
|
25
|
+
"forbidden_writes": [
|
|
26
|
+
"src/",
|
|
27
|
+
"tests/"
|
|
28
|
+
],
|
|
29
|
+
"policy_rules": [
|
|
30
|
+
"Operate only on verified data.",
|
|
31
|
+
"Preserve the existing behavior during understanding."
|
|
32
|
+
],
|
|
33
|
+
"success_criteria": [
|
|
34
|
+
"Known unknowns are listed explicitly.",
|
|
35
|
+
"The repository intent is captured clearly."
|
|
36
|
+
],
|
|
37
|
+
"skill_routing": {
|
|
38
|
+
"default_skills": [],
|
|
39
|
+
"allowed_skills": [],
|
|
40
|
+
"conditional_skills": []
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema_version": "1",
|
|
3
|
+
"contract_version": "1.0.0",
|
|
4
|
+
"stage": "validate",
|
|
5
|
+
"task_id": "06-validate",
|
|
6
|
+
"source_path": ".prodify/contracts-src/validate.contract.md",
|
|
7
|
+
"source_hash": "10c9f32b2bbed054884a3c9c5ad5f195954ca0c702f14a783835d79a07aca2ed",
|
|
8
|
+
"required_artifacts": [
|
|
9
|
+
{
|
|
10
|
+
"path": ".prodify/artifacts/06-validate.md",
|
|
11
|
+
"format": "markdown",
|
|
12
|
+
"required_sections": [
|
|
13
|
+
"Policy Checks",
|
|
14
|
+
"Regressions",
|
|
15
|
+
"Success Criteria",
|
|
16
|
+
"Validation Results"
|
|
17
|
+
],
|
|
18
|
+
"required_json_keys": []
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"path": ".prodify/state.json",
|
|
22
|
+
"format": "json",
|
|
23
|
+
"required_sections": [],
|
|
24
|
+
"required_json_keys": [
|
|
25
|
+
"preset_name",
|
|
26
|
+
"preset_version",
|
|
27
|
+
"runtime",
|
|
28
|
+
"schema_version"
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
"allowed_write_roots": [
|
|
33
|
+
".prodify/artifacts/",
|
|
34
|
+
".prodify/metrics/"
|
|
35
|
+
],
|
|
36
|
+
"forbidden_writes": [
|
|
37
|
+
"src/"
|
|
38
|
+
],
|
|
39
|
+
"policy_rules": [
|
|
40
|
+
"Critical regressions block forward progress.",
|
|
41
|
+
"Validation must follow every refactor step."
|
|
42
|
+
],
|
|
43
|
+
"success_criteria": [
|
|
44
|
+
"The result is strong enough to gate the next runtime transition.",
|
|
45
|
+
"Validation records whether regressions were found."
|
|
46
|
+
],
|
|
47
|
+
"skill_routing": {
|
|
48
|
+
"default_skills": [],
|
|
49
|
+
"allowed_skills": [],
|
|
50
|
+
"conditional_skills": []
|
|
51
|
+
}
|
|
52
|
+
}
|