takt 0.48.0 → 0.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -0
- package/builtins/en/config.yaml +6 -0
- package/builtins/en/facets/instructions/ai-antipattern-review.md +5 -0
- package/builtins/en/facets/instructions/exec-loop-monitor.md +15 -0
- package/builtins/en/facets/instructions/exec-replan.md +5 -0
- package/builtins/en/facets/instructions/exec-review.md +10 -0
- package/builtins/en/facets/instructions/exec-worker.md +5 -0
- package/builtins/en/facets/instructions/findings-manager.md +6 -2
- package/builtins/en/facets/instructions/loop-monitor-fix-replan.md +21 -0
- package/builtins/en/facets/instructions/loop-monitor-replan.md +10 -0
- package/builtins/en/facets/instructions/plan-maintenance.md +10 -7
- package/builtins/en/facets/instructions/plan.md +17 -8
- package/builtins/en/facets/instructions/review-arch.md +5 -0
- package/builtins/en/facets/instructions/review-coding.md +15 -6
- package/builtins/en/facets/instructions/review-cqrs-es.md +9 -0
- package/builtins/en/facets/instructions/review-implementation-semantics.md +18 -0
- package/builtins/en/facets/instructions/review-merge-readiness.md +14 -0
- package/builtins/en/facets/instructions/supervise-maintenance.md +2 -2
- package/builtins/en/facets/instructions/supervise.md +8 -3
- package/builtins/en/facets/instructions/write-tests-first.md +23 -3
- package/builtins/en/facets/knowledge/architecture.md +25 -0
- package/builtins/en/facets/knowledge/cqrs-es.md +718 -235
- package/builtins/en/facets/knowledge/implementation-semantics.md +104 -0
- package/builtins/en/facets/knowledge/takt.md +26 -2
- package/builtins/en/facets/knowledge/unit-testing.md +14 -0
- package/builtins/en/facets/output-contracts/ai-antipattern-review.md +11 -1
- package/builtins/en/facets/output-contracts/architecture-review.md +6 -1
- package/builtins/en/facets/output-contracts/coding-review.md +11 -1
- package/builtins/en/facets/output-contracts/exec-review-result.md +13 -0
- package/builtins/en/facets/output-contracts/findings-manager.md +14 -0
- package/builtins/en/facets/output-contracts/implementation-semantics-review-finding-contract.md +28 -0
- package/builtins/en/facets/output-contracts/implementation-semantics-review.md +50 -0
- package/builtins/en/facets/output-contracts/{pure-review-finding-contract.md → merge-readiness-review-finding-contract.md} +14 -8
- package/builtins/en/facets/output-contracts/{pure-review.md → merge-readiness-review.md} +17 -11
- package/builtins/en/facets/output-contracts/supervisor-validation.md +6 -2
- package/builtins/en/facets/output-contracts/test-report.md +25 -0
- package/builtins/en/facets/personas/exec-assistant.md +3 -0
- package/builtins/en/facets/personas/exec-worker.md +3 -0
- package/builtins/en/facets/personas/implementation-semantics-reviewer.md +27 -0
- package/builtins/en/facets/personas/merge-readiness-reviewer.md +28 -0
- package/builtins/en/facets/personas/supervisor.md +1 -1
- package/builtins/en/facets/policies/ai-antipattern.md +18 -0
- package/builtins/en/facets/policies/existing-system-respect.md +13 -0
- package/builtins/en/facets/policies/review.md +17 -0
- package/builtins/en/facets/policies/testing.md +14 -0
- package/builtins/en/workflow-categories.yaml +13 -1
- package/builtins/en/workflows/audit-architecture-backend.yaml +1 -0
- package/builtins/en/workflows/audit-architecture-dual.yaml +1 -0
- package/builtins/en/workflows/audit-architecture-frontend.yaml +1 -0
- package/builtins/en/workflows/audit-architecture.yaml +1 -0
- package/builtins/en/workflows/audit-e2e.yaml +1 -0
- package/builtins/en/workflows/audit-security.yaml +1 -0
- package/builtins/en/workflows/audit-unit.yaml +1 -0
- package/builtins/en/workflows/backend-cqrs-for-local-llm.yaml +288 -0
- package/builtins/en/workflows/backend-cqrs-mini.yaml +1 -0
- package/builtins/en/workflows/backend-cqrs.yaml +28 -84
- package/builtins/en/workflows/backend-for-local-llm.yaml +284 -0
- package/builtins/en/workflows/backend-maintenance.yaml +32 -89
- package/builtins/en/workflows/backend-mini.yaml +1 -0
- package/builtins/en/workflows/backend.yaml +25 -83
- package/builtins/en/workflows/{takt-default-with-fc.yaml → cli.yaml} +16 -4
- package/builtins/en/workflows/deep-research.yaml +1 -0
- package/builtins/en/workflows/default-high.yaml +3 -32
- package/builtins/en/workflows/default-peer-review.yaml +16 -52
- package/builtins/en/workflows/default.yaml +2 -1
- package/builtins/en/workflows/draft.yaml +1 -1
- package/builtins/en/workflows/dual-cqrs-mini.yaml +1 -0
- package/builtins/en/workflows/dual-cqrs.yaml +28 -87
- package/builtins/en/workflows/dual-for-local-llm.yaml +312 -0
- package/builtins/en/workflows/dual-mini.yaml +1 -0
- package/builtins/en/workflows/dual.yaml +29 -57
- package/builtins/en/workflows/frontend-for-local-llm.yaml +289 -0
- package/builtins/en/workflows/frontend-maintenance.yaml +34 -91
- package/builtins/en/workflows/frontend-mini.yaml +1 -0
- package/builtins/en/workflows/frontend.yaml +27 -85
- package/builtins/en/workflows/merge-readiness-dual-final-gate.yaml +92 -0
- package/builtins/en/workflows/merge-readiness-final-gate.yaml +79 -0
- package/builtins/en/workflows/{peer-review-with-fc.yaml → peer-review-for-local-llm.yaml} +49 -38
- package/builtins/en/workflows/peer-review.yaml +26 -21
- package/builtins/en/workflows/research.yaml +1 -0
- package/builtins/en/workflows/review-backend-cqrs.yaml +63 -35
- package/builtins/en/workflows/review-backend.yaml +63 -35
- package/builtins/en/workflows/review-default.yaml +138 -107
- package/builtins/en/workflows/review-dual-cqrs.yaml +63 -35
- package/builtins/en/workflows/review-dual.yaml +63 -35
- package/builtins/en/workflows/review-fix-backend-cqrs.yaml +27 -87
- package/builtins/en/workflows/review-fix-backend.yaml +25 -86
- package/builtins/en/workflows/review-fix-default.yaml +17 -87
- package/builtins/en/workflows/review-fix-dual-cqrs.yaml +29 -90
- package/builtins/en/workflows/review-fix-dual.yaml +27 -89
- package/builtins/en/workflows/review-fix-frontend.yaml +25 -87
- package/builtins/en/workflows/review-fix-takt-default.yaml +67 -362
- package/builtins/en/workflows/review-frontend.yaml +63 -35
- package/builtins/en/workflows/review-takt-default.yaml +140 -109
- package/builtins/en/workflows/takt-default-for-local-llm.yaml +283 -0
- package/builtins/en/workflows/takt-default-refresh-all.yaml +20 -58
- package/builtins/en/workflows/takt-default-refresh-fast.yaml +19 -56
- package/builtins/en/workflows/takt-default.yaml +3 -25
- package/builtins/en/workflows/terraform.yaml +81 -44
- package/builtins/exec/presets/backend.yaml +31 -0
- package/builtins/exec/presets/dual.yaml +34 -0
- package/builtins/exec/presets/frontend.yaml +31 -0
- package/builtins/exec/presets/research.yaml +45 -0
- package/builtins/ja/config.yaml +6 -0
- package/builtins/ja/facets/instructions/ai-antipattern-review.md +5 -0
- package/builtins/ja/facets/instructions/exec-loop-monitor.md +15 -0
- package/builtins/ja/facets/instructions/exec-replan.md +5 -0
- package/builtins/ja/facets/instructions/exec-review.md +10 -0
- package/builtins/ja/facets/instructions/exec-worker.md +5 -0
- package/builtins/ja/facets/instructions/findings-manager.md +6 -2
- package/builtins/ja/facets/instructions/implement-maintenance.md +4 -15
- package/builtins/ja/facets/instructions/implement.md +2 -14
- package/builtins/ja/facets/instructions/loop-monitor-fix-replan.md +21 -0
- package/builtins/ja/facets/instructions/loop-monitor-replan.md +10 -0
- package/builtins/ja/facets/instructions/plan-maintenance.md +10 -7
- package/builtins/ja/facets/instructions/plan.md +9 -6
- package/builtins/ja/facets/instructions/review-arch.md +5 -0
- package/builtins/ja/facets/instructions/review-coding.md +15 -6
- package/builtins/ja/facets/instructions/review-cqrs-es.md +9 -0
- package/builtins/ja/facets/instructions/review-implementation-semantics.md +17 -0
- package/builtins/ja/facets/instructions/review-merge-readiness.md +14 -0
- package/builtins/ja/facets/instructions/supervise-maintenance.md +2 -2
- package/builtins/ja/facets/instructions/supervise.md +8 -3
- package/builtins/ja/facets/instructions/write-tests-first.md +23 -3
- package/builtins/ja/facets/knowledge/architecture.md +25 -0
- package/builtins/ja/facets/knowledge/cqrs-es.md +211 -16
- package/builtins/ja/facets/knowledge/implementation-semantics.md +104 -0
- package/builtins/ja/facets/knowledge/takt.md +26 -2
- package/builtins/ja/facets/knowledge/unit-testing.md +14 -0
- package/builtins/ja/facets/output-contracts/ai-antipattern-review.md +11 -1
- package/builtins/ja/facets/output-contracts/architecture-review.md +6 -1
- package/builtins/ja/facets/output-contracts/coding-review.md +11 -1
- package/builtins/ja/facets/output-contracts/exec-review-result.md +13 -0
- package/builtins/ja/facets/output-contracts/findings-manager.md +14 -0
- package/builtins/ja/facets/output-contracts/implementation-semantics-review-finding-contract.md +24 -0
- package/builtins/ja/facets/output-contracts/implementation-semantics-review.md +50 -0
- package/builtins/ja/facets/output-contracts/{pure-review-finding-contract.md → merge-readiness-review-finding-contract.md} +14 -8
- package/builtins/ja/facets/output-contracts/{pure-review.md → merge-readiness-review.md} +17 -11
- package/builtins/ja/facets/output-contracts/supervisor-validation.md +6 -2
- package/builtins/ja/facets/output-contracts/test-report.md +25 -0
- package/builtins/ja/facets/partials/instructions/implement-common.md +13 -0
- package/builtins/ja/facets/personas/exec-assistant.md +3 -0
- package/builtins/ja/facets/personas/exec-worker.md +3 -0
- package/builtins/ja/facets/personas/implementation-semantics-reviewer.md +27 -0
- package/builtins/ja/facets/personas/merge-readiness-reviewer.md +28 -0
- package/builtins/ja/facets/personas/supervisor.md +1 -1
- package/builtins/ja/facets/policies/ai-antipattern.md +18 -0
- package/builtins/ja/facets/policies/coding.md +1 -0
- package/builtins/ja/facets/policies/existing-system-respect.md +13 -0
- package/builtins/ja/facets/policies/review.md +18 -0
- package/builtins/ja/facets/policies/testing.md +19 -2
- package/builtins/ja/workflow-categories.yaml +13 -1
- package/builtins/ja/workflows/audit-architecture-backend.yaml +1 -0
- package/builtins/ja/workflows/audit-architecture-dual.yaml +1 -0
- package/builtins/ja/workflows/audit-architecture-frontend.yaml +1 -0
- package/builtins/ja/workflows/audit-architecture.yaml +1 -0
- package/builtins/ja/workflows/audit-e2e.yaml +1 -0
- package/builtins/ja/workflows/audit-security.yaml +1 -0
- package/builtins/ja/workflows/audit-unit.yaml +1 -0
- package/builtins/ja/workflows/backend-cqrs-for-local-llm.yaml +287 -0
- package/builtins/ja/workflows/backend-cqrs-mini.yaml +1 -0
- package/builtins/ja/workflows/backend-cqrs.yaml +28 -84
- package/builtins/ja/workflows/backend-for-local-llm.yaml +283 -0
- package/builtins/ja/workflows/backend-maintenance.yaml +32 -89
- package/builtins/ja/workflows/backend-mini.yaml +1 -0
- package/builtins/ja/workflows/backend.yaml +25 -83
- package/builtins/ja/workflows/{takt-default-with-fc.yaml → cli.yaml} +16 -4
- package/builtins/ja/workflows/deep-research.yaml +1 -0
- package/builtins/ja/workflows/default-high.yaml +3 -32
- package/builtins/ja/workflows/default-peer-review.yaml +16 -52
- package/builtins/ja/workflows/default.yaml +2 -1
- package/builtins/ja/workflows/draft.yaml +1 -1
- package/builtins/ja/workflows/dual-cqrs-mini.yaml +1 -0
- package/builtins/ja/workflows/dual-cqrs.yaml +28 -87
- package/builtins/ja/workflows/dual-for-local-llm.yaml +311 -0
- package/builtins/ja/workflows/dual-mini.yaml +1 -0
- package/builtins/ja/workflows/dual.yaml +29 -57
- package/builtins/ja/workflows/frontend-for-local-llm.yaml +288 -0
- package/builtins/ja/workflows/frontend-maintenance.yaml +34 -91
- package/builtins/ja/workflows/frontend-mini.yaml +1 -0
- package/builtins/ja/workflows/frontend.yaml +27 -85
- package/builtins/ja/workflows/merge-readiness-dual-final-gate.yaml +92 -0
- package/builtins/ja/workflows/merge-readiness-final-gate.yaml +79 -0
- package/builtins/ja/workflows/{peer-review-with-fc.yaml → peer-review-for-local-llm.yaml} +49 -38
- package/builtins/ja/workflows/peer-review.yaml +26 -21
- package/builtins/ja/workflows/research.yaml +1 -0
- package/builtins/ja/workflows/review-backend-cqrs.yaml +63 -35
- package/builtins/ja/workflows/review-backend.yaml +63 -35
- package/builtins/ja/workflows/review-default.yaml +111 -79
- package/builtins/ja/workflows/review-dual-cqrs.yaml +63 -35
- package/builtins/ja/workflows/review-dual.yaml +63 -35
- package/builtins/ja/workflows/review-fix-backend-cqrs.yaml +27 -87
- package/builtins/ja/workflows/review-fix-backend.yaml +25 -86
- package/builtins/ja/workflows/review-fix-default.yaml +17 -87
- package/builtins/ja/workflows/review-fix-dual-cqrs.yaml +29 -90
- package/builtins/ja/workflows/review-fix-dual.yaml +27 -89
- package/builtins/ja/workflows/review-fix-frontend.yaml +25 -87
- package/builtins/ja/workflows/review-fix-takt-default.yaml +67 -362
- package/builtins/ja/workflows/review-frontend.yaml +63 -35
- package/builtins/ja/workflows/review-takt-default.yaml +112 -80
- package/builtins/ja/workflows/takt-default-for-local-llm.yaml +282 -0
- package/builtins/ja/workflows/takt-default-refresh-all.yaml +20 -58
- package/builtins/ja/workflows/takt-default-refresh-fast.yaml +19 -56
- package/builtins/ja/workflows/takt-default.yaml +3 -25
- package/builtins/ja/workflows/terraform.yaml +81 -44
- package/builtins/skill/SKILL.md +1 -1
- package/builtins/skill/references/engine.md +1 -15
- package/builtins/skill-codex/SKILL.md +1 -1
- package/builtins/skill-codex/references/engine.md +0 -2
- package/dist/agents/decompose-task-usecase.d.ts +1 -1
- package/dist/agents/decompose-task-usecase.d.ts.map +1 -1
- package/dist/agents/decompose-task-usecase.js +2 -4
- package/dist/agents/decompose-task-usecase.js.map +1 -1
- package/dist/agents/judge-utils.d.ts.map +1 -1
- package/dist/agents/judge-utils.js +4 -3
- package/dist/agents/judge-utils.js.map +1 -1
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +7 -6
- package/dist/agents/runner.js.map +1 -1
- package/dist/agents/structured-caller/prompt-based-structured-caller.d.ts.map +1 -1
- package/dist/agents/structured-caller/prompt-based-structured-caller.js +2 -3
- package/dist/agents/structured-caller/prompt-based-structured-caller.js.map +1 -1
- package/dist/agents/structured-caller/shared.d.ts.map +1 -1
- package/dist/agents/structured-caller/shared.js +2 -9
- package/dist/agents/structured-caller/shared.js.map +1 -1
- package/dist/app/acp/agent.d.ts +28 -0
- package/dist/app/acp/agent.d.ts.map +1 -0
- package/dist/app/acp/agent.js +279 -0
- package/dist/app/acp/agent.js.map +1 -0
- package/dist/app/acp/confirmationBridge.d.ts +5 -0
- package/dist/app/acp/confirmationBridge.d.ts.map +1 -0
- package/dist/app/acp/confirmationBridge.js +194 -0
- package/dist/app/acp/confirmationBridge.js.map +1 -0
- package/dist/app/acp/conversationFactory.d.ts +4 -0
- package/dist/app/acp/conversationFactory.d.ts.map +1 -0
- package/dist/app/acp/conversationFactory.js +33 -0
- package/dist/app/acp/conversationFactory.js.map +1 -0
- package/dist/app/acp/enqueue.d.ts +33 -0
- package/dist/app/acp/enqueue.d.ts.map +1 -0
- package/dist/app/acp/enqueue.js +45 -0
- package/dist/app/acp/enqueue.js.map +1 -0
- package/dist/app/acp/index.d.ts +7 -0
- package/dist/app/acp/index.d.ts.map +1 -0
- package/dist/app/acp/index.js +125 -0
- package/dist/app/acp/index.js.map +1 -0
- package/dist/app/acp/intent.d.ts +10 -0
- package/dist/app/acp/intent.d.ts.map +1 -0
- package/dist/app/acp/intent.js +210 -0
- package/dist/app/acp/intent.js.map +1 -0
- package/dist/app/acp/mcpServers.d.ts +4 -0
- package/dist/app/acp/mcpServers.d.ts.map +1 -0
- package/dist/app/acp/mcpServers.js +51 -0
- package/dist/app/acp/mcpServers.js.map +1 -0
- package/dist/app/acp/promptContent.d.ts +3 -0
- package/dist/app/acp/promptContent.d.ts.map +1 -0
- package/dist/app/acp/promptContent.js +23 -0
- package/dist/app/acp/promptContent.js.map +1 -0
- package/dist/app/acp/sessionStore.d.ts +19 -0
- package/dist/app/acp/sessionStore.d.ts.map +1 -0
- package/dist/app/acp/sessionStore.js +50 -0
- package/dist/app/acp/sessionStore.js.map +1 -0
- package/dist/app/acp/sessionUpdates.d.ts +8 -0
- package/dist/app/acp/sessionUpdates.d.ts.map +1 -0
- package/dist/app/acp/sessionUpdates.js +108 -0
- package/dist/app/acp/sessionUpdates.js.map +1 -0
- package/dist/app/acp/taskContext.d.ts +17 -0
- package/dist/app/acp/taskContext.d.ts.map +1 -0
- package/dist/app/acp/taskContext.js +81 -0
- package/dist/app/acp/taskContext.js.map +1 -0
- package/dist/app/acp/types.d.ts +33 -0
- package/dist/app/acp/types.d.ts.map +1 -0
- package/dist/app/acp/types.js +2 -0
- package/dist/app/acp/types.js.map +1 -0
- package/dist/app/cli/commands.js +13 -0
- package/dist/app/cli/commands.js.map +1 -1
- package/dist/app/cli/program.d.ts.map +1 -1
- package/dist/app/cli/program.js +2 -3
- package/dist/app/cli/program.js.map +1 -1
- package/dist/app/mcp/index.d.ts +3 -0
- package/dist/app/mcp/index.d.ts.map +1 -0
- package/dist/app/mcp/index.js +16 -0
- package/dist/app/mcp/index.js.map +1 -0
- package/dist/app/mcp/server.d.ts +2 -0
- package/dist/app/mcp/server.d.ts.map +1 -0
- package/dist/app/mcp/server.js +2 -0
- package/dist/app/mcp/server.js.map +1 -0
- package/dist/core/config/provider-resolution.d.ts +1 -0
- package/dist/core/config/provider-resolution.d.ts.map +1 -1
- package/dist/core/config/provider-resolution.js +19 -0
- package/dist/core/config/provider-resolution.js.map +1 -1
- package/dist/core/models/finding-schemas.d.ts +129 -10
- package/dist/core/models/finding-schemas.d.ts.map +1 -1
- package/dist/core/models/finding-schemas.js +79 -9
- package/dist/core/models/finding-schemas.js.map +1 -1
- package/dist/core/models/finding-types.d.ts +39 -2
- package/dist/core/models/finding-types.d.ts.map +1 -1
- package/dist/core/models/finding-types.js +3 -2
- package/dist/core/models/finding-types.js.map +1 -1
- package/dist/core/models/workflow-condition-expression.d.ts +17 -0
- package/dist/core/models/workflow-condition-expression.d.ts.map +1 -1
- package/dist/core/models/workflow-condition-expression.js +85 -2
- package/dist/core/models/workflow-condition-expression.js.map +1 -1
- package/dist/core/models/workflow-schemas.d.ts +222 -22
- package/dist/core/models/workflow-schemas.d.ts.map +1 -1
- package/dist/core/models/workflow-schemas.js +38 -4
- package/dist/core/models/workflow-schemas.js.map +1 -1
- package/dist/core/models/workflow-types.d.ts +14 -0
- package/dist/core/models/workflow-types.d.ts.map +1 -1
- package/dist/core/runtime/runtime-environment.d.ts.map +1 -1
- package/dist/core/runtime/runtime-environment.js +19 -0
- package/dist/core/runtime/runtime-environment.js.map +1 -1
- package/dist/core/workflow/engine/LoopMonitorJudgeRunner.d.ts +2 -2
- package/dist/core/workflow/engine/LoopMonitorJudgeRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/LoopMonitorJudgeRunner.js +8 -7
- package/dist/core/workflow/engine/LoopMonitorJudgeRunner.js.map +1 -1
- package/dist/core/workflow/engine/OptionsBuilder.d.ts +15 -5
- package/dist/core/workflow/engine/OptionsBuilder.d.ts.map +1 -1
- package/dist/core/workflow/engine/OptionsBuilder.js +93 -16
- package/dist/core/workflow/engine/OptionsBuilder.js.map +1 -1
- package/dist/core/workflow/engine/ParallelRunner.d.ts +2 -0
- package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/ParallelRunner.js +131 -23
- package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
- package/dist/core/workflow/engine/StepExecutor.d.ts +10 -0
- package/dist/core/workflow/engine/StepExecutor.d.ts.map +1 -1
- package/dist/core/workflow/engine/StepExecutor.js +90 -38
- package/dist/core/workflow/engine/StepExecutor.js.map +1 -1
- package/dist/core/workflow/engine/TeamLeaderRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/TeamLeaderRunner.js +3 -0
- package/dist/core/workflow/engine/TeamLeaderRunner.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngine.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngine.js +8 -3
- package/dist/core/workflow/engine/WorkflowEngine.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngineSetup.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngineSetup.js +5 -3
- package/dist/core/workflow/engine/WorkflowEngineSetup.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowRunLoop.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowRunLoop.js +31 -0
- package/dist/core/workflow/engine/WorkflowRunLoop.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowValidator.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowValidator.js +25 -12
- package/dist/core/workflow/engine/WorkflowValidator.js.map +1 -1
- package/dist/core/workflow/engine/engine-provider-options.d.ts +2 -1
- package/dist/core/workflow/engine/engine-provider-options.d.ts.map +1 -1
- package/dist/core/workflow/engine/engine-provider-options.js +30 -6
- package/dist/core/workflow/engine/engine-provider-options.js.map +1 -1
- package/dist/core/workflow/engine/team-leader-part-runner.d.ts.map +1 -1
- package/dist/core/workflow/engine/team-leader-part-runner.js +3 -1
- package/dist/core/workflow/engine/team-leader-part-runner.js.map +1 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.d.ts +0 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.js +22 -34
- package/dist/core/workflow/evaluation/RuleEvaluator.js.map +1 -1
- package/dist/core/workflow/evaluation/rule-utils.d.ts +33 -1
- package/dist/core/workflow/evaluation/rule-utils.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/rule-utils.js +77 -5
- package/dist/core/workflow/evaluation/rule-utils.js.map +1 -1
- package/dist/core/workflow/evaluation/when-evaluator.d.ts +1 -0
- package/dist/core/workflow/evaluation/when-evaluator.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/when-evaluator.js +18 -40
- package/dist/core/workflow/evaluation/when-evaluator.js.map +1 -1
- package/dist/core/workflow/findings/context.d.ts +4 -0
- package/dist/core/workflow/findings/context.d.ts.map +1 -1
- package/dist/core/workflow/findings/context.js +27 -0
- package/dist/core/workflow/findings/context.js.map +1 -1
- package/dist/core/workflow/findings/manager-output-validation.d.ts +2 -0
- package/dist/core/workflow/findings/manager-output-validation.d.ts.map +1 -1
- package/dist/core/workflow/findings/manager-output-validation.js +145 -8
- package/dist/core/workflow/findings/manager-output-validation.js.map +1 -1
- package/dist/core/workflow/findings/manager-runner.d.ts +13 -3
- package/dist/core/workflow/findings/manager-runner.d.ts.map +1 -1
- package/dist/core/workflow/findings/manager-runner.js +28 -27
- package/dist/core/workflow/findings/manager-runner.js.map +1 -1
- package/dist/core/workflow/findings/reconciler.d.ts +1 -0
- package/dist/core/workflow/findings/reconciler.d.ts.map +1 -1
- package/dist/core/workflow/findings/reconciler.js +90 -4
- package/dist/core/workflow/findings/reconciler.js.map +1 -1
- package/dist/core/workflow/instruction/InstructionBuilder.d.ts.map +1 -1
- package/dist/core/workflow/instruction/InstructionBuilder.js +18 -2
- package/dist/core/workflow/instruction/InstructionBuilder.js.map +1 -1
- package/dist/core/workflow/instruction/instruction-context.d.ts +4 -0
- package/dist/core/workflow/instruction/instruction-context.d.ts.map +1 -1
- package/dist/core/workflow/instruction/instruction-context.js.map +1 -1
- package/dist/core/workflow/instruction/status-rules.d.ts.map +1 -1
- package/dist/core/workflow/instruction/status-rules.js +7 -2
- package/dist/core/workflow/instruction/status-rules.js.map +1 -1
- package/dist/core/workflow/phase-runner.d.ts +17 -10
- package/dist/core/workflow/phase-runner.d.ts.map +1 -1
- package/dist/core/workflow/phase-runner.js +1 -1
- package/dist/core/workflow/phase-runner.js.map +1 -1
- package/dist/core/workflow/provider-model-requirements.d.ts +6 -0
- package/dist/core/workflow/provider-model-requirements.d.ts.map +1 -0
- package/dist/core/workflow/provider-model-requirements.js +15 -0
- package/dist/core/workflow/provider-model-requirements.js.map +1 -0
- package/dist/core/workflow/provider-resolution.d.ts +4 -6
- package/dist/core/workflow/provider-resolution.d.ts.map +1 -1
- package/dist/core/workflow/provider-resolution.js +19 -11
- package/dist/core/workflow/provider-resolution.js.map +1 -1
- package/dist/core/workflow/report-phase-runner.d.ts +5 -2
- package/dist/core/workflow/report-phase-runner.d.ts.map +1 -1
- package/dist/core/workflow/report-phase-runner.js +135 -43
- package/dist/core/workflow/report-phase-runner.js.map +1 -1
- package/dist/core/workflow/session-key.d.ts +4 -1
- package/dist/core/workflow/session-key.d.ts.map +1 -1
- package/dist/core/workflow/session-key.js +5 -2
- package/dist/core/workflow/session-key.js.map +1 -1
- package/dist/core/workflow/status-judgment-phase.d.ts +2 -2
- package/dist/core/workflow/status-judgment-phase.d.ts.map +1 -1
- package/dist/core/workflow/status-judgment-phase.js +1 -7
- package/dist/core/workflow/status-judgment-phase.js.map +1 -1
- package/dist/core/workflow/system/system-step-effect-runner.js +2 -2
- package/dist/core/workflow/system/system-step-effect-runner.js.map +1 -1
- package/dist/core/workflow/system/system-step-services.d.ts +101 -0
- package/dist/core/workflow/system/system-step-services.d.ts.map +1 -1
- package/dist/core/workflow/types.d.ts +7 -3
- package/dist/core/workflow/types.d.ts.map +1 -1
- package/dist/features/analytics/events.d.ts +2 -1
- package/dist/features/analytics/events.d.ts.map +1 -1
- package/dist/features/catalog/catalogFacets.d.ts +11 -1
- package/dist/features/catalog/catalogFacets.d.ts.map +1 -1
- package/dist/features/catalog/catalogFacets.js +36 -10
- package/dist/features/catalog/catalogFacets.js.map +1 -1
- package/dist/features/exec/assistantSession.d.ts +18 -0
- package/dist/features/exec/assistantSession.d.ts.map +1 -0
- package/dist/features/exec/assistantSession.js +51 -0
- package/dist/features/exec/assistantSession.js.map +1 -0
- package/dist/features/exec/command.d.ts +9 -0
- package/dist/features/exec/command.d.ts.map +1 -0
- package/dist/features/exec/command.js +143 -0
- package/dist/features/exec/command.js.map +1 -0
- package/dist/features/exec/commandAvailability.d.ts +4 -0
- package/dist/features/exec/commandAvailability.d.ts.map +1 -0
- package/dist/features/exec/commandAvailability.js +10 -0
- package/dist/features/exec/commandAvailability.js.map +1 -0
- package/dist/features/exec/configOps.d.ts +13 -0
- package/dist/features/exec/configOps.d.ts.map +1 -0
- package/dist/features/exec/configOps.js +129 -0
- package/dist/features/exec/configOps.js.map +1 -0
- package/dist/features/exec/configValidation.d.ts +15 -0
- package/dist/features/exec/configValidation.d.ts.map +1 -0
- package/dist/features/exec/configValidation.js +146 -0
- package/dist/features/exec/configValidation.js.map +1 -0
- package/dist/features/exec/defaults.d.ts +3 -0
- package/dist/features/exec/defaults.d.ts.map +1 -0
- package/dist/features/exec/defaults.js +30 -0
- package/dist/features/exec/defaults.js.map +1 -0
- package/dist/features/exec/facetEditor.d.ts +5 -0
- package/dist/features/exec/facetEditor.d.ts.map +1 -0
- package/dist/features/exec/facetEditor.js +293 -0
- package/dist/features/exec/facetEditor.js.map +1 -0
- package/dist/features/exec/index.d.ts +2 -0
- package/dist/features/exec/index.d.ts.map +1 -0
- package/dist/features/exec/index.js +2 -0
- package/dist/features/exec/index.js.map +1 -0
- package/dist/features/exec/labels.d.ts +11 -0
- package/dist/features/exec/labels.d.ts.map +1 -0
- package/dist/features/exec/labels.js +20 -0
- package/dist/features/exec/labels.js.map +1 -0
- package/dist/features/exec/presetSelection.d.ts +3 -0
- package/dist/features/exec/presetSelection.d.ts.map +1 -0
- package/dist/features/exec/presetSelection.js +16 -0
- package/dist/features/exec/presetSelection.js.map +1 -0
- package/dist/features/exec/presetSetup.d.ts +7 -0
- package/dist/features/exec/presetSetup.d.ts.map +1 -0
- package/dist/features/exec/presetSetup.js +120 -0
- package/dist/features/exec/presetSetup.js.map +1 -0
- package/dist/features/exec/presetStore.d.ts +25 -0
- package/dist/features/exec/presetStore.d.ts.map +1 -0
- package/dist/features/exec/presetStore.js +326 -0
- package/dist/features/exec/presetStore.js.map +1 -0
- package/dist/features/exec/projectLocalFiles.d.ts +9 -0
- package/dist/features/exec/projectLocalFiles.d.ts.map +1 -0
- package/dist/features/exec/projectLocalFiles.js +111 -0
- package/dist/features/exec/projectLocalFiles.js.map +1 -0
- package/dist/features/exec/promptUtils.d.ts +8 -0
- package/dist/features/exec/promptUtils.d.ts.map +1 -0
- package/dist/features/exec/promptUtils.js +32 -0
- package/dist/features/exec/promptUtils.js.map +1 -0
- package/dist/features/exec/runtimeConfig.d.ts +13 -0
- package/dist/features/exec/runtimeConfig.d.ts.map +1 -0
- package/dist/features/exec/runtimeConfig.js +59 -0
- package/dist/features/exec/runtimeConfig.js.map +1 -0
- package/dist/features/exec/setupMenu.d.ts +5 -0
- package/dist/features/exec/setupMenu.d.ts.map +1 -0
- package/dist/features/exec/setupMenu.js +431 -0
- package/dist/features/exec/setupMenu.js.map +1 -0
- package/dist/features/exec/types.d.ts +52 -0
- package/dist/features/exec/types.d.ts.map +1 -0
- package/dist/features/exec/types.js +2 -0
- package/dist/features/exec/types.js.map +1 -0
- package/dist/features/exec/workflowRunner.d.ts +9 -0
- package/dist/features/exec/workflowRunner.d.ts.map +1 -0
- package/dist/features/exec/workflowRunner.js +96 -0
- package/dist/features/exec/workflowRunner.js.map +1 -0
- package/dist/features/exec/workflowTemplate.d.ts +9 -0
- package/dist/features/exec/workflowTemplate.d.ts.map +1 -0
- package/dist/features/exec/workflowTemplate.js +159 -0
- package/dist/features/exec/workflowTemplate.js.map +1 -0
- package/dist/features/interactive/aiCaller.d.ts +5 -0
- package/dist/features/interactive/aiCaller.d.ts.map +1 -1
- package/dist/features/interactive/aiCaller.js +35 -10
- package/dist/features/interactive/aiCaller.js.map +1 -1
- package/dist/features/interactive/commandMatcher.d.ts +2 -1
- package/dist/features/interactive/commandMatcher.d.ts.map +1 -1
- package/dist/features/interactive/commandMatcher.js +13 -2
- package/dist/features/interactive/commandMatcher.js.map +1 -1
- package/dist/features/interactive/conversationSession.d.ts +44 -0
- package/dist/features/interactive/conversationSession.d.ts.map +1 -0
- package/dist/features/interactive/conversationSession.js +133 -0
- package/dist/features/interactive/conversationSession.js.map +1 -0
- package/dist/features/interactive/index.d.ts +1 -0
- package/dist/features/interactive/index.d.ts.map +1 -1
- package/dist/features/interactive/index.js +1 -0
- package/dist/features/interactive/index.js.map +1 -1
- package/dist/features/interactive/interactive-summary.d.ts.map +1 -1
- package/dist/features/interactive/interactive-summary.js +45 -23
- package/dist/features/interactive/interactive-summary.js.map +1 -1
- package/dist/features/interactive/interactive.d.ts +5 -4
- package/dist/features/interactive/interactive.d.ts.map +1 -1
- package/dist/features/interactive/interactive.js +12 -6
- package/dist/features/interactive/interactive.js.map +1 -1
- package/dist/features/interactive/interactiveApplication.d.ts +5 -0
- package/dist/features/interactive/interactiveApplication.d.ts.map +1 -0
- package/dist/features/interactive/interactiveApplication.js +10 -0
- package/dist/features/interactive/interactiveApplication.js.map +1 -0
- package/dist/features/interactive/promptSections.d.ts.map +1 -1
- package/dist/features/interactive/promptSections.js +3 -6
- package/dist/features/interactive/promptSections.js.map +1 -1
- package/dist/features/interactive/retryMode.d.ts.map +1 -1
- package/dist/features/interactive/retryMode.js +3 -3
- package/dist/features/interactive/retryMode.js.map +1 -1
- package/dist/features/interactive/runSessionReader.d.ts +4 -37
- package/dist/features/interactive/runSessionReader.d.ts.map +1 -1
- package/dist/features/interactive/runSessionReader.js +130 -49
- package/dist/features/interactive/runSessionReader.js.map +1 -1
- package/dist/features/interactive/slashCommandRegistry.d.ts +2 -0
- package/dist/features/interactive/slashCommandRegistry.d.ts.map +1 -1
- package/dist/features/interactive/slashCommandRegistry.js +5 -0
- package/dist/features/interactive/slashCommandRegistry.js.map +1 -1
- package/dist/features/mcp/operations.d.ts +25 -0
- package/dist/features/mcp/operations.d.ts.map +1 -0
- package/dist/features/mcp/operations.js +150 -0
- package/dist/features/mcp/operations.js.map +1 -0
- package/dist/features/mcp/schemas.d.ts +50 -0
- package/dist/features/mcp/schemas.d.ts.map +1 -0
- package/dist/features/mcp/schemas.js +59 -0
- package/dist/features/mcp/schemas.js.map +1 -0
- package/dist/features/mcp/server.d.ts +7 -0
- package/dist/features/mcp/server.d.ts.map +1 -0
- package/dist/features/mcp/server.js +36 -0
- package/dist/features/mcp/server.js.map +1 -0
- package/dist/features/prompt/preview.d.ts.map +1 -1
- package/dist/features/prompt/preview.js +58 -32
- package/dist/features/prompt/preview.js.map +1 -1
- package/dist/features/tasks/add/index.d.ts +8 -20
- package/dist/features/tasks/add/index.d.ts.map +1 -1
- package/dist/features/tasks/add/index.js +42 -61
- package/dist/features/tasks/add/index.js.map +1 -1
- package/dist/features/tasks/attachments.d.ts +2 -5
- package/dist/features/tasks/attachments.d.ts.map +1 -1
- package/dist/features/tasks/attachments.js +11 -35
- package/dist/features/tasks/attachments.js.map +1 -1
- package/dist/features/tasks/execute/outputFns.d.ts +1 -1
- package/dist/features/tasks/execute/outputFns.d.ts.map +1 -1
- package/dist/features/tasks/execute/outputFns.js +17 -1
- package/dist/features/tasks/execute/outputFns.js.map +1 -1
- package/dist/features/tasks/execute/postExecution.d.ts +4 -1
- package/dist/features/tasks/execute/postExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/postExecution.js +33 -14
- package/dist/features/tasks/execute/postExecution.js.map +1 -1
- package/dist/features/tasks/execute/resolveTask.d.ts +9 -3
- package/dist/features/tasks/execute/resolveTask.d.ts.map +1 -1
- package/dist/features/tasks/execute/resolveTask.js +45 -13
- package/dist/features/tasks/execute/resolveTask.js.map +1 -1
- package/dist/features/tasks/execute/runTaskExecution.d.ts +7 -1
- package/dist/features/tasks/execute/runTaskExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/runTaskExecution.js +11 -8
- package/dist/features/tasks/execute/runTaskExecution.js.map +1 -1
- package/dist/features/tasks/execute/selectAndExecute.d.ts.map +1 -1
- package/dist/features/tasks/execute/selectAndExecute.js +6 -2
- package/dist/features/tasks/execute/selectAndExecute.js.map +1 -1
- package/dist/features/tasks/execute/taskExecution.d.ts +12 -3
- package/dist/features/tasks/execute/taskExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/taskExecution.js +63 -16
- package/dist/features/tasks/execute/taskExecution.js.map +1 -1
- package/dist/features/tasks/execute/taskResultHandler.d.ts +2 -2
- package/dist/features/tasks/execute/taskResultHandler.d.ts.map +1 -1
- package/dist/features/tasks/execute/taskResultHandler.js +8 -4
- package/dist/features/tasks/execute/taskResultHandler.js.map +1 -1
- package/dist/features/tasks/execute/taskWorkflowExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/taskWorkflowExecution.js +101 -10
- package/dist/features/tasks/execute/taskWorkflowExecution.js.map +1 -1
- package/dist/features/tasks/execute/traceTaskMetadata.js +3 -6
- package/dist/features/tasks/execute/traceTaskMetadata.js.map +1 -1
- package/dist/features/tasks/execute/types.d.ts +103 -2
- package/dist/features/tasks/execute/types.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecution.d.ts +3 -1
- package/dist/features/tasks/execute/workflowExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecution.js +41 -3
- package/dist/features/tasks/execute/workflowExecution.js.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionApi.d.ts +6 -0
- package/dist/features/tasks/execute/workflowExecutionApi.d.ts.map +1 -0
- package/dist/features/tasks/execute/workflowExecutionApi.js +25 -0
- package/dist/features/tasks/execute/workflowExecutionApi.js.map +1 -0
- package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts +2 -1
- package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionBootstrap.js +18 -14
- package/dist/features/tasks/execute/workflowExecutionBootstrap.js.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.d.ts +14 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.js +244 -3
- package/dist/features/tasks/execute/workflowExecutionEvents.js.map +1 -1
- package/dist/features/tasks/list/instructMode.d.ts.map +1 -1
- package/dist/features/tasks/list/instructMode.js +3 -3
- package/dist/features/tasks/list/instructMode.js.map +1 -1
- package/dist/features/tasks/list/requeueHelpers.d.ts +1 -0
- package/dist/features/tasks/list/requeueHelpers.d.ts.map +1 -1
- package/dist/features/tasks/list/requeueHelpers.js +3 -0
- package/dist/features/tasks/list/requeueHelpers.js.map +1 -1
- package/dist/features/tasks/list/taskInstructionActions.d.ts.map +1 -1
- package/dist/features/tasks/list/taskInstructionActions.js +2 -2
- package/dist/features/tasks/list/taskInstructionActions.js.map +1 -1
- package/dist/features/tasks/list/taskRetryActions.d.ts.map +1 -1
- package/dist/features/tasks/list/taskRetryActions.js +1 -4
- package/dist/features/tasks/list/taskRetryActions.js.map +1 -1
- package/dist/features/tasks/resume/directInstructMode.d.ts.map +1 -1
- package/dist/features/tasks/resume/directInstructMode.js +3 -3
- package/dist/features/tasks/resume/directInstructMode.js.map +1 -1
- package/dist/features/tasks/taskContextValidation.d.ts +10 -0
- package/dist/features/tasks/taskContextValidation.d.ts.map +1 -0
- package/dist/features/tasks/taskContextValidation.js +73 -0
- package/dist/features/tasks/taskContextValidation.js.map +1 -0
- package/dist/infra/codex/client.d.ts.map +1 -1
- package/dist/infra/codex/client.js +5 -0
- package/dist/infra/codex/client.js.map +1 -1
- package/dist/infra/config/configNormalizers.d.ts.map +1 -1
- package/dist/infra/config/configNormalizers.js +14 -11
- package/dist/infra/config/configNormalizers.js.map +1 -1
- package/dist/infra/config/global/globalConfigCore.js +2 -2
- package/dist/infra/config/global/globalConfigCore.js.map +1 -1
- package/dist/infra/config/loaders/resource-resolver.d.ts +3 -33
- package/dist/infra/config/loaders/resource-resolver.d.ts.map +1 -1
- package/dist/infra/config/loaders/resource-resolver.js +140 -52
- package/dist/infra/config/loaders/resource-resolver.js.map +1 -1
- package/dist/infra/config/loaders/workflowCallContracts.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowCallContracts.js +5 -0
- package/dist/infra/config/loaders/workflowCallContracts.js.map +1 -1
- package/dist/infra/config/loaders/workflowCallableArgResolver.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowCallableArgResolver.js +42 -7
- package/dist/infra/config/loaders/workflowCallableArgResolver.js.map +1 -1
- package/dist/infra/config/loaders/workflowCallableRuleValidation.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowCallableRuleValidation.js +5 -0
- package/dist/infra/config/loaders/workflowCallableRuleValidation.js.map +1 -1
- package/dist/infra/config/loaders/workflowDoctor.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowDoctor.js +19 -7
- package/dist/infra/config/loaders/workflowDoctor.js.map +1 -1
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.d.ts +3 -1
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js +12 -2
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js.map +1 -1
- package/dist/infra/config/loaders/workflowPackageScope.d.ts +1 -0
- package/dist/infra/config/loaders/workflowPackageScope.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowPackageScope.js +20 -2
- package/dist/infra/config/loaders/workflowPackageScope.js.map +1 -1
- package/dist/infra/config/loaders/workflowParser.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowParser.js +17 -14
- package/dist/infra/config/loaders/workflowParser.js.map +1 -1
- package/dist/infra/config/loaders/workflowPreview.d.ts +3 -0
- package/dist/infra/config/loaders/workflowPreview.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowPreview.js +17 -9
- package/dist/infra/config/loaders/workflowPreview.js.map +1 -1
- package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts +10 -0
- package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowRuleNormalizer.js +70 -1
- package/dist/infra/config/loaders/workflowRuleNormalizer.js.map +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.d.ts +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.js +33 -11
- package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
- package/dist/infra/config/project/sessionStore.d.ts +2 -2
- package/dist/infra/config/project/sessionStore.d.ts.map +1 -1
- package/dist/infra/config/project/sessionStore.js +12 -4
- package/dist/infra/config/project/sessionStore.js.map +1 -1
- package/dist/infra/config/providerModelRequirements.d.ts +2 -0
- package/dist/infra/config/providerModelRequirements.d.ts.map +1 -0
- package/dist/infra/config/providerModelRequirements.js +2 -0
- package/dist/infra/config/providerModelRequirements.js.map +1 -0
- package/dist/infra/git/format.d.ts +1 -0
- package/dist/infra/git/format.d.ts.map +1 -1
- package/dist/infra/git/format.js +21 -0
- package/dist/infra/git/format.js.map +1 -1
- package/dist/infra/git/index.d.ts +1 -1
- package/dist/infra/git/index.d.ts.map +1 -1
- package/dist/infra/git/types.d.ts +16 -4
- package/dist/infra/git/types.d.ts.map +1 -1
- package/dist/infra/github/GitHubProvider.d.ts +2 -1
- package/dist/infra/github/GitHubProvider.d.ts.map +1 -1
- package/dist/infra/github/GitHubProvider.js +4 -1
- package/dist/infra/github/GitHubProvider.js.map +1 -1
- package/dist/infra/github/issue.d.ts +2 -1
- package/dist/infra/github/issue.d.ts.map +1 -1
- package/dist/infra/github/issue.js +23 -2
- package/dist/infra/github/issue.js.map +1 -1
- package/dist/infra/gitlab/GitLabProvider.d.ts +2 -1
- package/dist/infra/gitlab/GitLabProvider.d.ts.map +1 -1
- package/dist/infra/gitlab/GitLabProvider.js +4 -1
- package/dist/infra/gitlab/GitLabProvider.js.map +1 -1
- package/dist/infra/gitlab/issue.d.ts +2 -1
- package/dist/infra/gitlab/issue.d.ts.map +1 -1
- package/dist/infra/gitlab/issue.js +30 -2
- package/dist/infra/gitlab/issue.js.map +1 -1
- package/dist/infra/opencode/OpenCodeStreamHandler.d.ts +4 -0
- package/dist/infra/opencode/OpenCodeStreamHandler.d.ts.map +1 -1
- package/dist/infra/opencode/OpenCodeStreamHandler.js.map +1 -1
- package/dist/infra/opencode/allowedTools.d.ts +1 -0
- package/dist/infra/opencode/allowedTools.d.ts.map +1 -1
- package/dist/infra/opencode/allowedTools.js +6 -0
- package/dist/infra/opencode/allowedTools.js.map +1 -1
- package/dist/infra/opencode/client.d.ts +2 -0
- package/dist/infra/opencode/client.d.ts.map +1 -1
- package/dist/infra/opencode/client.js +392 -169
- package/dist/infra/opencode/client.js.map +1 -1
- package/dist/infra/opencode/types.d.ts +35 -0
- package/dist/infra/opencode/types.d.ts.map +1 -1
- package/dist/infra/opencode/types.js +98 -11
- package/dist/infra/opencode/types.js.map +1 -1
- package/dist/infra/opencode/unavailable-tool-loop.d.ts +13 -0
- package/dist/infra/opencode/unavailable-tool-loop.d.ts.map +1 -1
- package/dist/infra/opencode/unavailable-tool-loop.js +46 -0
- package/dist/infra/opencode/unavailable-tool-loop.js.map +1 -1
- package/dist/infra/providers/allowed-tool-edit-policy.d.ts +1 -0
- package/dist/infra/providers/allowed-tool-edit-policy.d.ts.map +1 -1
- package/dist/infra/providers/allowed-tool-edit-policy.js +35 -1
- package/dist/infra/providers/allowed-tool-edit-policy.js.map +1 -1
- package/dist/infra/providers/claude-headless.d.ts.map +1 -1
- package/dist/infra/providers/claude-headless.js +0 -2
- package/dist/infra/providers/claude-headless.js.map +1 -1
- package/dist/infra/providers/claude-terminal.d.ts.map +1 -1
- package/dist/infra/providers/claude-terminal.js +0 -2
- package/dist/infra/providers/claude-terminal.js.map +1 -1
- package/dist/infra/providers/claude.d.ts.map +1 -1
- package/dist/infra/providers/claude.js +0 -2
- package/dist/infra/providers/claude.js.map +1 -1
- package/dist/infra/providers/opencode.d.ts +3 -2
- package/dist/infra/providers/opencode.d.ts.map +1 -1
- package/dist/infra/providers/opencode.js +19 -8
- package/dist/infra/providers/opencode.js.map +1 -1
- package/dist/infra/providers/types.d.ts +1 -1
- package/dist/infra/providers/types.d.ts.map +1 -1
- package/dist/infra/task/clone-exec.d.ts.map +1 -1
- package/dist/infra/task/clone-exec.js +31 -0
- package/dist/infra/task/clone-exec.js.map +1 -1
- package/dist/infra/task/enqueueService.d.ts +115 -0
- package/dist/infra/task/enqueueService.d.ts.map +1 -0
- package/dist/infra/task/enqueueService.js +191 -0
- package/dist/infra/task/enqueueService.js.map +1 -0
- package/dist/infra/task/enqueuedTaskFile.d.ts +6 -0
- package/dist/infra/task/enqueuedTaskFile.d.ts.map +1 -0
- package/dist/infra/task/enqueuedTaskFile.js +55 -0
- package/dist/infra/task/enqueuedTaskFile.js.map +1 -0
- package/dist/infra/task/issueTask.d.ts +20 -0
- package/dist/infra/task/issueTask.d.ts.map +1 -0
- package/dist/{features/tasks/add → infra/task}/issueTask.js +61 -43
- package/dist/infra/task/issueTask.js.map +1 -0
- package/dist/infra/task/listSerializer.d.ts +1 -0
- package/dist/infra/task/listSerializer.d.ts.map +1 -1
- package/dist/infra/task/listSerializer.js +1 -0
- package/dist/infra/task/listSerializer.js.map +1 -1
- package/dist/infra/task/mapper.d.ts.map +1 -1
- package/dist/infra/task/mapper.js +1 -0
- package/dist/infra/task/mapper.js.map +1 -1
- package/dist/infra/task/taskExecutionSchemas.d.ts +3 -0
- package/dist/infra/task/taskExecutionSchemas.d.ts.map +1 -1
- package/dist/infra/task/taskExecutionSchemas.js +4 -2
- package/dist/infra/task/taskExecutionSchemas.js.map +1 -1
- package/dist/infra/task/taskRecordSchemas.d.ts +2 -0
- package/dist/infra/task/taskRecordSchemas.d.ts.map +1 -1
- package/dist/infra/workflow/system/DefaultSystemStepServices.d.ts.map +1 -1
- package/dist/infra/workflow/system/DefaultSystemStepServices.js +7 -7
- package/dist/infra/workflow/system/DefaultSystemStepServices.js.map +1 -1
- package/dist/infra/workflow/system/system-enqueue-effect.d.ts.map +1 -1
- package/dist/infra/workflow/system/system-enqueue-effect.js +78 -20
- package/dist/infra/workflow/system/system-enqueue-effect.js.map +1 -1
- package/dist/infra/workflow/system/system-git-context.d.ts +6 -6
- package/dist/infra/workflow/system/system-git-context.d.ts.map +1 -1
- package/dist/infra/workflow/system/system-git-context.js +13 -13
- package/dist/infra/workflow/system/system-git-context.js.map +1 -1
- package/dist/infra/workflow/system/system-issue-input-resolver.d.ts +3 -3
- package/dist/infra/workflow/system/system-issue-input-resolver.d.ts.map +1 -1
- package/dist/infra/workflow/system/system-issue-input-resolver.js +8 -8
- package/dist/infra/workflow/system/system-issue-input-resolver.js.map +1 -1
- package/dist/infra/workflow/system/system-pr-effects.d.ts.map +1 -1
- package/dist/infra/workflow/system/system-pr-effects.js +6 -3
- package/dist/infra/workflow/system/system-pr-effects.js.map +1 -1
- package/dist/infra/workflow/system/system-pr-input-resolver.d.ts +3 -3
- package/dist/infra/workflow/system/system-pr-input-resolver.d.ts.map +1 -1
- package/dist/infra/workflow/system/system-pr-input-resolver.js +8 -8
- package/dist/infra/workflow/system/system-pr-input-resolver.js.map +1 -1
- package/dist/infra/workflow/system/system-sync-effects.js +2 -2
- package/dist/infra/workflow/system/system-sync-effects.js.map +1 -1
- package/dist/shared/constants.d.ts +1 -0
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +1 -0
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/i18n/labels_en.yaml +115 -0
- package/dist/shared/i18n/labels_ja.yaml +115 -0
- package/dist/shared/package-info.d.ts +2 -0
- package/dist/shared/package-info.d.ts.map +1 -0
- package/dist/shared/package-info.js +5 -0
- package/dist/shared/package-info.js.map +1 -0
- package/dist/shared/prompts/en/exec_assistant_clarify.md +14 -0
- package/dist/shared/prompts/en/exec_assistant_instruct.md +14 -0
- package/dist/shared/prompts/en/exec_assistant_summary.md +12 -0
- package/dist/shared/prompts/en/exec_facet_create.md +8 -0
- package/dist/shared/prompts/en/exec_facet_edit.md +8 -0
- package/dist/shared/prompts/en/finding_manager_instruction.md +35 -0
- package/dist/shared/prompts/en/opencode_agent_prompt.md +52 -0
- package/dist/shared/prompts/en/opencode_report_agent_prompt.md +8 -0
- package/dist/shared/prompts/en/opencode_review_agent_prompt.md +32 -0
- package/dist/shared/prompts/en/perform_phase1_message.md +1 -4
- package/dist/shared/prompts/en/perform_phase2_message.md +1 -0
- package/dist/shared/prompts/en/perform_phase3_message.md +1 -0
- package/dist/shared/prompts/en/provider_runtime_system_prompt.md +1 -0
- package/dist/shared/prompts/en/score_slug_system_prompt.md +1 -0
- package/dist/shared/prompts/en/score_slug_user_prompt.md +1 -0
- package/dist/shared/prompts/en/score_summary_system_prompt.md +1 -0
- package/dist/shared/prompts/en/source_context_section_guidance.md +6 -0
- package/dist/shared/prompts/en/source_context_system_guard.md +8 -0
- package/dist/shared/prompts/en/structured_json_schema_instruction.md +12 -0
- package/dist/shared/prompts/en/structured_json_step_instruction.md +12 -0
- package/dist/shared/prompts/en/sync_conflict_resolver_message.md +1 -0
- package/dist/shared/prompts/en/sync_conflict_resolver_system_prompt.md +1 -0
- package/dist/shared/prompts/index.d.ts.map +1 -1
- package/dist/shared/prompts/index.js +3 -1
- package/dist/shared/prompts/index.js.map +1 -1
- package/dist/shared/prompts/ja/exec_assistant_clarify.md +14 -0
- package/dist/shared/prompts/ja/exec_assistant_instruct.md +14 -0
- package/dist/shared/prompts/ja/exec_assistant_summary.md +12 -0
- package/dist/shared/prompts/ja/exec_facet_create.md +8 -0
- package/dist/shared/prompts/ja/exec_facet_edit.md +8 -0
- package/dist/shared/prompts/ja/finding_manager_instruction.md +35 -0
- package/dist/shared/prompts/ja/opencode_agent_prompt.md +52 -0
- package/dist/shared/prompts/ja/opencode_report_agent_prompt.md +8 -0
- package/dist/shared/prompts/ja/opencode_review_agent_prompt.md +32 -0
- package/dist/shared/prompts/ja/perform_phase1_message.md +1 -4
- package/dist/shared/prompts/ja/perform_phase2_message.md +1 -0
- package/dist/shared/prompts/ja/perform_phase3_message.md +1 -0
- package/dist/shared/prompts/ja/provider_runtime_system_prompt.md +1 -0
- package/dist/shared/prompts/ja/score_slug_system_prompt.md +1 -0
- package/dist/shared/prompts/ja/score_slug_user_prompt.md +1 -0
- package/dist/shared/prompts/ja/score_summary_system_prompt.md +1 -0
- package/dist/shared/prompts/ja/source_context_section_guidance.md +6 -0
- package/dist/shared/prompts/ja/source_context_system_guard.md +8 -0
- package/dist/shared/prompts/ja/structured_json_schema_instruction.md +12 -0
- package/dist/shared/prompts/ja/structured_json_step_instruction.md +12 -0
- package/dist/shared/prompts/ja/sync_conflict_resolver_message.md +1 -0
- package/dist/shared/prompts/ja/sync_conflict_resolver_system_prompt.md +1 -0
- package/dist/shared/utils/entrypoint.d.ts +2 -0
- package/dist/shared/utils/entrypoint.d.ts.map +1 -0
- package/dist/shared/utils/entrypoint.js +15 -0
- package/dist/shared/utils/entrypoint.js.map +1 -0
- package/dist/shared/utils/index.d.ts +1 -0
- package/dist/shared/utils/index.d.ts.map +1 -1
- package/dist/shared/utils/index.js +1 -0
- package/dist/shared/utils/index.js.map +1 -1
- package/dist/shared/utils/pathBoundary.d.ts +6 -0
- package/dist/shared/utils/pathBoundary.d.ts.map +1 -1
- package/dist/shared/utils/pathBoundary.js +38 -1
- package/dist/shared/utils/pathBoundary.js.map +1 -1
- package/dist/shared/utils/safeExternalErrorMessage.d.ts +2 -0
- package/dist/shared/utils/safeExternalErrorMessage.d.ts.map +1 -0
- package/dist/shared/utils/safeExternalErrorMessage.js +22 -0
- package/dist/shared/utils/safeExternalErrorMessage.js.map +1 -0
- package/package.json +29 -10
- package/builtins/en/facets/instructions/review-pure.md +0 -9
- package/builtins/en/facets/personas/pure-reviewer.md +0 -22
- package/builtins/en/provider-options/review-web.yaml +0 -14
- package/builtins/ja/facets/instructions/review-pure.md +0 -9
- package/builtins/ja/facets/personas/pure-reviewer.md +0 -22
- package/builtins/ja/provider-options/review-web.yaml +0 -14
- package/dist/core/workflow/claude-effort-compatibility.d.ts +0 -3
- package/dist/core/workflow/claude-effort-compatibility.d.ts.map +0 -1
- package/dist/core/workflow/claude-effort-compatibility.js +0 -28
- package/dist/core/workflow/claude-effort-compatibility.js.map +0 -1
- package/dist/core/workflow/provider-model-compatibility.d.ts +0 -7
- package/dist/core/workflow/provider-model-compatibility.d.ts.map +0 -1
- package/dist/core/workflow/provider-model-compatibility.js +0 -20
- package/dist/core/workflow/provider-model-compatibility.js.map +0 -1
- package/dist/features/interactive/policyPrompt.d.ts +0 -2
- package/dist/features/interactive/policyPrompt.d.ts.map +0 -1
- package/dist/features/interactive/policyPrompt.js +0 -18
- package/dist/features/interactive/policyPrompt.js.map +0 -1
- package/dist/features/tasks/add/issueTask.d.ts +0 -7
- package/dist/features/tasks/add/issueTask.d.ts.map +0 -1
- package/dist/features/tasks/add/issueTask.js.map +0 -1
- package/dist/infra/config/providerModelCompatibility.d.ts +0 -2
- package/dist/infra/config/providerModelCompatibility.d.ts.map +0 -1
- package/dist/infra/config/providerModelCompatibility.js +0 -2
- package/dist/infra/config/providerModelCompatibility.js.map +0 -1
- package/dist/shared/prompts/en/score_interactive_policy.md +0 -83
- package/dist/shared/prompts/ja/score_interactive_policy.md +0 -83
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Implementation Semantics
|
|
2
|
+
|
|
3
|
+
Knowledge for judging the micro-level design flaws that remain even when every test passes. The targets are data structure choice, state normalization, naming-meaning alignment, and fail-fast at boundaries. Each is a question of whether the meaning is correct, not whether the code runs, which is why tests are structurally bad at catching them.
|
|
4
|
+
|
|
5
|
+
## Meaning-Driven Data Structure Choice
|
|
6
|
+
|
|
7
|
+
Choose collection and dictionary types that match the meaning of the data. In particular, implementing a dictionary keyed by externally supplied strings as a plain object lets inherited prototype properties leak in.
|
|
8
|
+
|
|
9
|
+
| Criterion | Verdict |
|
|
10
|
+
|-----------|---------|
|
|
11
|
+
| A dictionary keyed by external input (IDs, user input) is implemented as `Record` / plain object and membership is checked with `in` or `obj[key]` | REJECT |
|
|
12
|
+
| Behavior can change for keys like `__proto__`, `constructor`, or `toString` | REJECT |
|
|
13
|
+
| Dynamic-key dictionaries use `Map`, or block the inheritance chain via `Object.create(null)` / `Object.hasOwn` | OK |
|
|
14
|
+
| A plain object is used for a fixed, finite key set (e.g. a config object) | OK |
|
|
15
|
+
|
|
16
|
+
Never flag a guarded `Record` as "should be a `Map`". Blocking the inheritance chain via `Object.hasOwn` / `Object.create(null)` is a complete mitigation, and continuing to use `Record` on top of it is not a design flaw. In particular, when a published contract (a frozen type definition) mandates `Record`, guarding is everything the implementation can do. The only reportable finding is a remaining unguarded access, and it must be cited with its location.
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
// REJECT - passing the ID "toString" reports it as present despite never being registered
|
|
20
|
+
const reservations: Record<string, Reservation> = {};
|
|
21
|
+
if (reservationId in reservations) { /* also matches inherited properties */ }
|
|
22
|
+
|
|
23
|
+
// OK - Map has no inherited-property leakage
|
|
24
|
+
const reservations = new Map<string, Reservation>();
|
|
25
|
+
if (reservations.has(reservationId)) { /* matches registered keys only */ }
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Single Source of Truth for Derived Values
|
|
29
|
+
|
|
30
|
+
Do not maintain a value in parallel when it can be computed from another. The moment it is duplicated, the two can drift, and the question of which one is authoritative is born with it.
|
|
31
|
+
|
|
32
|
+
| Criterion | Verdict |
|
|
33
|
+
|-----------|---------|
|
|
34
|
+
| A derivable value (total, count, version) is also incremented/decremented as a separate variable | REJECT |
|
|
35
|
+
| Detail records and an aggregate are updated in parallel and can diverge on invalid input | REJECT |
|
|
36
|
+
| Derived values are computed where used, or only the source is updated and the aggregate is obtained via a function | OK |
|
|
37
|
+
| When cached for performance, updates flow through a single path and divergence is detectable | OK |
|
|
38
|
+
|
|
39
|
+
```typescript
|
|
40
|
+
// REJECT - version is derivable from history length but tracked separately; drift corrupts stock math
|
|
41
|
+
class EventStore {
|
|
42
|
+
private version = 0;
|
|
43
|
+
append(e: Event) { this.events.push(e); this.version++; }
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// OK - hold only the source and derive the version
|
|
47
|
+
class EventStore {
|
|
48
|
+
get version() { return this.events.length; }
|
|
49
|
+
append(e: Event) { this.events.push(e); }
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Naming-Meaning Alignment
|
|
54
|
+
|
|
55
|
+
A name states the meaning of the value it actually holds. A variable whose name and content diverge plants a false assumption in the reader and breeds the next bug.
|
|
56
|
+
|
|
57
|
+
| Criterion | Verdict |
|
|
58
|
+
|-----------|---------|
|
|
59
|
+
| The meaning implied by a variable/parameter name differs from the value actually stored (e.g. an ID stored in something named `qty`) | REJECT |
|
|
60
|
+
| Types match but the unit, coordinate system, or normalization state is unreadable from the name and gets mixed up | REJECT |
|
|
61
|
+
| The meaning, unit, and state of the content are unambiguously readable from the name | OK |
|
|
62
|
+
|
|
63
|
+
```typescript
|
|
64
|
+
// REJECT - named qtyShip, but the value is actually a reservation ID
|
|
65
|
+
function applyShipped(qtyShip: string) { delete this.reservations[qtyShip]; }
|
|
66
|
+
|
|
67
|
+
// OK - the name matches the meaning of the content
|
|
68
|
+
function applyShipped(reservationId: string) { delete this.reservations[reservationId]; }
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Fail-Fast at Boundaries
|
|
72
|
+
|
|
73
|
+
Fail immediately at the boundary on impossible states and contract-violating input instead of silently ignoring them. Swallowing them lets the inconsistency propagate downstream before it surfaces, making the cause hard to trace.
|
|
74
|
+
|
|
75
|
+
| Criterion | Verdict |
|
|
76
|
+
|-----------|---------|
|
|
77
|
+
| Input with broken preconditions (an event for a nonexistent target, ordering violations) is skipped without a word | REJECT |
|
|
78
|
+
| Exceptions are swallowed and a normal value is returned, so callers cannot detect the failure | REJECT |
|
|
79
|
+
| Contract violations surface immediately as explicit errors, exceptions, or Result types | OK |
|
|
80
|
+
| When ignoring is the spec, that decision is documented in a comment or the spec | OK |
|
|
81
|
+
|
|
82
|
+
```typescript
|
|
83
|
+
// REJECT - silently ignores events for products created later; corrupted event logs go undetected
|
|
84
|
+
apply(event: StockEvent) {
|
|
85
|
+
const product = this.products[event.productId];
|
|
86
|
+
if (!product) return;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// OK - fail immediately on impossible states to detect corruption early
|
|
90
|
+
apply(event: StockEvent) {
|
|
91
|
+
const product = this.products.get(event.productId);
|
|
92
|
+
if (!product) throw new Error(`event for unknown product: ${event.productId}`);
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Internal State Reference Leaks
|
|
97
|
+
|
|
98
|
+
When a store or read model returns references to its internal state as-is, caller-side mutations propagate into the persisted data. Return defensive copies or immutable views.
|
|
99
|
+
|
|
100
|
+
| Criterion | Verdict |
|
|
101
|
+
|-----------|---------|
|
|
102
|
+
| The collection is copied but the stored objects themselves are shared (shallow copy only) | REJECT |
|
|
103
|
+
| Mutating an obtained reference rewrites the persisted state | REJECT |
|
|
104
|
+
| Internal state is protected via defensive copies, freezing, or read-only views | OK |
|
|
@@ -88,6 +88,22 @@ In TAKT, workflow runtime is not the only user-visible contract entry. Preview,
|
|
|
88
88
|
| Doctor or validation accepts config that fails at runtime due to different conditions | Warning |
|
|
89
89
|
| Runtime and auxiliary entries share the same normalized input or resolver | OK |
|
|
90
90
|
|
|
91
|
+
## Runtime Asset Consumption Boundaries
|
|
92
|
+
|
|
93
|
+
TAKT runtime assets get their meaning from the entry point that consumes them, not only from their location or name. The same string can be an asset reference, session identifier, display name, or directly supplied body, and each is a separate contract.
|
|
94
|
+
|
|
95
|
+
| Criteria | Judgment |
|
|
96
|
+
|----------|----------|
|
|
97
|
+
| Treating an entry that resolves asset references and an entry that only uses identifiers as equivalent | REJECT |
|
|
98
|
+
| Adding a same-named facet and assuming it affects an entry that receives body content directly | REJECT |
|
|
99
|
+
| Workflow-derived runtime assets and feature-local runtime assets share the same responsibility name | Warning |
|
|
100
|
+
| Each entry point confirms which resolver or loader consumes which asset type before placing the asset | OK |
|
|
101
|
+
| Shared body content is centralized behind the existing runtime asset loader | OK |
|
|
102
|
+
|
|
103
|
+
### Reference Names and Identity Names
|
|
104
|
+
|
|
105
|
+
Strings such as `persona`, `session_key`, and `name` mean different things depending on whether they are reference names or identity names. A reference name causes the corresponding resolver to load an asset. An identity name is a key for sessions, logs, state, or display, and a same-named file is not used unless that entry reads it. When adding a new asset, trace the loader that reads it and the call site that consumes it.
|
|
106
|
+
|
|
91
107
|
## Facet Assembly
|
|
92
108
|
|
|
93
109
|
The faceted-prompting module is independent from TAKT core.
|
|
@@ -153,10 +169,18 @@ Provider errors propagate through: `AgentResponse.error` → session log → con
|
|
|
153
169
|
|
|
154
170
|
## Session Management
|
|
155
171
|
|
|
156
|
-
Agent sessions are stored per-cwd. Session resume is skipped during worktree/clone execution.
|
|
172
|
+
Agent sessions are stored per-cwd and per-provider. Session resume is skipped during worktree/clone execution.
|
|
173
|
+
|
|
174
|
+
When a normal Phase 1 response merely omits `sessionId`, that alone is not a reason to discard the existing session. Paths that are allowed to continue the existing resume context should preserve the old sessionId.
|
|
175
|
+
|
|
176
|
+
However, when a retry or fallback explicitly runs as a new session and succeeds, a missing `sessionId` must not continue using the old resumed session. The storage layer must be told that the new run produced no sessionId, so the old session is cleared or isolated.
|
|
177
|
+
|
|
178
|
+
The Report Phase is Phase 2 and reads Phase 1 outputs. Its execution contract is readonly and tool-free. Report retry/fallback must preserve `permissionMode: readonly`, empty tool permission, and provider capability overrides such as turn limits.
|
|
157
179
|
|
|
158
180
|
| Criteria | Judgment |
|
|
159
181
|
|----------|----------|
|
|
160
182
|
| Session resuming when `cwd !== projectCwd` | REJECT (cross-project contamination) |
|
|
161
183
|
| Session key missing provider identifier | REJECT (cross-provider contamination) |
|
|
162
|
-
| Session broken between phases | REJECT (context loss) |
|
|
184
|
+
| Session broken between phases that should continue context | REJECT (context loss) |
|
|
185
|
+
| Old resumed session remains after successful new-session retry | REJECT (unintended resume) |
|
|
186
|
+
| Report retry/fallback drops readonly mode, tool-free execution, or capability overrides | REJECT |
|
|
@@ -30,6 +30,20 @@ const result = await service.getUser('id')
|
|
|
30
30
|
expect(result).toEqual(user)
|
|
31
31
|
```
|
|
32
32
|
|
|
33
|
+
## Test Double Contract Fidelity
|
|
34
|
+
|
|
35
|
+
When replacing builders, runners, adapters, providers, or similar dependencies with test doubles, match the production semantic contract, not only the TypeScript shape. A test double may simplify only responsibilities the target test does not observe.
|
|
36
|
+
|
|
37
|
+
| Aspect | Check |
|
|
38
|
+
|--------|-------|
|
|
39
|
+
| Return value | Required values, optional values, missing values, and partial-success shapes match production |
|
|
40
|
+
| Input propagation | Overrides, context, options, and other branch-relevant inputs can be received and verified |
|
|
41
|
+
| Constraints | Permissions, capabilities, tool restrictions, and limits propagate with the same meaning as production |
|
|
42
|
+
| Side effects | Session updates, event emission, persistence, and invalidation can be observed |
|
|
43
|
+
| Simplification scope | Test names and expectations do not claim behavior the test double cannot prove |
|
|
44
|
+
|
|
45
|
+
If a test double omits part of the production contract, the test should verify only behavior that does not depend on that omission. In tests for permission propagation, state transitions, or missing-value handling, omitted fields are themselves a common source of bugs.
|
|
46
|
+
|
|
33
47
|
## Boundary Value Analysis
|
|
34
48
|
|
|
35
49
|
Boundary values and equivalence partitioning are fundamental unit testing techniques.
|
|
@@ -14,6 +14,11 @@
|
|
|
14
14
|
| Context fit | ✅ | - |
|
|
15
15
|
| Scope | ✅ | - |
|
|
16
16
|
|
|
17
|
+
## Non-Finding Concerns
|
|
18
|
+
| Item | Location | Classification | Evidence for Not Making a Finding |
|
|
19
|
+
|------|----------|----------------|-----------------------------------|
|
|
20
|
+
| {Concern, or "none"} | `src/file.ts:42` | false_positive / overreach / out_of_scope / no_issue_after_verification | {Evidence} |
|
|
21
|
+
|
|
17
22
|
## Current Iteration Findings (new)
|
|
18
23
|
| # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
|
|
19
24
|
|---|------------|------------|----------|----------|-------|----------------|
|
|
@@ -34,11 +39,16 @@
|
|
|
34
39
|
|---|------------|------------|--------------------------|---------------------|-------|----------------|
|
|
35
40
|
| 1 | AI-REOPENED-src-file-L55 | hallucination | `Previously fixed at src/file.ts:10` | `Recurred at src/file.ts:55` | Issue description | Fix approach |
|
|
36
41
|
|
|
42
|
+
## Re-scan Evidence (required from the second review onward)
|
|
43
|
+
| Policy/Knowledge section checked | Evidence in the diff (`file:line` or "none") |
|
|
44
|
+
|----------------------------------|----------------------------------------------|
|
|
45
|
+
| {section name} | {evidence} |
|
|
46
|
+
|
|
37
47
|
## Rejection Gate
|
|
38
48
|
- REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
39
49
|
- Findings without `finding_id` are invalid
|
|
40
50
|
```
|
|
41
51
|
|
|
42
52
|
**Cognitive load reduction rules:**
|
|
43
|
-
- No issues → Summary sentence + checklist +
|
|
53
|
+
- No issues → Summary sentence + checklist + Re-scan Evidence (from the second iteration onward) + Non-Finding Concerns when needed
|
|
44
54
|
- Issues found → include table rows only for impacted sections (30 lines or fewer)
|
|
@@ -41,11 +41,16 @@ Scope: "In-scope" (fixable in this change) / "Out-of-scope" (existing issue, non
|
|
|
41
41
|
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
42
42
|
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
43
43
|
|
|
44
|
+
## Re-scan Evidence (required from the second review onward)
|
|
45
|
+
| Policy/Knowledge section checked | Evidence in the diff (`file:line` or "none") |
|
|
46
|
+
|----------------------------------|----------------------------------------------|
|
|
47
|
+
| {section name} | {evidence} |
|
|
48
|
+
|
|
44
49
|
## Rejection Gate
|
|
45
50
|
- REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
46
51
|
- Findings without `finding_id` are invalid
|
|
47
52
|
```
|
|
48
53
|
|
|
49
54
|
**Cognitive load reduction rules:**
|
|
50
|
-
- APPROVE → Summary
|
|
55
|
+
- APPROVE → Summary + Verification Evidence + Re-scan Evidence (from the second iteration onward). Omit everything else
|
|
51
56
|
- REJECT → Include only relevant finding rows (30 lines or fewer)
|
|
@@ -13,6 +13,11 @@ Fill this when the diff adds or changes IDs, names, metadata, config, environmen
|
|
|
13
13
|
|--------------|----------------------|--------------------------|---------------|----------|---------------------------------|
|
|
14
14
|
| {normal entry / derived condition / validation / evaluation / output / re-injection, etc.} | {Requirement} | `src/file.ts:42` | `src/file.test.ts:10` | ✅/❌/⚠️ | {none / evidence} |
|
|
15
15
|
|
|
16
|
+
## Non-Finding Concerns
|
|
17
|
+
| Item | Location | Classification | Evidence for Not Making a Finding |
|
|
18
|
+
|------|----------|----------------|-----------------------------------|
|
|
19
|
+
| {Concern, or "none"} | `src/file.ts:42` | false_positive / overreach / out_of_scope / no_issue_after_verification | {Evidence} |
|
|
20
|
+
|
|
16
21
|
## Current Iteration Findings (new)
|
|
17
22
|
| # | finding_id | family_tag | Severity | Location | Issue | Impact | Fix Suggestion |
|
|
18
23
|
|---|------------|------------|----------|----------|-------|--------|----------------|
|
|
@@ -38,11 +43,16 @@ Fill this when the diff adds or changes IDs, names, metadata, config, environmen
|
|
|
38
43
|
- Build: {Result, or state unverified}
|
|
39
44
|
- Tests: {Result, or state unverified}
|
|
40
45
|
|
|
46
|
+
## Re-scan Evidence (required from the second review onward)
|
|
47
|
+
| Policy/Knowledge section checked | Evidence in the diff (`file:line` or "none") |
|
|
48
|
+
|----------------------------------|----------------------------------------------|
|
|
49
|
+
| {section name} | {evidence} |
|
|
50
|
+
|
|
41
51
|
## Rejection Gate
|
|
42
52
|
- REJECT only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
43
53
|
- Findings without `finding_id` are invalid
|
|
44
54
|
```
|
|
45
55
|
|
|
46
56
|
**Cognitive load reduction rules:**
|
|
47
|
-
- APPROVE: Summary plus Contract Entry Check
|
|
57
|
+
- APPROVE: Summary plus Verification Evidence, Contract Entry Check, Re-scan Evidence (from the second iteration onward), and Non-Finding Concerns when needed
|
|
48
58
|
- REJECT: Include only relevant finding rows (30 lines or fewer)
|
|
@@ -40,6 +40,20 @@
|
|
|
40
40
|
"conflictId": "C-012345ABCDEF",
|
|
41
41
|
"evidence": "Evidence that the conflict is adjudicated"
|
|
42
42
|
}
|
|
43
|
+
],
|
|
44
|
+
"waivedFindings": [
|
|
45
|
+
{
|
|
46
|
+
"findingId": "F-0003",
|
|
47
|
+
"reason": "The frozen public contract mandates Record and the hasOwn guard is the complete mitigation",
|
|
48
|
+
"evidence": "src/types.ts:94, src/domain.ts:82"
|
|
49
|
+
}
|
|
50
|
+
],
|
|
51
|
+
"disputeNotes": [
|
|
52
|
+
{
|
|
53
|
+
"findingId": "F-0004",
|
|
54
|
+
"reason": "The coder claimed a spec constraint but the evidence does not point at the location; rejected",
|
|
55
|
+
"evidence": "src/store.ts:10"
|
|
56
|
+
}
|
|
43
57
|
]
|
|
44
58
|
}
|
|
45
59
|
```
|
package/builtins/en/facets/output-contracts/implementation-semantics-review-finding-contract.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Implementation Semantics Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{1-2 sentence summary of the review outcome}
|
|
8
|
+
|
|
9
|
+
## Observed Findings
|
|
10
|
+
| # | family_tag | Severity | Location | Problem | Breaking Condition | Suggested Fix |
|
|
11
|
+
|---|------------|----------|----------|---------|--------------------|---------------|
|
|
12
|
+
| 1 | data-structure | High / Medium / Low | `src/file.ts:42` | {problem} | {which input or state breaks it} | {suggested fix} |
|
|
13
|
+
|
|
14
|
+
## Verification Evidence
|
|
15
|
+
- Diff check: {what was verified}
|
|
16
|
+
- Citation check: {confirmation that every cited file:line was verified against the actual code}
|
|
17
|
+
|
|
18
|
+
## REJECT Criteria
|
|
19
|
+
- REJECT only when at least one blocking finding exists
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Cognitive-load rules:**
|
|
23
|
+
- APPROVE -> summary only (within 5 lines)
|
|
24
|
+
- REJECT -> only the relevant findings in the table (within 30 lines)
|
|
25
|
+
|
|
26
|
+
**Cognitive-load rules:**
|
|
27
|
+
- APPROVE -> summary only (within 5 lines)
|
|
28
|
+
- REJECT -> only the relevant findings in the table (within 30 lines)
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Implementation Semantics Review
|
|
3
|
+
|
|
4
|
+
## Verdict: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{1-2 sentence summary of the review result}
|
|
8
|
+
|
|
9
|
+
## Non-Finding Concerns
|
|
10
|
+
| Item | Location | Category | Reason not raised as a finding |
|
|
11
|
+
|------|----------|----------|--------------------------------|
|
|
12
|
+
| {concern, or "none"} | `src/file.ts:42` | false_positive / overreach / out_of_scope / no_issue_after_verification | {reason} |
|
|
13
|
+
|
|
14
|
+
## New Findings (new)
|
|
15
|
+
| # | finding_id | family_tag | Severity | Location | Problem | Breaking condition | Fix |
|
|
16
|
+
|---|------------|------------|----------|----------|---------|--------------------|-----|
|
|
17
|
+
| 1 | SEM-NEW-src-file-L42 | data-structure | High / Medium / Low | `src/file.ts:42` | {problem} | {what input/state breaks it} | {fix} |
|
|
18
|
+
|
|
19
|
+
## Persisting Findings (persists)
|
|
20
|
+
| # | finding_id | family_tag | Previous evidence | Current evidence | Problem | Fix |
|
|
21
|
+
|---|------------|------------|-------------------|------------------|---------|-----|
|
|
22
|
+
| 1 | SEM-PERSIST-src-file-L77 | derived-state | `src/file.ts:77` | `src/file.ts:77` | {unresolved problem} | {fix} |
|
|
23
|
+
|
|
24
|
+
## Resolved (resolved)
|
|
25
|
+
| finding_id | Original acceptance condition | Resolution evidence |
|
|
26
|
+
|------------|------------------------------|---------------------|
|
|
27
|
+
| SEM-RESOLVED-src-file-L10 | {acceptance condition of the original finding} | resolved at `src/file.ts:10` |
|
|
28
|
+
|
|
29
|
+
## Reopened Findings (reopened)
|
|
30
|
+
| # | finding_id | family_tag | Resolution evidence (previous) | Recurrence evidence | Problem | Fix |
|
|
31
|
+
|---|------------|------------|-------------------------------|---------------------|---------|-----|
|
|
32
|
+
| 1 | SEM-REOPENED-src-file-L55 | fail-fast | `previous: src/file.ts:10` | `src/file.ts:55` | {recurred problem} | {fix} |
|
|
33
|
+
|
|
34
|
+
## Verification Evidence
|
|
35
|
+
- Diff check: {what was checked}
|
|
36
|
+
- Citation existence check: {confirmation that every cited file:line was verified against real code}
|
|
37
|
+
|
|
38
|
+
## Re-scan Evidence (required from the second review onward)
|
|
39
|
+
| Policy/Knowledge chapter checked | Diff-side evidence (`file:line` or "none applicable") |
|
|
40
|
+
|----------------------------------|------------------------------------------------------|
|
|
41
|
+
| {chapter} | {evidence} |
|
|
42
|
+
|
|
43
|
+
## Rejection Gate
|
|
44
|
+
- REJECT only when there is at least one `new`, `persists`, or `reopened` finding
|
|
45
|
+
- Findings without a `finding_id` are invalid
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
**Cognitive load reduction rules:**
|
|
49
|
+
- APPROVE → Summary + Verification Evidence + Re-scan Evidence (from the second iteration onward), plus Non-Finding Concerns only when needed
|
|
50
|
+
- REJECT → List only the applicable findings in tables (30 lines or fewer)
|
|
@@ -1,19 +1,25 @@
|
|
|
1
1
|
```markdown
|
|
2
|
-
#
|
|
2
|
+
# Merge Readiness Review
|
|
3
3
|
|
|
4
4
|
## Result: APPROVE / REJECT
|
|
5
5
|
|
|
6
6
|
## Summary
|
|
7
|
-
{Summarize in 1-2 sentences whether this change is
|
|
7
|
+
{Summarize in 1-2 sentences whether this change is quality-ready for a codebase that must be maintained going forward. If REJECT, mention the largest blocker first}
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Maintainability-Aware Merge Quality Check
|
|
10
10
|
| # | Area | Status | Evidence (file:line / test / execution evidence) | Comment |
|
|
11
11
|
|---|------|--------|--------------------------------------------------|---------|
|
|
12
12
|
| 1 | Requirement fulfillment | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
|
|
13
13
|
| 2 | Existing contract and existing-flow impact | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
14
|
-
| 3 | Tests and verification | Sufficient / Insufficient / Unverified | `
|
|
14
|
+
| 3 | Tests and verification | Sufficient / Insufficient / Unverified | `test evidence` | {Notes} |
|
|
15
15
|
| 4 | Out-of-scope changes and scope creep | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
16
|
-
| 5 |
|
|
16
|
+
| 5 | Maintainability and future changeability | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
17
|
+
| 6 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
18
|
+
|
|
19
|
+
## Cross-Audit Evidence
|
|
20
|
+
| # | Change Category | Extracted Item | Search Terms / Files Checked | Judgment | Comment |
|
|
21
|
+
|---|-----------------|----------------|------------------------------|----------|---------|
|
|
22
|
+
| 1 | ID / config / output contract / type / helper / adapter / entrypoint | {item} | `{search term}` / `file:line` | No issue / Issue found / Unverified | {Notes} |
|
|
17
23
|
|
|
18
24
|
## Requirements Cross-Reference
|
|
19
25
|
| # | Requirement (from task) | Status | Evidence (file:line) | Comment |
|
|
@@ -28,7 +34,7 @@
|
|
|
28
34
|
## Observed Findings
|
|
29
35
|
| # | family_tag | Category | Severity | Location | Issue | Fix Suggestion |
|
|
30
36
|
|---|------------|----------|----------|----------|-------|----------------|
|
|
31
|
-
| 1 |
|
|
37
|
+
| 1 | maintainability-readiness | Regression / Requirement gap / Missing tests / Contract break / Maintainability degradation / Scope creep | high / medium / low | `src/file.ts:42` | Issue description | Fix suggestion |
|
|
32
38
|
|
|
33
39
|
## Verification Evidence
|
|
34
40
|
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
@@ -37,9 +43,9 @@
|
|
|
37
43
|
|
|
38
44
|
## Rejection Gate
|
|
39
45
|
- REJECT if at least one merge-blocking finding is observed
|
|
40
|
-
- Unverified areas should block merge only when they affect
|
|
46
|
+
- Unverified areas should block merge only when they affect maintainability-aware merge quality
|
|
41
47
|
```
|
|
42
48
|
|
|
43
49
|
**Cognitive load reduction rules:**
|
|
44
|
-
- APPROVE: Summary +
|
|
50
|
+
- APPROVE: Summary + Maintainability-Aware Merge Quality Check + Cross-Audit Evidence only (15 lines or fewer)
|
|
45
51
|
- REJECT: Prioritize blocker findings (40 lines or fewer)
|
|
@@ -1,19 +1,25 @@
|
|
|
1
1
|
```markdown
|
|
2
|
-
#
|
|
2
|
+
# Merge Readiness Review
|
|
3
3
|
|
|
4
4
|
## Result: APPROVE / REJECT
|
|
5
5
|
|
|
6
6
|
## Summary
|
|
7
|
-
{Summarize in 1-2 sentences whether this change is
|
|
7
|
+
{Summarize in 1-2 sentences whether this change is quality-ready for a codebase that must be maintained going forward. If REJECT, mention the largest blocker first}
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Maintainability-Aware Merge Quality Check
|
|
10
10
|
| # | Area | Status | Evidence (file:line / test / execution evidence) | Comment |
|
|
11
11
|
|---|------|--------|--------------------------------------------------|---------|
|
|
12
12
|
| 1 | Requirement fulfillment | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
|
|
13
13
|
| 2 | Existing contract and existing-flow impact | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
14
|
-
| 3 | Tests and verification | Sufficient / Insufficient / Unverified | `
|
|
14
|
+
| 3 | Tests and verification | Sufficient / Insufficient / Unverified | `test evidence` | {Notes} |
|
|
15
15
|
| 4 | Out-of-scope changes and scope creep | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
16
|
-
| 5 |
|
|
16
|
+
| 5 | Maintainability and future changeability | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
17
|
+
| 6 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
18
|
+
|
|
19
|
+
## Cross-Audit Evidence
|
|
20
|
+
| # | Change Category | Extracted Item | Search Terms / Files Checked | Judgment | Comment |
|
|
21
|
+
|---|-----------------|----------------|------------------------------|----------|---------|
|
|
22
|
+
| 1 | ID / config / output contract / type / helper / adapter / entrypoint | {item} | `{search term}` / `file:line` | No issue / Issue found / Unverified | {Notes} |
|
|
17
23
|
|
|
18
24
|
## Requirements Cross-Reference
|
|
19
25
|
| # | Requirement (from task) | Original Requirement Source | Status | Evidence (file:line) | Exception / Unverified Evidence |
|
|
@@ -28,22 +34,22 @@
|
|
|
28
34
|
## Current Iteration Findings (new)
|
|
29
35
|
| # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
|
|
30
36
|
|---|------------|------------|----------|----------|-------|----------------|
|
|
31
|
-
| 1 |
|
|
37
|
+
| 1 | MERGE-NEW-src-file-L42 | maintainability-readiness | Regression / Requirement gap / Missing tests / Contract break / Maintainability degradation / Scope creep | `src/file.ts:42` | Issue description | Fix suggestion |
|
|
32
38
|
|
|
33
39
|
## Carry-over Findings (persists)
|
|
34
40
|
| # | finding_id | family_tag | Previous Evidence | Current Evidence | Issue | Fix Suggestion |
|
|
35
41
|
|---|------------|------------|-------------------|------------------|-------|----------------|
|
|
36
|
-
| 1 |
|
|
42
|
+
| 1 | MERGE-PERSIST-src-file-L77 | maintainability-readiness | `file:line` | `file:line` | Unresolved | Fix suggestion |
|
|
37
43
|
|
|
38
44
|
## Resolved Findings (resolved)
|
|
39
45
|
| finding_id | Original Expected Result | Resolution Evidence |
|
|
40
46
|
|------------|--------------------------|---------------------|
|
|
41
|
-
|
|
|
47
|
+
| MERGE-RESOLVED-src-file-L10 | {Original finding acceptance criteria} | `file:line` resolves the issue |
|
|
42
48
|
|
|
43
49
|
## Reopened Findings (reopened)
|
|
44
50
|
| # | finding_id | family_tag | Prior Resolution Evidence | Recurrence Evidence | Issue | Fix Suggestion |
|
|
45
51
|
|---|------------|------------|--------------------------|---------------------|-------|----------------|
|
|
46
|
-
| 1 |
|
|
52
|
+
| 1 | MERGE-REOPENED-src-file-L55 | maintainability-readiness | `Previously fixed at file:line` | `Recurred at file:line` | Issue description | Fix approach |
|
|
47
53
|
|
|
48
54
|
## Verification Evidence
|
|
49
55
|
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
@@ -53,9 +59,9 @@
|
|
|
53
59
|
## Rejection Gate
|
|
54
60
|
- REJECT if at least one merge-blocking issue exists in `new`, `persists`, or `reopened`
|
|
55
61
|
- Findings without `finding_id` are invalid
|
|
56
|
-
- Unverified areas should block merge only when they affect
|
|
62
|
+
- Unverified areas should block merge only when they affect maintainability-aware merge quality
|
|
57
63
|
```
|
|
58
64
|
|
|
59
65
|
**Cognitive load reduction rules:**
|
|
60
|
-
- APPROVE: Summary +
|
|
66
|
+
- APPROVE: Summary + Maintainability-Aware Merge Quality Check + Cross-Audit Evidence only (15 lines or fewer)
|
|
61
67
|
- REJECT: Prioritize blocker findings (40 lines or fewer)
|
|
@@ -18,7 +18,7 @@ Extract requirements from the task spec and verify each one individually against
|
|
|
18
18
|
- ✅ without evidence is invalid (must verify against actual code)
|
|
19
19
|
- Do not mark a row as ✅ when the evidence covers only part of the cases
|
|
20
20
|
- Treat optionalization, exclusion, or exception not present in the task spec as unmet
|
|
21
|
-
- Do not rely on plan report's judgment; independently verify
|
|
21
|
+
- Do not rely on plan report's judgment; independently verify maintainability-aware merge quality
|
|
22
22
|
|
|
23
23
|
## Re-evaluation of Prior Findings
|
|
24
24
|
| finding_id | Prior Status | Original Expected Result | Re-evaluation | Evidence |
|
|
@@ -28,7 +28,11 @@ Extract requirements from the task spec and verify each one individually against
|
|
|
28
28
|
- If final judgment differs from prior review conclusions, explain why with evidence
|
|
29
29
|
- Treat `resolved` as valid only when it satisfies the original expected result and original requirement
|
|
30
30
|
- If marking `false_positive` or `overreach`, state whether it conflicts with the task objective, the plan, or both
|
|
31
|
-
|
|
31
|
+
|
|
32
|
+
## Unclassified Concern Check
|
|
33
|
+
| Review | Concern | Finding State | Supervisor Judgment | Evidence |
|
|
34
|
+
|--------|---------|---------------|---------------------|----------|
|
|
35
|
+
| {Review name} | {Concern, or "none"} | made finding / classified non-finding / unclassified | valid / REJECT reason / out of scope | `src/file.ts:42` |
|
|
32
36
|
|
|
33
37
|
## Maintenance Scope Check (maintenance workflows only)
|
|
34
38
|
|
|
@@ -1,11 +1,36 @@
|
|
|
1
1
|
```markdown
|
|
2
2
|
# Test Creation Report
|
|
3
3
|
|
|
4
|
+
## Requirement-Test Matrix
|
|
5
|
+
| Requirement ID | Observable Contract | Entry / Path | Test | Result | Uncovered Reason |
|
|
6
|
+
|----------------|---------------------|--------------|------|--------|------------------|
|
|
7
|
+
| `{ID}` | {return value, persisted format, config key, CLI output, event, error classification, side effect, etc.} | {CLI / config load / config save / runtime / batch / child / event / persistence, etc.} | `{test name or test file}` | Created / Existing / Not created | {reason only when not created} |
|
|
8
|
+
|
|
9
|
+
## Risky Branch Tests
|
|
10
|
+
| Branch | Incorrect Implementation To Catch | Test | Uncovered Reason |
|
|
11
|
+
|--------|-----------------------------------|------|------------------|
|
|
12
|
+
| {missing, unknown, invalid value, precedence conflict, override, round-trip, partial failure, etc.} | {incorrect implementation this test should detect} | `{test name or test file}` | {reason only when not created} |
|
|
13
|
+
|
|
14
|
+
## Cross-Path Tests
|
|
15
|
+
| Path | Producer | Consumer | Contract Guaranteed | Test | Uncovered Reason |
|
|
16
|
+
|------|----------|----------|---------------------|------|------------------|
|
|
17
|
+
| {path from entry point to endpoint} | {where the value or state is produced} | {where the value or state is consumed} | {propagation, conversion, persistence, event emission, etc.} | `{test name or test file}` | {reason only when not created} |
|
|
18
|
+
|
|
19
|
+
## Negative Contracts
|
|
20
|
+
| Prohibited Behavior | Observation Method | Test | Uncovered Reason |
|
|
21
|
+
|---------------------|--------------------|------|------------------|
|
|
22
|
+
| {value that must not be emitted, format that must not be saved, data that must not be sent, etc.} | {how to observe it as behavior} | `{test name or test file}` | {reason only when not created} |
|
|
23
|
+
|
|
4
24
|
## Created Tests
|
|
5
25
|
| File | Type | Count | Summary |
|
|
6
26
|
|------|------|-------|---------|
|
|
7
27
|
| `{test file path}` | Unit / Integration | {N} | {what is tested} |
|
|
8
28
|
|
|
29
|
+
## Uncovered Items
|
|
30
|
+
| Requirement / Branch | Uncovered Reason | Required Follow-up |
|
|
31
|
+
|----------------------|------------------|--------------------|
|
|
32
|
+
| {uncovered requirement or branch} | {why it was not tested} | {implementation, review, or manual verification needed later} |
|
|
33
|
+
|
|
9
34
|
## Execution Results (Reference)
|
|
10
35
|
Test failures and import errors are expected before implementation.
|
|
11
36
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Implementation Semantics Reviewer
|
|
2
|
+
|
|
3
|
+
You are a code reviewer specializing in implementation semantics. You detect the micro-level design flaws that slip through passing tests: data structure choice, state normalization, naming-meaning alignment, and fail-fast at boundaries.
|
|
4
|
+
|
|
5
|
+
## Role Boundaries
|
|
6
|
+
|
|
7
|
+
**What you do:**
|
|
8
|
+
- Verify that dictionary, collection, and type choices match the meaning of the data they hold
|
|
9
|
+
- Verify that no value is kept in parallel when it can be derived (single source of truth violations)
|
|
10
|
+
- Verify that variable, parameter, and field names match the meaning of the values actually stored
|
|
11
|
+
- Verify that impossible states and invalid inputs are not silently ignored
|
|
12
|
+
- Verify that references to internal state do not leak out raw
|
|
13
|
+
|
|
14
|
+
**What you don't do:**
|
|
15
|
+
- Evaluate module decomposition, layers, or dependency direction (architecture-reviewer's job)
|
|
16
|
+
- Flag coding conventions, spec compliance, or missing tests (coding-reviewer's job)
|
|
17
|
+
- Detect AI-specific antipatterns (ai-antipattern-reviewer's job)
|
|
18
|
+
- Write code yourself
|
|
19
|
+
- Demand rewrites based on preference alone
|
|
20
|
+
|
|
21
|
+
## Behavioral Stance
|
|
22
|
+
|
|
23
|
+
- Ask "is the meaning correct", not "do the tests pass"
|
|
24
|
+
- Tie every finding to real code lines and the concrete conditions under which it breaks
|
|
25
|
+
- Aggregate multiple locations of the same kind of problem into one representative finding and spend the remaining attention hunting different kinds
|
|
26
|
+
- Do not raise findings whose reason to fix is weak
|
|
27
|
+
- APPROVE when there is no problem
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Merge Readiness Reviewer
|
|
2
|
+
|
|
3
|
+
You are the final gate reviewer who decides whether the converged change is quality-ready to enter a codebase that must be maintained going forward. Without limiting yourself to one specialty, inspect the accumulated diff, surrounding code, and execution evidence for cross-cutting misses, maintainability risks, and merge blockers.
|
|
4
|
+
|
|
5
|
+
## Role Boundaries
|
|
6
|
+
|
|
7
|
+
**Do:**
|
|
8
|
+
- Judge whether the change is quality-ready for a maintainable codebase based on actual code and diffs
|
|
9
|
+
- Detect unmet requests, broken existing behavior, missing tests, out-of-scope changes, maintainability degradation, and obvious risks
|
|
10
|
+
- Check cross-cutting coverage for changed contracts, identifiers, config, outputs, entry points, and persisted/displayed/executed paths
|
|
11
|
+
- Report only blocking issues with concrete evidence
|
|
12
|
+
|
|
13
|
+
**Don't:**
|
|
14
|
+
- Write code yourself
|
|
15
|
+
- Deep-review architecture direction; that is the Architecture Reviewer's job
|
|
16
|
+
- Deep-review security vulnerabilities; that is the Security Reviewer's job
|
|
17
|
+
- Deep-review test design; that is the Testing Reviewer's job
|
|
18
|
+
- Deep-review code style or implementation craft; that is the Coding Reviewer's job
|
|
19
|
+
|
|
20
|
+
## Behavioral Principles
|
|
21
|
+
|
|
22
|
+
- Keep the final question as: "Is this change quality-ready for a codebase we must keep maintaining?"
|
|
23
|
+
- Re-check the accumulated diff even when specialist reviews have passed
|
|
24
|
+
- Trace changed names, contracts, and entry points across same-kind usages
|
|
25
|
+
- Do not miss states that future maintainers cannot safely trace, modify, or verify
|
|
26
|
+
- Do not mark an item verified unless you actually searched or inspected it
|
|
27
|
+
- Judge `resolved` against the original finding's expected result and acceptance criteria
|
|
28
|
+
- Report only issues that should block the merge, not preferences or general advice
|
|
@@ -22,7 +22,7 @@ you verify "**was the right thing built (Validation)**".
|
|
|
22
22
|
## Behavioral Principles
|
|
23
23
|
|
|
24
24
|
- Re-check requirements yourself. Do not adopt the decomposition from earlier reviews without verification
|
|
25
|
-
- Treat `
|
|
25
|
+
- Treat `merge-readiness-review` as supporting material, not as the final answer
|
|
26
26
|
- Mark missing execution evidence as unverified instead of assuming success
|
|
27
27
|
- Treat contradictions between report text and execution evidence as first-class findings
|
|
28
28
|
- Distinguish `false_positive` from `overreach`; a technically invalid finding and a scope-exceeding finding are not the same
|