devflow-cli 8.4.1__tar.gz → 8.5.1__tar.gz
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.
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/memory/constitution.md +8 -3
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/.gitignore +2 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/activity-contract.json +169 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/agent-execution.json +15 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/assessment.json +39 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/attempts/reopen-001/activity-contract.json +221 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/attempts/reopen-001/prepare-result.json +176 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/evidence/diff-inspection.json +62 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/evidence/regression-check.json +210 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/evidence/targeted-tests.json +41 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/implement-result.json +127 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/need.md +227 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/preflight-evidence-result.json +87 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/preflight-evidence.md +307 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/prepare-result.json +190 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/reopen-log.json +26 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/review-result.json +48 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/validation-approvals.json +44 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/workflow-state.json +95 -0
- devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/worklog.md +138 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/.gitignore +2 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/activity-contract.json +169 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/agent-execution.json +15 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/assessment.json +45 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/evidence/diff-inspection.json +39 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/evidence/regression-check.json +119 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/evidence/security-or-data-check.json +33 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/evidence/targeted-tests.json +30 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/implement-result.json +83 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/need.md +98 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/preflight-evidence-result.json +72 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/preflight-evidence.md +169 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/prepare-attempt.json +13 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/prepare-result.json +144 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/reconcile-log.json +158 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/review-result.json +45 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/risk-assessment-result.json +31 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/risk-assessment.md +124 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/rollback-check-result.json +48 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/validation-approvals.json +20 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/workflow-state.json +117 -0
- devflow_cli-8.5.1/.specify/specs/044-kks-545-reopen-keeps-gate-evidence/worklog.md +107 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/CHANGELOG.md +48 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/PKG-INFO +3 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/README.md +2 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/commands/devflow.md +10 -6
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/activity-contracts.md +26 -6
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/cli-reference.md +27 -4
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/commands-reference.md +6 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/pipeline.md +3 -0
- devflow_cli-8.5.1/docs/releases/8.5.0.md +115 -0
- devflow_cli-8.5.1/docs/releases/8.5.1.md +62 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/spec-driven.md +4 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/pyproject.toml +1 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/__init__.py +1 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/adaptive.py +63 -38
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/activity_contracts.py +12 -5
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/adaptive_runner.py +1 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/adaptive_workflow.py +97 -48
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/automatic_evidence.py +7 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/contract_schemas.py +12 -4
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/feedback.py +1 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/installer.py +1 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/remediation.py +42 -12
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/worklog.py +21 -9
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/constitution-template.md +5 -5
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/plan-template.md +3 -3
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/conftest.py +9 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_activity_contracts.py +33 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_adaptive_runner.py +126 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_adaptive_workflow.py +162 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_automatic_evidence.py +125 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_adaptive.py +591 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_feedback.py +13 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_upgrade.py +14 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_contract_schemas.py +1 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_guardrails.py +5 -2
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_installer.py +21 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_legacy_schema.py +28 -4
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_remediation.py +76 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_worklog.py +88 -1
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/uv.lock +1 -1
- devflow_cli-8.4.1/FEEDBACK.md +0 -284
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.ai/mcp/mcp.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.analyze.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.checklist.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.clarify.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.constitution.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.implement.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.specify.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.claude/commands/speckit.taskstoissues.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.githooks/post-checkout +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.githooks/post-merge +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.github/workflows/ci.yml +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.github/workflows/release.yml +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.github/workflows/version-check.yml +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/init-options.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/scripts/bash/check-prerequisites.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/scripts/bash/common.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/scripts/bash/create-new-feature.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/scripts/bash/setup-plan.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/scripts/bash/update-agent-context.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/contracts/cli-init.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/001-cli-init-options/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/contracts/cli-regen.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/contracts/cli-status-staleness.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/002-cascade-regen/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/003-usecase-guides/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/contracts/cli-commands.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/004-specify-central-directory/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/005-implement-subphases/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/005-implement-subphases/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/005-implement-subphases/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/005-implement-subphases/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/005-implement-subphases/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/005-implement-subphases/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/contracts/cli-upgrade.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/006-template-upgrade/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/007-project-documentation/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/008-hardening-bugs/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/008-hardening-bugs/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/008-hardening-bugs/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/008-hardening-bugs/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/008-hardening-bugs/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/008-hardening-bugs/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/009-ci-pypi/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/009-ci-pypi/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/009-ci-pypi/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/009-ci-pypi/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/009-ci-pypi/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/009-ci-pypi/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/010-flexible-pipeline/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/010-flexible-pipeline/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/010-flexible-pipeline/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/010-flexible-pipeline/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/010-flexible-pipeline/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/010-flexible-pipeline/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/011-cursor-support/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/011-cursor-support/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/011-cursor-support/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/011-cursor-support/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/011-cursor-support/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/011-cursor-support/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/012-fix-critical-bugs/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/012-fix-critical-bugs/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/012-fix-critical-bugs/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/012-fix-critical-bugs/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/012-fix-critical-bugs/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/013-align-truth-sources/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/013-align-truth-sources/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/013-align-truth-sources/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/013-align-truth-sources/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/013-align-truth-sources/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/014-enforce-state-machine/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/014-enforce-state-machine/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/014-enforce-state-machine/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/014-enforce-state-machine/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/014-enforce-state-machine/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/015-fix-review-contradiction/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/015-fix-review-contradiction/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/015-fix-review-contradiction/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/015-fix-review-contradiction/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/015-fix-review-contradiction/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/016-harden-state-machine/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/016-harden-state-machine/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/016-harden-state-machine/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/016-harden-state-machine/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/016-harden-state-machine/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/017-fix-robustness-issues/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/017-fix-robustness-issues/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/017-fix-robustness-issues/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/017-fix-robustness-issues/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/017-fix-robustness-issues/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/018-fix-final-robustness/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/019-quality-hardening/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/019-quality-hardening/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/019-quality-hardening/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/019-quality-hardening/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/019-quality-hardening/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/019-quality-hardening/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/020-migrate-speckit/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/021-review-iterations/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/021-review-iterations/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/021-review-iterations/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/021-review-iterations/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/021-review-iterations/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/022-fix-regen-command/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/022-fix-regen-command/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/022-fix-regen-command/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/022-fix-regen-command/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/022-fix-regen-command/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/023-add-logging/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/023-add-logging/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/023-add-logging/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/023-add-logging/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/023-add-logging/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/024-validate-constants/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/024-validate-constants/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/024-validate-constants/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/024-validate-constants/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/024-validate-constants/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/025-harden-tests/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/025-harden-tests/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/025-harden-tests/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/025-harden-tests/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/025-harden-tests/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/checklists/requirements.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/contracts/orchestrator-contract.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/data-model.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/quickstart.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/027-pipeline-auto-execution/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/prepare-attempt.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/028-kks-411-feature-dir-ignored/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/prepare-attempt.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/029-kks-413/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/omission-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/research-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/research.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/030-kks-416/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/contracts-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-001/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/contracts-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/attempts/reopen-002/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/contracts-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/contracts.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/issue-precommit-review.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/omission-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/reopen-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/031-kks-414/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/032-kks-419/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/033-kks-420-stale-commands-warning/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/contracts-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/contracts.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/omission-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/validation-approvals.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/034-kks-421-decouple-guardrails/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/evidence/targeted-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/035-kks-428-constitution-v2/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/036-kks-433-run-progress/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/037-kks-432-linear-sync/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempt-discard-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/discard-001/preflight-evidence-attempt.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/contracts-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/implement-attempt.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/attempts/reopen-001/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/contracts-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/contracts.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/evidence/requirements-coverage.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/evidence/test-suite.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/implement-attempt.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/plan-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/plan.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/reconcile-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/reopen-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/spec-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/spec.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/tasks-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/tasks.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/validation-approvals.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/038-kks-508-activity-base/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-001/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-002/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/attempts/reopen-003/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/reopen-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/039-kks-509-plan-correction-recovery/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/attempts/reopen-001/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/attempts/reopen-001/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/attempts/reopen-001/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/reopen-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/040-kks-429-delegation-structured-output/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/attempts/reopen-001/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/attempts/reopen-001/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/attempts/reopen-001/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/reopen-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/041-kks-530-verify-refusals-recovery/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/.gitignore +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/agent-execution.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/assessment.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-001/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-001/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-001/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-002/activity-contract.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-002/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-002/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-002/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-002/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/attempts/reopen-002/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/evidence/diff-inspection.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/evidence/regression-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/evidence/security-or-data-check.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/evidence/targeted-tests.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/implement-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/need.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/preflight-evidence-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/preflight-evidence.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/prepare-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/reopen-log.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/review-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/risk-assessment-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/risk-assessment.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/rollback-check-result.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/workflow-state.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/specs/042-kks-531-amended-need-artifact-recovery/worklog.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/agent-file-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/checklist-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/constitution-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/plan-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/spec-template-brownfield.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/spec-template-greenfield.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/spec-template-microservices.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/spec-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/.specify/templates/tasks-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/CLAUDE.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/CONTRIBUTING.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/LICENSE +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/commands/devflow.context.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/commands/devflow.extension.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/commands/devflow.init.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/commands/devflow.regen.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/commands/devflow.status.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/adr/0001-v4-workflow-compatibility.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/adr/0002-v5-rupture-and-provenance.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/adr/0003-v7-guardrails-rupture.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/cursor-guide.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/guides/brownfield.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/guides/greenfield.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/guides/microservices.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/index.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/pipeline-reference.generated.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/4.0.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/4.0.1.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/4.0.3.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/4.0.4.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/4.0.5.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/4.0.6.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/5.0.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.0.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.1.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.1.1.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.1.2.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.2.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.3.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.3.1.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/6.4.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/7.0.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/7.0.1.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/7.1.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/7.1.1.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/7.2.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/8.0.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/8.1.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/8.2.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/8.3.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/8.4.0.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/releases/8.4.1.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/v5-decisions.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/v6-decisions.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/docs/v7-decisions.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/extensions/EXTENSION-API-REFERENCE.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/extensions/catalog.community.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/extensions/catalog.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/extensions/template/example-command.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/extensions/template/example-extension.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/scripts/check_release.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/adapters/__init__.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/adapters/agents.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/adapters/linear.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/cli.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/__init__.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/assess.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/check.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/context.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/docs_sync.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/export_cmd.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/extension.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/feature.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/feedback.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/hooks_cmd.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/init_cmd.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/linear.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/stale.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/status.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/traceability.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/upgrade_cmd.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/usage.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/commands/verify.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/__init__.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/activity_base.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/agent_failure.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/agent_run_marker.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/assessment.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/catalog.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/docgen.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/git.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/hooks.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/manifest.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/operational.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/redaction.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/result_template.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/run_progress.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/runtime_backup.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/scanner.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/staleness.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/telemetry.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/traceability.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/validation_approvals.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/validators.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/verification.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/waivers.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/core/worktree_snapshot.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/schemas/activity-contract-v4.schema.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/schemas/activity-result-v1.schema.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/schemas/assessment-v4.schema.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/schemas/workflow-state-v6.schema.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/utils/__init__.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/utils/console.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/utils/logging.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/utils/paths.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/src/devflow_cli/utils/strings.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/agent-context-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/contracts/README-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/contracts/api-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/contracts/components-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/contracts/interfaces-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/contracts/services-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/contracts-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/data-model-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/devflow-hooks-template.yml +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/extension-manifest-template.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/quickstart-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/spec-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/templates/tasks-template.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/fixtures/agents/mock-agent.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/fixtures/commands/mock-command.md +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/fixtures/mock-catalog.json +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/run-tests.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test-helpers.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test-template-variants.sh +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_activity_base.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_agent_adapters.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_agent_failure.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_assessment.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_bash_runner.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_catalog.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_assess.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_check.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_context.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_docs_sync.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_extension.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_feature.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_hooks.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_init.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_linear.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_stale.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_status.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_traceability.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_cmd_verify.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_constants.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_context.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_docgen.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_feedback.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_git.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_hooks.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_integration.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_linear_adapter.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_linear_order.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_logging.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_manifest.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_paths.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_paths_project_root.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_release.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_run_progress.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_scanner.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_staleness.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_telemetry.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_traceability.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_validators.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_verification.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_version.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_waivers.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_wheel_adaptive_acceptance.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_wheel_install.py +0 -0
- {devflow_cli-8.4.1 → devflow_cli-8.5.1}/tests/test_worktree_snapshot.py +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Constitution — Devflow
|
|
2
2
|
|
|
3
|
-
**Version** : 2.0.
|
|
3
|
+
**Version** : 2.0.1
|
|
4
4
|
**Date de ratification** : 2026-03-15
|
|
5
|
-
**Dernière modification** : 2026-
|
|
5
|
+
**Dernière modification** : 2026-10-13
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -135,10 +135,15 @@ Les gates sont vérifiées avant l'implémentation. Une violation non justifiée
|
|
|
135
135
|
- **2.0.0** (2026-09-30) : réécriture complète. Les sept principes de la version 1.x décrivaient
|
|
136
136
|
un moteur disparu. Le principe de rétrocompatibilité est remplacé par l'article III.
|
|
137
137
|
L'intégration Linear sort des principes.
|
|
138
|
+
- **2.0.1** (2026-10-13) : suivi des dérogations. La dérogation à l'article V sur la version
|
|
139
|
+
observée d'une friction est close sans option nouvelle : une friction consignée au moment où
|
|
140
|
+
elle se produit porte la version observée ; une saisie a posteriori l'écrit dans son texte.
|
|
141
|
+
Deux écarts à l'article III sont déclarés.
|
|
138
142
|
|
|
139
143
|
## Suivi des dérogations
|
|
140
144
|
|
|
141
145
|
| Date | Article | Dérogation | Justification | Échéance |
|
|
142
146
|
|------|---------|------------|---------------|----------|
|
|
143
147
|
| 2026-09-30 | Article IV | Les adaptateurs Codex et Cursor sont conservés sans usage mesuré | Leur sort se décide après observation | Fin de la période d'observation de dix parcours |
|
|
144
|
-
| 2026-
|
|
148
|
+
| 2026-10-13 | Article III | `activity-result-v1` a perdu deux champs en 7.0.0 sans changer de version | La rupture 7.0.0 changeait l'état dans la même livraison ; contrepartie : un résultat qui porte ces champs est refusé avec un message | Prochaine évolution du résultat d'activité, qui passera en v2 |
|
|
149
|
+
| 2026-10-13 | Article III | En 8.4.1, le sens de `changedInputs` (fiche de tentative) et de `warning` (bloc d'observation du résultat) s'est élargi sans changement de version | Structure inchangée, décision prise sans la règle d'immuabilité sous les yeux ; contrepartie : limite écrite dans les notes de version 8.4 | Livraison de KKS-540, qui porte la fiche en version 3 et donne sa clé à l'avertissement d'amendement |
|
devflow_cli-8.5.1/.specify/specs/043-kks-430-hygiene-journal-docs-tests/activity-contract.json
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 4,
|
|
3
|
+
"contractId": "KKS-430:standard:review:v4",
|
|
4
|
+
"issueId": "KKS-430",
|
|
5
|
+
"profile": "standard",
|
|
6
|
+
"guardrails": false,
|
|
7
|
+
"activity": "review",
|
|
8
|
+
"objective": "Hygiène sans effet sur une gate : risques restants du dernier résultat, façade /devflow qui crée la feature et rédige le besoin, messages trompeurs, documentation, tests (couleur, largeur, verrous de l état), nettoyage, amendement 2.0.1 de la constitution, revérification puis retrait de FEEDBACK.md. Décisions dans need.md.",
|
|
9
|
+
"featurePath": ".specify/specs/043-kks-430-hygiene-journal-docs-tests",
|
|
10
|
+
"inputs": [
|
|
11
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/need.md",
|
|
12
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/assessment.json",
|
|
13
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/workflow-state.json",
|
|
14
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/prepare-result.json",
|
|
15
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/implement-result.json",
|
|
16
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/evidence/targeted-tests.json",
|
|
17
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/evidence/regression-check.json",
|
|
18
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/evidence/diff-inspection.json"
|
|
19
|
+
],
|
|
20
|
+
"allowedActions": [
|
|
21
|
+
"read",
|
|
22
|
+
"execute"
|
|
23
|
+
],
|
|
24
|
+
"constraints": [
|
|
25
|
+
"Respecter strictement l'objectif et le perimetre du contrat.",
|
|
26
|
+
"Le besoin de reference est .specify/specs/043-kks-430-hygiene-journal-docs-tests/need.md ; en cas d'ecart avec objective, il fait foi.",
|
|
27
|
+
"Preserver les changements utilisateur sans rapport avec cette activite.",
|
|
28
|
+
"Ne pas modifier state.json, workflow-state.json ou assessment.json.",
|
|
29
|
+
"Ne pas creer de commit et ne pas changer de branche.",
|
|
30
|
+
"Signaler tout blocage au lieu de contourner une validation.",
|
|
31
|
+
"Dans checks, status vaut passed si et seulement si exitCode vaut 0. Une commande dont l'absence de resultat constitue le succes attendu doit etre declaree failed, ou remplacee par une commande qui renvoie 0 en cas de succes.",
|
|
32
|
+
"Donner un id stable a chaque objectif de check. Si un check echoue puis est corrige et relance pour le meme objectif, reutiliser cet id : seule la derniere tentative fait foi ; signaler dans remainingRisks toute instabilite encore pertinente.",
|
|
33
|
+
"Si des sous-agents sont utilises, les lancer au premier plan, jamais en arriere-plan, et attendre qu'ils soient tous termines avant la sortie structuree. La sortie structuree du contrat est le dernier message de l'agent : ne rien envoyer apres elle.",
|
|
34
|
+
"Ne modifier aucun fichier pendant la review.",
|
|
35
|
+
"Examiner le besoin, le resultat de preparation, le diff et les preuves reelles.",
|
|
36
|
+
"Traiter les preuves source=devflow deja validees par verify comme les resultats d'execution de reference; controler leur contenu, leur actualite et leur adequation sans les ignorer.",
|
|
37
|
+
"Ne pas relancer une commande qui ecrit des artefacts de build dans ce sandbox en lecture seule. Une impossibilite de reecrire target, build ou dist n'est pas un blocker si la preuve Devflow correspondante est actuelle et passed.",
|
|
38
|
+
"Limiter les checks propres a la review aux inspections effectivement compatibles avec la lecture seule.",
|
|
39
|
+
"Retourner blocked avec des blockers explicites si un defaut significatif subsiste.",
|
|
40
|
+
"Ne produire la preuve de review attendue en passed que si le changement est coherent et suffisamment verifie."
|
|
41
|
+
],
|
|
42
|
+
"completionCriteria": [
|
|
43
|
+
"La conformite de l'implementation aux exigences est examinee.",
|
|
44
|
+
"Les preuves et risques restants sont pris en compte.",
|
|
45
|
+
"La preuve de review contient un rapport exploitable."
|
|
46
|
+
],
|
|
47
|
+
"requiredEvidence": [
|
|
48
|
+
"implementation-review"
|
|
49
|
+
],
|
|
50
|
+
"expectedOutput": {
|
|
51
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
52
|
+
"$id": "https://devflow.dev/schemas/activity-result/v1",
|
|
53
|
+
"title": "Devflow Activity Result v1",
|
|
54
|
+
"type": "object",
|
|
55
|
+
"required": [
|
|
56
|
+
"schemaVersion",
|
|
57
|
+
"contractId",
|
|
58
|
+
"status",
|
|
59
|
+
"summary",
|
|
60
|
+
"changedFiles",
|
|
61
|
+
"checks",
|
|
62
|
+
"evidence",
|
|
63
|
+
"remainingRisks",
|
|
64
|
+
"blockers"
|
|
65
|
+
],
|
|
66
|
+
"properties": {
|
|
67
|
+
"schemaVersion": {
|
|
68
|
+
"type": "integer",
|
|
69
|
+
"const": 1
|
|
70
|
+
},
|
|
71
|
+
"contractId": {
|
|
72
|
+
"type": "string",
|
|
73
|
+
"minLength": 1
|
|
74
|
+
},
|
|
75
|
+
"status": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"enum": [
|
|
78
|
+
"completed",
|
|
79
|
+
"blocked"
|
|
80
|
+
]
|
|
81
|
+
},
|
|
82
|
+
"summary": {
|
|
83
|
+
"type": "string",
|
|
84
|
+
"minLength": 1
|
|
85
|
+
},
|
|
86
|
+
"changedFiles": {
|
|
87
|
+
"type": "array",
|
|
88
|
+
"items": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"minLength": 1
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
"checks": {
|
|
94
|
+
"type": "array",
|
|
95
|
+
"items": {
|
|
96
|
+
"type": "object",
|
|
97
|
+
"required": [
|
|
98
|
+
"command",
|
|
99
|
+
"exitCode",
|
|
100
|
+
"status"
|
|
101
|
+
],
|
|
102
|
+
"properties": {
|
|
103
|
+
"id": {
|
|
104
|
+
"type": "string",
|
|
105
|
+
"minLength": 1
|
|
106
|
+
},
|
|
107
|
+
"command": {
|
|
108
|
+
"type": "string",
|
|
109
|
+
"minLength": 1
|
|
110
|
+
},
|
|
111
|
+
"exitCode": {
|
|
112
|
+
"type": "integer"
|
|
113
|
+
},
|
|
114
|
+
"status": {
|
|
115
|
+
"type": "string",
|
|
116
|
+
"enum": [
|
|
117
|
+
"passed",
|
|
118
|
+
"failed"
|
|
119
|
+
]
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
"additionalProperties": false
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"evidence": {
|
|
126
|
+
"type": "array",
|
|
127
|
+
"items": {
|
|
128
|
+
"type": "object",
|
|
129
|
+
"required": [
|
|
130
|
+
"id",
|
|
131
|
+
"outcome",
|
|
132
|
+
"report"
|
|
133
|
+
],
|
|
134
|
+
"properties": {
|
|
135
|
+
"id": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"minLength": 1
|
|
138
|
+
},
|
|
139
|
+
"outcome": {
|
|
140
|
+
"type": "string",
|
|
141
|
+
"enum": [
|
|
142
|
+
"passed",
|
|
143
|
+
"failed"
|
|
144
|
+
]
|
|
145
|
+
},
|
|
146
|
+
"report": {
|
|
147
|
+
"type": "string",
|
|
148
|
+
"minLength": 1
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"additionalProperties": false
|
|
152
|
+
}
|
|
153
|
+
},
|
|
154
|
+
"remainingRisks": {
|
|
155
|
+
"type": "array",
|
|
156
|
+
"items": {
|
|
157
|
+
"type": "string"
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"blockers": {
|
|
161
|
+
"type": "array",
|
|
162
|
+
"items": {
|
|
163
|
+
"type": "string"
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
"additionalProperties": false
|
|
168
|
+
}
|
|
169
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"runId": "a15009a3-fc3a-4aaf-aabd-71b30333badf",
|
|
4
|
+
"agent": "claude",
|
|
5
|
+
"activity": "review",
|
|
6
|
+
"returnCode": 0,
|
|
7
|
+
"durationSeconds": 114.047,
|
|
8
|
+
"finalOutputStatus": "present",
|
|
9
|
+
"finalOutputBytes": 7466,
|
|
10
|
+
"finalOutputDiagnostic": "validated",
|
|
11
|
+
"sessionId": null,
|
|
12
|
+
"timedOut": false,
|
|
13
|
+
"worktreeChanged": false,
|
|
14
|
+
"worktreeChangedFileCount": 0
|
|
15
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 4,
|
|
3
|
+
"issueId": "KKS-430",
|
|
4
|
+
"recommendedProfile": "standard",
|
|
5
|
+
"selectedProfile": "standard",
|
|
6
|
+
"confidence": "medium",
|
|
7
|
+
"signals": {
|
|
8
|
+
"scope": "multiple",
|
|
9
|
+
"ambiguity": "low",
|
|
10
|
+
"risk": "medium",
|
|
11
|
+
"contractChange": false,
|
|
12
|
+
"dataOrSecurity": false
|
|
13
|
+
},
|
|
14
|
+
"guardrails": {
|
|
15
|
+
"active": false,
|
|
16
|
+
"reasons": []
|
|
17
|
+
},
|
|
18
|
+
"reasons": [
|
|
19
|
+
"plusieurs composants sont affectes",
|
|
20
|
+
"le risque d'impact est modere"
|
|
21
|
+
],
|
|
22
|
+
"activities": [
|
|
23
|
+
"assess",
|
|
24
|
+
"prepare",
|
|
25
|
+
"preflight-evidence",
|
|
26
|
+
"implement",
|
|
27
|
+
"verify",
|
|
28
|
+
"review",
|
|
29
|
+
"done"
|
|
30
|
+
],
|
|
31
|
+
"requiredEvidence": [
|
|
32
|
+
"targeted-tests",
|
|
33
|
+
"regression-check",
|
|
34
|
+
"diff-inspection",
|
|
35
|
+
"implementation-review"
|
|
36
|
+
],
|
|
37
|
+
"assessedAt": "2026-10-13T21:09:59Z",
|
|
38
|
+
"summary": "Hygiène sans effet sur une gate : risques restants du dernier résultat, façade /devflow qui crée la feature et rédige le besoin, messages trompeurs, documentation, tests (couleur, largeur, verrous de l état), nettoyage, amendement 2.0.1 de la constitution, revérification puis retrait de FEEDBACK.md. Décisions dans need.md."
|
|
39
|
+
}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 4,
|
|
3
|
+
"contractId": "KKS-430:standard:prepare:v4",
|
|
4
|
+
"issueId": "KKS-430",
|
|
5
|
+
"profile": "standard",
|
|
6
|
+
"guardrails": false,
|
|
7
|
+
"activity": "prepare",
|
|
8
|
+
"objective": "Hygiène sans effet sur une gate : risques restants du dernier résultat, façade /devflow qui crée la feature et rédige le besoin, messages trompeurs, documentation, tests (couleur, largeur, verrous de l état), nettoyage, amendement 2.0.1 de la constitution, revérification puis retrait de FEEDBACK.md. Décisions dans need.md.",
|
|
9
|
+
"featurePath": ".specify/specs/043-kks-430-hygiene-journal-docs-tests",
|
|
10
|
+
"inputs": [
|
|
11
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/need.md",
|
|
12
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/assessment.json",
|
|
13
|
+
".specify/specs/043-kks-430-hygiene-journal-docs-tests/workflow-state.json"
|
|
14
|
+
],
|
|
15
|
+
"allowedActions": [
|
|
16
|
+
"read",
|
|
17
|
+
"execute"
|
|
18
|
+
],
|
|
19
|
+
"constraints": [
|
|
20
|
+
"Respecter strictement l'objectif et le perimetre du contrat.",
|
|
21
|
+
"Le besoin de reference est .specify/specs/043-kks-430-hygiene-journal-docs-tests/need.md ; en cas d'ecart avec objective, il fait foi.",
|
|
22
|
+
"Preserver les changements utilisateur sans rapport avec cette activite.",
|
|
23
|
+
"Ne pas modifier state.json, workflow-state.json ou assessment.json.",
|
|
24
|
+
"Ne pas creer de commit et ne pas changer de branche.",
|
|
25
|
+
"Signaler tout blocage au lieu de contourner une validation.",
|
|
26
|
+
"Dans checks, status vaut passed si et seulement si exitCode vaut 0. Une commande dont l'absence de resultat constitue le succes attendu doit etre declaree failed, ou remplacee par une commande qui renvoie 0 en cas de succes.",
|
|
27
|
+
"Donner un id stable a chaque objectif de check. Si un check echoue puis est corrige et relance pour le meme objectif, reutiliser cet id : seule la derniere tentative fait foi ; signaler dans remainingRisks toute instabilite encore pertinente.",
|
|
28
|
+
"Si des sous-agents sont utilises, les lancer au premier plan, jamais en arriere-plan, et attendre qu'ils soient tous termines avant la sortie structuree. La sortie structuree du contrat est le dernier message de l'agent : ne rien envoyer apres elle.",
|
|
29
|
+
"Ne modifier aucun fichier du depot pendant la preparation.",
|
|
30
|
+
"Identifier les composants concernes et une strategie de validation.",
|
|
31
|
+
"Ne pas inventer de precision fonctionnelle manquante.",
|
|
32
|
+
"Dans validationPlan, workingDirectory est toujours relatif a la racine du depot : utiliser '.' pour la racine ou par exemple 'app', jamais un chemin absolu.",
|
|
33
|
+
"Les commandes de validation sont des listes d'arguments sans shell implicite : ne pas utiliser sh, bash, zsh, cmd ou powershell.",
|
|
34
|
+
"Pour npm, pnpm, yarn ou bun, utiliser uniquement test, un script dont le nom commence par test, check, lint, verify ou build, ou le controle non mutatif format:check; ne jamais lancer un script format qui ecrit les fichiers.",
|
|
35
|
+
"rg est autorise pour les inspections en lecture seule, sans option --pre.",
|
|
36
|
+
"Executables de validation autorises par defaut : bun, cargo, devflow, dotnet, eslint, git, go, gradle, gradlew, make, mvn, mvnw, mypy, nginx, nox, npm, pnpm, pyright, pytest, rg, ruff, tox, tsc, uv, yarn; python est limite a -m compileall, pytest ou unittest.",
|
|
37
|
+
"uv run accepte avant l'outil uniquement les options --all-extras, --all-groups, --extra, --frozen, --group, --isolated, --locked, --no-dev, --no-project, --no-sync, --offline, --python, --quiet, -p, -q, en forme separee (--python 3.12, pas --python=3.12); --python/-p exige un numero de version, jamais un chemin d'interpreteur; toute autre option de uv run est refusee.",
|
|
38
|
+
"Maven et Gradle acceptent uniquement les taches test, check, lint, verify ou build; mvn clean verify est refuse (clean est hors politique). Le fichier de projet Maven (-f/--file) et le repertoire de projet Gradle (-p/--project-dir) acceptent un chemin relatif au depot, sans '..', en forme separee (mvn -B -f api/pom.xml verify).",
|
|
39
|
+
"Aucun shell implicite ni operateur |, &&, ; ou redirection; aucune expression non resolue de type double accolade dans une commande.",
|
|
40
|
+
"Un executable hors liste, dont docker, requiert une approbation explicite pour la validation exacte avant son execution : renseigner approvalReason dans validationPlan, puis faire approuver son identifiant par le superviseur.",
|
|
41
|
+
"Pour un fichier cree par l'activite, ne pas utiliser git ls-files --error-unmatch : un fichier non indexe serait refuse a tort. Verifier sa presence dans le systeme de fichiers, par exemple avec rg --files -g CHEMIN, sans indexer ni committer les changements."
|
|
42
|
+
],
|
|
43
|
+
"completionCriteria": [
|
|
44
|
+
"Le perimetre et les fichiers probablement concernes sont identifies.",
|
|
45
|
+
"L'approche d'implementation et les validations sont resumees.",
|
|
46
|
+
"Les risques ou blocages restants sont explicites."
|
|
47
|
+
],
|
|
48
|
+
"requiredEvidence": [],
|
|
49
|
+
"expectedOutput": {
|
|
50
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
51
|
+
"$id": "https://devflow.dev/schemas/activity-result/v1",
|
|
52
|
+
"title": "Devflow Activity Result v1",
|
|
53
|
+
"type": "object",
|
|
54
|
+
"required": [
|
|
55
|
+
"schemaVersion",
|
|
56
|
+
"contractId",
|
|
57
|
+
"status",
|
|
58
|
+
"summary",
|
|
59
|
+
"changedFiles",
|
|
60
|
+
"checks",
|
|
61
|
+
"evidence",
|
|
62
|
+
"remainingRisks",
|
|
63
|
+
"blockers",
|
|
64
|
+
"validationPlan"
|
|
65
|
+
],
|
|
66
|
+
"properties": {
|
|
67
|
+
"schemaVersion": {
|
|
68
|
+
"type": "integer",
|
|
69
|
+
"const": 1
|
|
70
|
+
},
|
|
71
|
+
"contractId": {
|
|
72
|
+
"type": "string",
|
|
73
|
+
"minLength": 1
|
|
74
|
+
},
|
|
75
|
+
"status": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"enum": [
|
|
78
|
+
"completed",
|
|
79
|
+
"blocked"
|
|
80
|
+
]
|
|
81
|
+
},
|
|
82
|
+
"summary": {
|
|
83
|
+
"type": "string",
|
|
84
|
+
"minLength": 1
|
|
85
|
+
},
|
|
86
|
+
"changedFiles": {
|
|
87
|
+
"type": "array",
|
|
88
|
+
"items": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"minLength": 1
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
"checks": {
|
|
94
|
+
"type": "array",
|
|
95
|
+
"items": {
|
|
96
|
+
"type": "object",
|
|
97
|
+
"required": [
|
|
98
|
+
"command",
|
|
99
|
+
"exitCode",
|
|
100
|
+
"status"
|
|
101
|
+
],
|
|
102
|
+
"properties": {
|
|
103
|
+
"id": {
|
|
104
|
+
"type": "string",
|
|
105
|
+
"minLength": 1
|
|
106
|
+
},
|
|
107
|
+
"command": {
|
|
108
|
+
"type": "string",
|
|
109
|
+
"minLength": 1
|
|
110
|
+
},
|
|
111
|
+
"exitCode": {
|
|
112
|
+
"type": "integer"
|
|
113
|
+
},
|
|
114
|
+
"status": {
|
|
115
|
+
"type": "string",
|
|
116
|
+
"enum": [
|
|
117
|
+
"passed",
|
|
118
|
+
"failed"
|
|
119
|
+
]
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
"additionalProperties": false
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"evidence": {
|
|
126
|
+
"type": "array",
|
|
127
|
+
"items": {
|
|
128
|
+
"type": "object",
|
|
129
|
+
"required": [
|
|
130
|
+
"id",
|
|
131
|
+
"outcome",
|
|
132
|
+
"report"
|
|
133
|
+
],
|
|
134
|
+
"properties": {
|
|
135
|
+
"id": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"minLength": 1
|
|
138
|
+
},
|
|
139
|
+
"outcome": {
|
|
140
|
+
"type": "string",
|
|
141
|
+
"enum": [
|
|
142
|
+
"passed",
|
|
143
|
+
"failed"
|
|
144
|
+
]
|
|
145
|
+
},
|
|
146
|
+
"report": {
|
|
147
|
+
"type": "string",
|
|
148
|
+
"minLength": 1
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"additionalProperties": false
|
|
152
|
+
}
|
|
153
|
+
},
|
|
154
|
+
"remainingRisks": {
|
|
155
|
+
"type": "array",
|
|
156
|
+
"items": {
|
|
157
|
+
"type": "string"
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"blockers": {
|
|
161
|
+
"type": "array",
|
|
162
|
+
"items": {
|
|
163
|
+
"type": "string"
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
"validationPlan": {
|
|
167
|
+
"type": "array",
|
|
168
|
+
"minItems": 1,
|
|
169
|
+
"maxItems": 10,
|
|
170
|
+
"items": {
|
|
171
|
+
"type": "object",
|
|
172
|
+
"required": [
|
|
173
|
+
"id",
|
|
174
|
+
"command",
|
|
175
|
+
"purpose",
|
|
176
|
+
"blocking",
|
|
177
|
+
"timeoutSeconds",
|
|
178
|
+
"workingDirectory"
|
|
179
|
+
],
|
|
180
|
+
"properties": {
|
|
181
|
+
"id": {
|
|
182
|
+
"type": "string",
|
|
183
|
+
"minLength": 1
|
|
184
|
+
},
|
|
185
|
+
"command": {
|
|
186
|
+
"type": "array",
|
|
187
|
+
"minItems": 1,
|
|
188
|
+
"items": {
|
|
189
|
+
"type": "string",
|
|
190
|
+
"minLength": 1
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
"purpose": {
|
|
194
|
+
"type": "string",
|
|
195
|
+
"minLength": 1
|
|
196
|
+
},
|
|
197
|
+
"blocking": {
|
|
198
|
+
"type": "boolean"
|
|
199
|
+
},
|
|
200
|
+
"timeoutSeconds": {
|
|
201
|
+
"type": "integer",
|
|
202
|
+
"minimum": 1,
|
|
203
|
+
"maximum": 3600
|
|
204
|
+
},
|
|
205
|
+
"workingDirectory": {
|
|
206
|
+
"type": "string",
|
|
207
|
+
"minLength": 1,
|
|
208
|
+
"description": "Repertoire relatif a la racine du depot. Utiliser '.' pour la racine ou 'app'. Les chemins absolus et '..' sont interdits."
|
|
209
|
+
},
|
|
210
|
+
"approvalReason": {
|
|
211
|
+
"type": "string",
|
|
212
|
+
"minLength": 1
|
|
213
|
+
}
|
|
214
|
+
},
|
|
215
|
+
"additionalProperties": false
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
"additionalProperties": false
|
|
220
|
+
}
|
|
221
|
+
}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"contractId": "KKS-430:standard:prepare:v4",
|
|
4
|
+
"status": "completed",
|
|
5
|
+
"summary": "Préparation faite en lecture seule sur 8.4.1 (HEAD 3ab850c) : chaque point de need.md a été constaté sur le code, et la liste H7 est prête pour arbitrage. ARRÊT DEMANDÉ PAR need.md (H7) : soumettre cette liste à Kelly avant implement.\n\nH7 — six retours de FEEDBACK.md revérifiés :\n- M2 : défaut disparu en substance. Le plafond manque toujours dans validation_policy_guidance() (core/verification.py:98), mais le contrat le porte par expectedOutput.validationPlan.maxItems = 10. Proposition : test de non-régression seul.\n- m1 : présent. « Revue humaine de X validee pour 'review'. Prochaine : done » (commands/adaptive.py:758) ne dit pas que l'activité est complétée. Texte seul : proposé pour ce lot.\n- m2 : disparu. Une entrée evidence aux clés inconnues est refusée (activity_contracts.py:858 ; schéma additionalProperties false). Résidu : « preuve invalide » ne dit pas la forme attendue ; texte seul, à arbitrer.\n- m3 : cause disparue, un plan complété sans validationPlan est refusé dès plan (activity_contracts.py:614). Résidu en deep : motif invalid-preparation-result et détail « prepare-result n'est pas complete » (automatic_evidence.py:548,567). Le détail est proposable ici ; renommer le motif relève de l'arbitrage ou de KKS-540.\n- m4 : présent sur trois points. (1) Le motif auth ignore authenticate, oauth et session expired (agent_failure.py:33) ; le corriger change le classement et le code de sortie 5 en 8 : arbitrage. (2) La reprise agent-failed propose check sans --live (adaptive.py:1790) : texte seul, proposé. (3) check refuse « claude » (check.py:68) et les reprises reprennent le nom passé à run (adaptive.py:1745,1790) : traduire le nom dans le texte est proposable ; faire accepter « claude » par check est une capacité : arbitrage.\n- h1 : présent. Aucune consigne sur les affirmations d'absence dans le contrat preflight-evidence (activity_contracts.py:281-297). Ajout de consigne = capacité : arbitrage.\n\nPérimètre et fichiers :\n- H1 : commands/adaptive.py:1459 (_remaining_risks réunit tous les *-result.json par ordre alphabétique) et core/worklog.py:120 (rollback-check, sinon review, sinon implement). Approche : une fonction unique dans core/worklog.py qui prend le dernier résultat dans l'ordre de state.activities, avec activity_result_file et _read_json(required=False), appelée par les deux.\n- H2 : commands/devflow.md:15-18 et docs/commands-reference.md:5-9. tests/test_cmd_feedback.py:619 exige que « devflow adaptive status ISSUE_ID » reste avant « ## Retours d'usage ».\n- H6, H4 : .specify/memory/constitution.md (en-tête l.3-5, journal l.133, table l.139-144) ; une phrase dans docs/activity-contracts.md:18-21. Aucun code ni test ne lit la version de la constitution.\n- Messages : contract_schemas.py:41-51, activity_contracts.py:555, adaptive.py:1590 et 1731, automatic_evidence.py:1010, adaptive.py:936-954. Les tests qui figent ces textes sont à mettre à jour (test_contract_schemas.py:263, test_legacy_schema.py:24-38, test_cmd_adaptive.py:173,222,4848, test_activity_contracts.py:1098).\n- Documentation : docs/spec-driven.md:5, docs/activity-contracts.md:347 et 56, docs/cli-reference.md:396 (code 1 legacy-schema), 256 (clés de status --json) et 456 (FEEDBACK.md), README.md:33-46, templates/plan-template.md:13-24, limite d'observation dans docs/pipeline.md et docs/activity-contracts.md:237.\n- Tests : tests/conftest.py, test_automatic_evidence.py:1405, test_adaptive_workflow.py, test_legacy_schema.py:196 et 380, test_cmd_adaptive.py, test_adaptive_runner.py.\n- Nettoyage : core/installer.py:24 (clé templates à ajouter), commands/feature.py:41, .gitignore racine, remove_result_template à discard-attempt (adaptive.py:914).\n- Livraison 8.5.0 : pyproject.toml, src/devflow_cli/__init__.py, uv.lock, CHANGELOG.md, docs/releases/8.5.0.md ; suppression de FEEDBACK.md après arbitrage.\n\nÉcarts entre need.md et le code :\n- État schéma 6 : seule une base absente ou nulle reçoit le message « devflow 7.x » (adaptive_workflow.py:203-210). Une base corrompue part en invalid-state.\n- Double « adaptive status » : présent dans le code, mais le cas non rouvrable est inatteignable par le runner réel ; le test devra forcer l'issue.\n- Le .gitignore écrit par devflow feature ne contient que *.raw.txt : aucun verrou n'est couvert aujourd'hui, ni pour les nouvelles features ni par le .gitignore racine.\n- test_real_safe_command_generates_evidence lance « pytest -q » nu, pas « python ». Un chemin absolu d'interpréteur est refusé par la politique : le test doit fournir un pytest par le PATH.\n- Le contrôle « état completed sans toutes ses preuves » de read_adaptive_state est masqué par celui des gates : seuls les trois autres, et les deux premières clauses de celui-ci, sont testables par un fichier d'état.\n- Console() est figée à l'import (utils/console.py:6) : la neutralisation de la couleur doit agir avant l'import de devflow_cli, pas par monkeypatch.\n\nAucun test n'a été lancé pendant la préparation. Plan détaillé écrit hors dépôt : ~/.claude/plans/execute-l-activite-devflow-definie-atomic-moonbeam.md.",
|
|
6
|
+
"changedFiles": [],
|
|
7
|
+
"checks": [
|
|
8
|
+
{
|
|
9
|
+
"id": "arbre-suivi-intact",
|
|
10
|
+
"command": "git status --porcelain --untracked-files=no",
|
|
11
|
+
"exitCode": 0,
|
|
12
|
+
"status": "passed"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"evidence": [],
|
|
16
|
+
"remainingRisks": [
|
|
17
|
+
"H7 : need.md impose de soumettre la liste des six retours de FEEDBACK.md à Kelly avant implement ; ne pas enchaîner sans sa décision, ni supprimer FEEDBACK.md avant.",
|
|
18
|
+
"Arbitrage ou KKS-540 : m4 point 1 (motif auth, change le classement agent-failed en agent-unavailable et le code de sortie 5 en 8), m4 « check accepte claude » (capacité), h1 (consigne ajoutée au contrat preflight-evidence), m3 renommage du motif invalid-preparation-result, m2 résidu du message « preuve invalide ».",
|
|
19
|
+
"Les validations color-suite et width-suite utilisent l'exécutable env, hors liste : elles exigent devflow adaptive approve-command avant verify. Sans approbation, la suite sous FORCE_COLOR=1 et COLUMNS=120 n'est pas prouvée par le parcours.",
|
|
20
|
+
"Sous FORCE_COLOR=1, de nombreuses assertions de texte casseraient aujourd'hui (surlignage Rich des nombres, quotes et parenthèses). Rich garde le gras même avec NO_COLOR ; la neutralisation doit retirer FORCE_COLOR ou remplacer la console avant l'import. Typer lit aussi FORCE_COLOR à son import.",
|
|
21
|
+
"Règles d'ignorance des verrous : .specify/specs/.feature-lock est aujourd'hui observé comme fichier non suivi ; une fois ignoré, il ne le sera plus. Effet attendu nul sur ce parcours (les fichiers de la base sont comparés par empreinte sur le disque, activity_base.py:245-252), mais c'est un changement de ce qui est observé hors dossier de feature : à confirmer comme acceptable, sinon à reporter dans KKS-540.",
|
|
22
|
+
"security-or-data-check : une validation protégée non bloquante qui échoue apparaît dans le détail du refus mais pas dans outcome.failures (automatic_evidence.py:851, filtre sur blocking). Le test demandé fige le comportement actuel ; l'incohérence est à reporter dans KKS-540.",
|
|
23
|
+
"diff-inspection après réouverture d'implement : par lecture, un fichier modifié avant ou pendant la relance est listé (implementBase réutilisée) ; un fichier modifié après la relance et avant verify ne l'est pas. Non vérifié par exécution ; si le test le confirme, à signaler pour KKS-540 sans correction.",
|
|
24
|
+
"Non couvert par le plan de validation : ./tests/run-tests.sh et scripts/check_release.py (chemin d'exécutable et python hors politique), la concordance de uv.lock, l'absence de FEEDBACK.md (une absence ne s'exprime pas par un code 0). À lancer ou constater par le superviseur.",
|
|
25
|
+
"docs/cli-reference.md ne nomme aucune clé de adaptive status --json : la mention de omissions et guardrails demandée par need.md s'écrit comme une note d'historique, sans table de clés existante à corriger.",
|
|
26
|
+
"Constats annexes hors need.md, non traités : templates/constitution-template.md (« Gate 3 — Tests d'abord », table sans Échéance, renvoi à /devflow.plan), docs/activity-contracts.md:529 (« workflow-state.json v2 »), docstring core/feedback.py:445 qui cite FEEDBACK.md."
|
|
27
|
+
],
|
|
28
|
+
"blockers": [],
|
|
29
|
+
"validationPlan": [
|
|
30
|
+
{
|
|
31
|
+
"id": "targeted-tests",
|
|
32
|
+
"command": [
|
|
33
|
+
"uv",
|
|
34
|
+
"run",
|
|
35
|
+
"pytest",
|
|
36
|
+
"-q",
|
|
37
|
+
"tests/test_worklog.py",
|
|
38
|
+
"tests/test_cmd_adaptive.py",
|
|
39
|
+
"tests/test_adaptive_workflow.py",
|
|
40
|
+
"tests/test_legacy_schema.py",
|
|
41
|
+
"tests/test_contract_schemas.py",
|
|
42
|
+
"tests/test_activity_contracts.py",
|
|
43
|
+
"tests/test_automatic_evidence.py",
|
|
44
|
+
"tests/test_adaptive_runner.py",
|
|
45
|
+
"tests/test_remediation.py",
|
|
46
|
+
"tests/test_installer.py",
|
|
47
|
+
"tests/test_cmd_upgrade.py",
|
|
48
|
+
"tests/test_cmd_feature.py",
|
|
49
|
+
"tests/test_cmd_feedback.py"
|
|
50
|
+
],
|
|
51
|
+
"purpose": "Tests ciblés des fichiers touchés : risques restants, messages, verrous de l'état, nettoyage, façade",
|
|
52
|
+
"blocking": true,
|
|
53
|
+
"timeoutSeconds": 1800,
|
|
54
|
+
"workingDirectory": "."
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"id": "full-suite",
|
|
58
|
+
"command": [
|
|
59
|
+
"uv",
|
|
60
|
+
"run",
|
|
61
|
+
"pytest",
|
|
62
|
+
"-q"
|
|
63
|
+
],
|
|
64
|
+
"purpose": "Suite complète verte en l'état",
|
|
65
|
+
"blocking": true,
|
|
66
|
+
"timeoutSeconds": 3000,
|
|
67
|
+
"workingDirectory": "."
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"id": "docs-sync",
|
|
71
|
+
"command": [
|
|
72
|
+
"uv",
|
|
73
|
+
"run",
|
|
74
|
+
"devflow",
|
|
75
|
+
"docs-sync",
|
|
76
|
+
"--check"
|
|
77
|
+
],
|
|
78
|
+
"purpose": "Documentation générée à jour (CLAUDE.md, docs/pipeline.md, référence du pipeline)",
|
|
79
|
+
"blocking": true,
|
|
80
|
+
"timeoutSeconds": 300,
|
|
81
|
+
"workingDirectory": "."
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"id": "color-suite",
|
|
85
|
+
"command": [
|
|
86
|
+
"env",
|
|
87
|
+
"FORCE_COLOR=1",
|
|
88
|
+
"uv",
|
|
89
|
+
"run",
|
|
90
|
+
"pytest",
|
|
91
|
+
"-q"
|
|
92
|
+
],
|
|
93
|
+
"purpose": "Suite complète verte avec la couleur forcée dans l'environnement",
|
|
94
|
+
"blocking": true,
|
|
95
|
+
"timeoutSeconds": 3000,
|
|
96
|
+
"workingDirectory": ".",
|
|
97
|
+
"approvalReason": "need.md exige la suite verte avec FORCE_COLOR=1 ; une variable d'environnement ne peut être posée sans shell que par l'exécutable env, hors liste."
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"id": "width-suite",
|
|
101
|
+
"command": [
|
|
102
|
+
"env",
|
|
103
|
+
"COLUMNS=120",
|
|
104
|
+
"uv",
|
|
105
|
+
"run",
|
|
106
|
+
"pytest",
|
|
107
|
+
"-q"
|
|
108
|
+
],
|
|
109
|
+
"purpose": "Suite complète verte avec une largeur de terminal de 120 colonnes",
|
|
110
|
+
"blocking": true,
|
|
111
|
+
"timeoutSeconds": 3000,
|
|
112
|
+
"workingDirectory": ".",
|
|
113
|
+
"approvalReason": "need.md exige la suite verte avec COLUMNS=120 ; une variable d'environnement ne peut être posée sans shell que par l'exécutable env, hors liste."
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"id": "constitution-version",
|
|
117
|
+
"command": [
|
|
118
|
+
"rg",
|
|
119
|
+
"-n",
|
|
120
|
+
"-F",
|
|
121
|
+
"**Version** : 2.0.1",
|
|
122
|
+
".specify/memory/constitution.md"
|
|
123
|
+
],
|
|
124
|
+
"purpose": "La constitution porte l'amendement 2.0.1",
|
|
125
|
+
"blocking": true,
|
|
126
|
+
"timeoutSeconds": 60,
|
|
127
|
+
"workingDirectory": "."
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"id": "release-version",
|
|
131
|
+
"command": [
|
|
132
|
+
"rg",
|
|
133
|
+
"-n",
|
|
134
|
+
"-F",
|
|
135
|
+
"version = \"8.5.0\"",
|
|
136
|
+
"pyproject.toml"
|
|
137
|
+
],
|
|
138
|
+
"purpose": "pyproject.toml est en 8.5.0",
|
|
139
|
+
"blocking": true,
|
|
140
|
+
"timeoutSeconds": 60,
|
|
141
|
+
"workingDirectory": "."
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"id": "release-notes",
|
|
145
|
+
"command": [
|
|
146
|
+
"rg",
|
|
147
|
+
"--files",
|
|
148
|
+
"-g",
|
|
149
|
+
"8.5.0.md",
|
|
150
|
+
"docs/releases"
|
|
151
|
+
],
|
|
152
|
+
"purpose": "Les notes de version 8.5.0 existent",
|
|
153
|
+
"blocking": true,
|
|
154
|
+
"timeoutSeconds": 60,
|
|
155
|
+
"workingDirectory": "."
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"id": "whitespace",
|
|
159
|
+
"command": [
|
|
160
|
+
"git",
|
|
161
|
+
"diff",
|
|
162
|
+
"--check"
|
|
163
|
+
],
|
|
164
|
+
"purpose": "Aucune erreur d'espacement dans le lot",
|
|
165
|
+
"blocking": true,
|
|
166
|
+
"timeoutSeconds": 60,
|
|
167
|
+
"workingDirectory": "."
|
|
168
|
+
}
|
|
169
|
+
],
|
|
170
|
+
"observation": {
|
|
171
|
+
"baseRecordedAt": "2026-10-13T21:09:59Z",
|
|
172
|
+
"baseHead": "3ab850c94eba39062d949c5b1853efb03a993662",
|
|
173
|
+
"observedAt": "2026-10-13T21:20:49Z",
|
|
174
|
+
"head": "3ab850c94eba39062d949c5b1853efb03a993662"
|
|
175
|
+
}
|
|
176
|
+
}
|