takt 0.45.0 → 0.47.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 +55 -2
- package/builtins/en/config.yaml +37 -12
- package/builtins/en/facets/instructions/findings-manager.md +13 -0
- package/builtins/en/facets/instructions/fix.md +9 -4
- package/builtins/en/facets/instructions/implement-maintenance.md +5 -32
- package/builtins/en/facets/instructions/implement.md +3 -2
- package/builtins/en/facets/instructions/loop-monitor-reviewers-fix.md +5 -1
- package/builtins/en/facets/instructions/plan-test.md +4 -3
- package/builtins/en/facets/instructions/review-arch.md +1 -1
- package/builtins/en/facets/instructions/review-coding.md +11 -5
- package/builtins/en/facets/instructions/review-cqrs-es.md +1 -1
- package/builtins/en/facets/instructions/review-pure.md +9 -0
- package/builtins/en/facets/instructions/review-qa.md +2 -0
- package/builtins/en/facets/instructions/review-terraform.md +1 -1
- package/builtins/en/facets/instructions/review-test.md +3 -0
- package/builtins/en/facets/instructions/supervise-maintenance.md +7 -77
- package/builtins/en/facets/instructions/supervise.md +12 -65
- package/builtins/en/facets/instructions/write-tests-first.md +1 -0
- package/builtins/en/facets/instructions/write-tests-maintenance.md +1 -0
- package/builtins/en/facets/knowledge/architecture.md +31 -0
- package/builtins/en/facets/knowledge/backend.md +25 -1
- package/builtins/en/facets/knowledge/cqrs-es.md +57 -0
- package/builtins/en/facets/knowledge/e2e-testing.md +11 -1
- package/builtins/en/facets/knowledge/unit-testing.md +11 -0
- package/builtins/en/facets/output-contracts/ai-antipattern-review-finding-contract.md +31 -0
- package/builtins/en/facets/output-contracts/architecture-review-finding-contract.md +35 -0
- package/builtins/en/facets/output-contracts/coding-review-finding-contract.md +25 -0
- package/builtins/en/facets/output-contracts/coding-review.md +11 -4
- package/builtins/en/facets/output-contracts/cqrs-es-review-finding-contract.md +31 -0
- package/builtins/en/facets/output-contracts/findings-manager.md +45 -0
- package/builtins/en/facets/output-contracts/frontend-review-finding-contract.md +30 -0
- package/builtins/en/facets/output-contracts/maintenance-scope.md +5 -0
- package/builtins/en/facets/output-contracts/pure-review-finding-contract.md +45 -0
- package/builtins/en/facets/output-contracts/pure-review.md +61 -0
- package/builtins/en/facets/output-contracts/qa-review-finding-contract.md +35 -0
- package/builtins/en/facets/output-contracts/qa-review.md +15 -3
- package/builtins/en/facets/output-contracts/security-review-finding-contract.md +36 -0
- package/builtins/en/facets/output-contracts/supervisor-validation.md +35 -11
- package/builtins/en/facets/output-contracts/terraform-review-finding-contract.md +31 -0
- package/builtins/en/facets/output-contracts/testing-review-finding-contract.md +41 -0
- package/builtins/en/facets/output-contracts/testing-review.md +6 -1
- package/builtins/en/facets/personas/ai-antipattern-reviewer.md +2 -2
- package/builtins/en/facets/personas/architecture-reviewer.md +1 -1
- package/builtins/en/facets/personas/findings-manager.md +18 -0
- package/builtins/en/facets/personas/pr-commenter.md +2 -2
- package/builtins/en/facets/personas/pure-reviewer.md +22 -0
- package/builtins/en/facets/personas/supervisor.md +1 -1
- package/builtins/en/facets/personas/terraform-reviewer.md +3 -3
- package/builtins/en/facets/policies/ai-antipattern.md +33 -0
- package/builtins/en/facets/policies/coding.md +36 -0
- package/builtins/en/facets/policies/review.md +90 -17
- package/builtins/en/facets/policies/testing.md +49 -0
- package/builtins/en/provider-options/edit.yaml +21 -0
- package/builtins/en/provider-options/review-files.yaml +10 -0
- package/builtins/en/provider-options/review-readonly.yaml +16 -0
- package/builtins/en/provider-options/review-web.yaml +14 -0
- package/builtins/en/workflow-categories.yaml +1 -0
- package/builtins/en/workflows/audit-architecture-backend.yaml +8 -0
- package/builtins/en/workflows/audit-architecture-dual.yaml +8 -0
- package/builtins/en/workflows/audit-architecture-frontend.yaml +8 -0
- package/builtins/en/workflows/audit-architecture.yaml +8 -0
- package/builtins/en/workflows/audit-e2e.yaml +8 -0
- package/builtins/en/workflows/audit-security.yaml +8 -0
- package/builtins/en/workflows/audit-unit.yaml +8 -0
- package/builtins/en/workflows/auto-improvement-loop.yaml +6 -0
- package/builtins/en/workflows/backend-cqrs-mini.yaml +20 -0
- package/builtins/en/workflows/backend-cqrs.yaml +60 -1
- package/builtins/en/workflows/backend-mini.yaml +20 -0
- package/builtins/en/workflows/backend.yaml +60 -1
- package/builtins/en/workflows/compound-eye.yaml +8 -0
- package/builtins/en/workflows/deep-research.yaml +8 -0
- package/builtins/en/workflows/default-draft.yaml +6 -0
- package/builtins/en/workflows/default-high.yaml +7 -1
- package/builtins/en/workflows/default-mini.yaml +2 -0
- package/builtins/en/workflows/default-peer-review.yaml +41 -4
- package/builtins/en/workflows/default.yaml +4 -0
- package/builtins/en/workflows/draft.yaml +12 -32
- package/builtins/en/workflows/dual-cqrs-mini.yaml +20 -0
- package/builtins/en/workflows/dual-cqrs.yaml +56 -1
- package/builtins/en/workflows/dual-mini.yaml +20 -0
- package/builtins/en/workflows/dual.yaml +44 -6
- package/builtins/en/workflows/frontend-maintenance.yaml +62 -1
- package/builtins/en/workflows/frontend-mini.yaml +20 -0
- package/builtins/en/workflows/frontend.yaml +62 -1
- package/builtins/en/workflows/magi.yaml +6 -0
- package/builtins/en/workflows/peer-review-with-fc.yaml +206 -0
- package/builtins/en/workflows/peer-review.yaml +35 -72
- package/builtins/en/workflows/research.yaml +6 -0
- package/builtins/en/workflows/review-backend-cqrs.yaml +42 -1
- package/builtins/en/workflows/review-backend.yaml +40 -1
- package/builtins/en/workflows/review-default.yaml +27 -7
- package/builtins/en/workflows/review-dual-cqrs.yaml +44 -1
- package/builtins/en/workflows/review-dual.yaml +42 -1
- package/builtins/en/workflows/review-fix-backend-cqrs.yaml +46 -1
- package/builtins/en/workflows/review-fix-backend.yaml +44 -1
- package/builtins/en/workflows/review-fix-default.yaml +31 -7
- package/builtins/en/workflows/review-fix-dual-cqrs.yaml +48 -1
- package/builtins/en/workflows/review-fix-dual.yaml +46 -1
- package/builtins/en/workflows/review-fix-frontend.yaml +46 -1
- package/builtins/en/workflows/review-fix-takt-default.yaml +38 -6
- package/builtins/en/workflows/review-frontend.yaml +42 -1
- package/builtins/en/workflows/review-takt-default.yaml +29 -7
- package/builtins/en/workflows/takt-default-refresh-all.yaml +36 -6
- package/builtins/en/workflows/takt-default-refresh-fast.yaml +35 -5
- package/builtins/en/workflows/takt-default-with-fc.yaml +110 -0
- package/builtins/en/workflows/takt-default.yaml +10 -27
- package/builtins/en/workflows/terraform.yaml +52 -3
- package/builtins/ja/config.yaml +37 -12
- package/builtins/ja/facets/instructions/findings-manager.md +13 -0
- package/builtins/ja/facets/instructions/fix.md +9 -4
- package/builtins/ja/facets/instructions/implement-maintenance.md +5 -32
- package/builtins/ja/facets/instructions/implement.md +3 -2
- package/builtins/ja/facets/instructions/loop-monitor-reviewers-fix.md +5 -1
- package/builtins/ja/facets/instructions/plan-test.md +4 -3
- package/builtins/ja/facets/instructions/review-arch.md +1 -1
- package/builtins/ja/facets/instructions/review-coding.md +11 -5
- package/builtins/ja/facets/instructions/review-cqrs-es.md +1 -1
- package/builtins/ja/facets/instructions/review-pure.md +9 -0
- package/builtins/ja/facets/instructions/review-qa.md +2 -0
- package/builtins/ja/facets/instructions/review-terraform.md +1 -1
- package/builtins/ja/facets/instructions/review-test.md +3 -0
- package/builtins/ja/facets/instructions/supervise-maintenance.md +7 -77
- package/builtins/ja/facets/instructions/supervise.md +12 -66
- package/builtins/ja/facets/instructions/write-tests-first.md +1 -0
- package/builtins/ja/facets/instructions/write-tests-maintenance.md +1 -0
- package/builtins/ja/facets/knowledge/architecture.md +31 -0
- package/builtins/ja/facets/knowledge/backend.md +25 -1
- package/builtins/ja/facets/knowledge/cqrs-es.md +31 -0
- package/builtins/ja/facets/knowledge/e2e-testing.md +11 -1
- package/builtins/ja/facets/knowledge/unit-testing.md +11 -0
- package/builtins/ja/facets/output-contracts/ai-antipattern-review-finding-contract.md +31 -0
- package/builtins/ja/facets/output-contracts/architecture-review-finding-contract.md +35 -0
- package/builtins/ja/facets/output-contracts/coding-review-finding-contract.md +25 -0
- package/builtins/ja/facets/output-contracts/coding-review.md +11 -4
- package/builtins/ja/facets/output-contracts/cqrs-es-review-finding-contract.md +31 -0
- package/builtins/ja/facets/output-contracts/findings-manager.md +45 -0
- package/builtins/ja/facets/output-contracts/frontend-review-finding-contract.md +30 -0
- package/builtins/ja/facets/output-contracts/maintenance-scope.md +5 -0
- package/builtins/ja/facets/output-contracts/pure-review-finding-contract.md +45 -0
- package/builtins/ja/facets/output-contracts/pure-review.md +61 -0
- package/builtins/ja/facets/output-contracts/qa-review-finding-contract.md +35 -0
- package/builtins/ja/facets/output-contracts/qa-review.md +15 -3
- package/builtins/ja/facets/output-contracts/security-review-finding-contract.md +36 -0
- package/builtins/ja/facets/output-contracts/supervisor-validation.md +35 -11
- package/builtins/ja/facets/output-contracts/terraform-review-finding-contract.md +31 -0
- package/builtins/ja/facets/output-contracts/testing-review-finding-contract.md +41 -0
- package/builtins/ja/facets/output-contracts/testing-review.md +6 -1
- package/builtins/ja/facets/personas/ai-antipattern-reviewer.md +2 -2
- package/builtins/ja/facets/personas/architecture-reviewer.md +2 -2
- package/builtins/ja/facets/personas/findings-manager.md +18 -0
- package/builtins/ja/facets/personas/pr-commenter.md +3 -3
- package/builtins/ja/facets/personas/pure-reviewer.md +22 -0
- package/builtins/ja/facets/personas/supervisor.md +1 -1
- package/builtins/ja/facets/personas/terraform-reviewer.md +3 -3
- package/builtins/ja/facets/policies/ai-antipattern.md +17 -0
- package/builtins/ja/facets/policies/coding.md +36 -0
- package/builtins/ja/facets/policies/review.md +88 -17
- package/builtins/ja/facets/policies/testing.md +49 -0
- package/builtins/ja/provider-options/edit.yaml +21 -0
- package/builtins/ja/provider-options/review-files.yaml +10 -0
- package/builtins/ja/provider-options/review-readonly.yaml +16 -0
- package/builtins/ja/provider-options/review-web.yaml +14 -0
- package/builtins/ja/workflow-categories.yaml +1 -0
- package/builtins/ja/workflows/audit-architecture-backend.yaml +8 -0
- package/builtins/ja/workflows/audit-architecture-dual.yaml +8 -0
- package/builtins/ja/workflows/audit-architecture-frontend.yaml +8 -0
- package/builtins/ja/workflows/audit-architecture.yaml +8 -0
- package/builtins/ja/workflows/audit-e2e.yaml +8 -0
- package/builtins/ja/workflows/audit-security.yaml +8 -0
- package/builtins/ja/workflows/audit-unit.yaml +8 -0
- package/builtins/ja/workflows/auto-improvement-loop.yaml +6 -0
- package/builtins/ja/workflows/backend-cqrs-mini.yaml +20 -0
- package/builtins/ja/workflows/backend-cqrs.yaml +60 -1
- package/builtins/ja/workflows/backend-mini.yaml +20 -0
- package/builtins/ja/workflows/backend.yaml +60 -1
- package/builtins/ja/workflows/compound-eye.yaml +8 -0
- package/builtins/ja/workflows/deep-research.yaml +8 -0
- package/builtins/ja/workflows/default-draft.yaml +6 -0
- package/builtins/ja/workflows/default-high.yaml +7 -1
- package/builtins/ja/workflows/default-mini.yaml +2 -0
- package/builtins/ja/workflows/default-peer-review.yaml +41 -4
- package/builtins/ja/workflows/default.yaml +4 -0
- package/builtins/ja/workflows/draft.yaml +12 -32
- package/builtins/ja/workflows/dual-cqrs-mini.yaml +20 -0
- package/builtins/ja/workflows/dual-cqrs.yaml +56 -1
- package/builtins/ja/workflows/dual-mini.yaml +20 -0
- package/builtins/ja/workflows/dual.yaml +44 -6
- package/builtins/ja/workflows/frontend-maintenance.yaml +62 -1
- package/builtins/ja/workflows/frontend-mini.yaml +20 -0
- package/builtins/ja/workflows/frontend.yaml +62 -1
- package/builtins/ja/workflows/magi.yaml +6 -0
- package/builtins/ja/workflows/peer-review-with-fc.yaml +206 -0
- package/builtins/ja/workflows/peer-review.yaml +35 -72
- package/builtins/ja/workflows/research.yaml +6 -0
- package/builtins/ja/workflows/review-backend-cqrs.yaml +42 -1
- package/builtins/ja/workflows/review-backend.yaml +40 -1
- package/builtins/ja/workflows/review-default.yaml +28 -8
- package/builtins/ja/workflows/review-dual-cqrs.yaml +44 -1
- package/builtins/ja/workflows/review-dual.yaml +42 -1
- package/builtins/ja/workflows/review-fix-backend-cqrs.yaml +46 -1
- package/builtins/ja/workflows/review-fix-backend.yaml +44 -1
- package/builtins/ja/workflows/review-fix-default.yaml +31 -7
- package/builtins/ja/workflows/review-fix-dual-cqrs.yaml +48 -1
- package/builtins/ja/workflows/review-fix-dual.yaml +46 -1
- package/builtins/ja/workflows/review-fix-frontend.yaml +46 -1
- package/builtins/ja/workflows/review-fix-takt-default.yaml +39 -7
- package/builtins/ja/workflows/review-frontend.yaml +42 -1
- package/builtins/ja/workflows/review-takt-default.yaml +30 -8
- package/builtins/ja/workflows/takt-default-refresh-all.yaml +36 -6
- package/builtins/ja/workflows/takt-default-refresh-fast.yaml +35 -5
- package/builtins/ja/workflows/takt-default-with-fc.yaml +110 -0
- package/builtins/ja/workflows/takt-default.yaml +10 -27
- package/builtins/ja/workflows/terraform.yaml +51 -2
- package/builtins/skill/references/yaml-schema.md +4 -0
- package/builtins/skill-codex/references/yaml-schema.md +4 -0
- package/dist/agents/decompose-task-usecase.d.ts +2 -1
- package/dist/agents/decompose-task-usecase.d.ts.map +1 -1
- package/dist/agents/decompose-task-usecase.js +7 -5
- package/dist/agents/decompose-task-usecase.js.map +1 -1
- package/dist/agents/judge-status-usecase.d.ts +4 -1
- package/dist/agents/judge-status-usecase.d.ts.map +1 -1
- package/dist/agents/judge-status-usecase.js +5 -0
- package/dist/agents/judge-status-usecase.js.map +1 -1
- package/dist/agents/runner-prompt.d.ts +3 -1
- package/dist/agents/runner-prompt.d.ts.map +1 -1
- package/dist/agents/runner-prompt.js +11 -4
- package/dist/agents/runner-prompt.js.map +1 -1
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +23 -5
- package/dist/agents/runner.js.map +1 -1
- package/dist/agents/structured-caller/capability-aware-structured-caller.d.ts +1 -1
- package/dist/agents/structured-caller/capability-aware-structured-caller.d.ts.map +1 -1
- package/dist/agents/structured-caller/capability-aware-structured-caller.js +3 -3
- package/dist/agents/structured-caller/capability-aware-structured-caller.js.map +1 -1
- package/dist/agents/structured-caller/contracts.d.ts +1 -1
- package/dist/agents/structured-caller/contracts.d.ts.map +1 -1
- package/dist/agents/structured-caller/default-structured-caller.d.ts +1 -1
- package/dist/agents/structured-caller/default-structured-caller.d.ts.map +1 -1
- package/dist/agents/structured-caller/default-structured-caller.js +2 -2
- package/dist/agents/structured-caller/default-structured-caller.js.map +1 -1
- package/dist/agents/structured-caller/prompt-based-structured-caller.d.ts +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 +9 -3
- package/dist/agents/structured-caller/prompt-based-structured-caller.js.map +1 -1
- package/dist/agents/team-leader-structured-output.d.ts +3 -3
- package/dist/agents/team-leader-structured-output.d.ts.map +1 -1
- package/dist/agents/team-leader-structured-output.js +14 -10
- package/dist/agents/team-leader-structured-output.js.map +1 -1
- package/dist/agents/types.d.ts +1 -0
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/app/cli/routing-inputs.d.ts +1 -0
- package/dist/app/cli/routing-inputs.d.ts.map +1 -1
- package/dist/app/cli/routing-inputs.js +5 -2
- package/dist/app/cli/routing-inputs.js.map +1 -1
- package/dist/app/cli/routing.d.ts.map +1 -1
- package/dist/app/cli/routing.js +14 -0
- package/dist/app/cli/routing.js.map +1 -1
- package/dist/commands/repertoire/add.d.ts.map +1 -1
- package/dist/commands/repertoire/add.js +45 -4
- package/dist/commands/repertoire/add.js.map +1 -1
- package/dist/commands/repertoire/remove.d.ts.map +1 -1
- package/dist/commands/repertoire/remove.js +19 -3
- package/dist/commands/repertoire/remove.js.map +1 -1
- package/dist/core/models/config-schemas.d.ts +787 -0
- package/dist/core/models/config-schemas.d.ts.map +1 -1
- package/dist/core/models/config-schemas.js +6 -0
- package/dist/core/models/config-schemas.js.map +1 -1
- package/dist/core/models/config-types.d.ts +8 -0
- package/dist/core/models/config-types.d.ts.map +1 -1
- package/dist/core/models/finding-schemas.d.ts +447 -0
- package/dist/core/models/finding-schemas.d.ts.map +1 -0
- package/dist/core/models/finding-schemas.js +234 -0
- package/dist/core/models/finding-schemas.js.map +1 -0
- package/dist/core/models/finding-types.d.ts +146 -0
- package/dist/core/models/finding-types.d.ts.map +1 -0
- package/dist/core/models/finding-types.js +5 -0
- package/dist/core/models/finding-types.js.map +1 -0
- package/dist/core/models/index.d.ts +1 -1
- package/dist/core/models/index.d.ts.map +1 -1
- package/dist/core/models/index.js.map +1 -1
- package/dist/core/models/part.d.ts +2 -1
- package/dist/core/models/part.d.ts.map +1 -1
- package/dist/core/models/schema-base.d.ts +66 -0
- package/dist/core/models/schema-base.d.ts.map +1 -1
- package/dist/core/models/schema-base.js +7 -2
- package/dist/core/models/schema-base.js.map +1 -1
- package/dist/core/models/types.d.ts +2 -2
- package/dist/core/models/types.d.ts.map +1 -1
- package/dist/core/models/workflow-condition-expression.d.ts +3 -0
- package/dist/core/models/workflow-condition-expression.d.ts.map +1 -1
- package/dist/core/models/workflow-condition-expression.js +223 -4
- package/dist/core/models/workflow-condition-expression.js.map +1 -1
- package/dist/core/models/workflow-provider-options.d.ts +5 -0
- package/dist/core/models/workflow-provider-options.d.ts.map +1 -1
- package/dist/core/models/workflow-provider-options.js.map +1 -1
- package/dist/core/models/workflow-schemas.d.ts +197 -31
- package/dist/core/models/workflow-schemas.d.ts.map +1 -1
- package/dist/core/models/workflow-schemas.js +67 -18
- package/dist/core/models/workflow-schemas.js.map +1 -1
- package/dist/core/models/workflow-system-schemas.d.ts.map +1 -1
- package/dist/core/models/workflow-system-schemas.js +1 -0
- package/dist/core/models/workflow-system-schemas.js.map +1 -1
- package/dist/core/models/workflow-types.d.ts +14 -1
- package/dist/core/models/workflow-types.d.ts.map +1 -1
- package/dist/core/models/workflow-types.js.map +1 -1
- package/dist/core/workflow/engine/ArpeggioRunner.d.ts +2 -0
- package/dist/core/workflow/engine/ArpeggioRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/ArpeggioRunner.js +1 -0
- package/dist/core/workflow/engine/ArpeggioRunner.js.map +1 -1
- package/dist/core/workflow/engine/OptionsBuilder.d.ts +4 -1
- package/dist/core/workflow/engine/OptionsBuilder.d.ts.map +1 -1
- package/dist/core/workflow/engine/OptionsBuilder.js +23 -8
- package/dist/core/workflow/engine/OptionsBuilder.js.map +1 -1
- package/dist/core/workflow/engine/ParallelRunner.d.ts +15 -0
- package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/ParallelRunner.js +155 -18
- package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
- package/dist/core/workflow/engine/StepExecutor.d.ts +4 -2
- package/dist/core/workflow/engine/StepExecutor.d.ts.map +1 -1
- package/dist/core/workflow/engine/StepExecutor.js +11 -3
- 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 +9 -4
- package/dist/core/workflow/engine/TeamLeaderRunner.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowCallExecutor.d.ts +3 -1
- package/dist/core/workflow/engine/WorkflowCallExecutor.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowCallExecutor.js +23 -5
- package/dist/core/workflow/engine/WorkflowCallExecutor.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowCallRunner.d.ts +1 -0
- package/dist/core/workflow/engine/WorkflowCallRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowCallRunner.js +5 -1
- package/dist/core/workflow/engine/WorkflowCallRunner.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngine.d.ts +7 -1
- package/dist/core/workflow/engine/WorkflowEngine.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngine.js +63 -9
- package/dist/core/workflow/engine/WorkflowEngine.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngineSetup.d.ts +3 -0
- package/dist/core/workflow/engine/WorkflowEngineSetup.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngineSetup.js +29 -1
- package/dist/core/workflow/engine/WorkflowEngineSetup.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowRunLoop.d.ts +11 -7
- package/dist/core/workflow/engine/WorkflowRunLoop.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowRunLoop.js +66 -33
- 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 +78 -1
- package/dist/core/workflow/engine/WorkflowValidator.js.map +1 -1
- package/dist/core/workflow/engine/engine-provider-options.d.ts.map +1 -1
- package/dist/core/workflow/engine/engine-provider-options.js +3 -3
- package/dist/core/workflow/engine/engine-provider-options.js.map +1 -1
- package/dist/core/workflow/engine/parallel-logger.d.ts +1 -1
- package/dist/core/workflow/engine/parallel-logger.d.ts.map +1 -1
- package/dist/core/workflow/engine/parallel-logger.js +3 -1
- package/dist/core/workflow/engine/parallel-logger.js.map +1 -1
- package/dist/core/workflow/engine/task-decomposer.d.ts +1 -1
- package/dist/core/workflow/engine/task-decomposer.d.ts.map +1 -1
- package/dist/core/workflow/engine/task-decomposer.js +3 -3
- package/dist/core/workflow/engine/task-decomposer.js.map +1 -1
- package/dist/core/workflow/engine/team-leader-budget-errors.d.ts +2 -0
- package/dist/core/workflow/engine/team-leader-budget-errors.d.ts.map +1 -0
- package/dist/core/workflow/engine/team-leader-budget-errors.js +12 -0
- package/dist/core/workflow/engine/team-leader-budget-errors.js.map +1 -0
- package/dist/core/workflow/engine/team-leader-common.d.ts.map +1 -1
- package/dist/core/workflow/engine/team-leader-common.js +11 -0
- package/dist/core/workflow/engine/team-leader-common.js.map +1 -1
- package/dist/core/workflow/engine/team-leader-execution.d.ts.map +1 -1
- package/dist/core/workflow/engine/team-leader-execution.js +16 -2
- package/dist/core/workflow/engine/team-leader-execution.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 +22 -1
- package/dist/core/workflow/engine/team-leader-part-runner.js.map +1 -1
- package/dist/core/workflow/evaluation/AggregateEvaluator.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/AggregateEvaluator.js +7 -4
- package/dist/core/workflow/evaluation/AggregateEvaluator.js.map +1 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.d.ts +3 -0
- package/dist/core/workflow/evaluation/RuleEvaluator.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.js +16 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.js.map +1 -1
- package/dist/core/workflow/evaluation/rule-utils.d.ts +5 -1
- package/dist/core/workflow/evaluation/rule-utils.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/rule-utils.js +34 -1
- package/dist/core/workflow/evaluation/rule-utils.js.map +1 -1
- package/dist/core/workflow/evaluation/when-evaluator.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/when-evaluator.js +4 -1
- package/dist/core/workflow/evaluation/when-evaluator.js.map +1 -1
- package/dist/core/workflow/findings/context.d.ts +5 -0
- package/dist/core/workflow/findings/context.d.ts.map +1 -0
- package/dist/core/workflow/findings/context.js +82 -0
- package/dist/core/workflow/findings/context.js.map +1 -0
- package/dist/core/workflow/findings/ledger-validation.d.ts +3 -0
- package/dist/core/workflow/findings/ledger-validation.d.ts.map +1 -0
- package/dist/core/workflow/findings/ledger-validation.js +26 -0
- package/dist/core/workflow/findings/ledger-validation.js.map +1 -0
- package/dist/core/workflow/findings/manager-output-validation.d.ts +15 -0
- package/dist/core/workflow/findings/manager-output-validation.d.ts.map +1 -0
- package/dist/core/workflow/findings/manager-output-validation.js +221 -0
- package/dist/core/workflow/findings/manager-output-validation.js.map +1 -0
- package/dist/core/workflow/findings/manager-runner.d.ts +89 -0
- package/dist/core/workflow/findings/manager-runner.d.ts.map +1 -0
- package/dist/core/workflow/findings/manager-runner.js +291 -0
- package/dist/core/workflow/findings/manager-runner.js.map +1 -0
- package/dist/core/workflow/findings/reconciler.d.ts +10 -0
- package/dist/core/workflow/findings/reconciler.d.ts.map +1 -0
- package/dist/core/workflow/findings/reconciler.js +413 -0
- package/dist/core/workflow/findings/reconciler.js.map +1 -0
- package/dist/core/workflow/findings/schemas.d.ts +2 -0
- package/dist/core/workflow/findings/schemas.d.ts.map +1 -0
- package/dist/core/workflow/findings/schemas.js +2 -0
- package/dist/core/workflow/findings/schemas.js.map +1 -0
- package/dist/core/workflow/findings/store.d.ts +33 -0
- package/dist/core/workflow/findings/store.d.ts.map +1 -0
- package/dist/core/workflow/findings/store.js +169 -0
- package/dist/core/workflow/findings/store.js.map +1 -0
- package/dist/core/workflow/findings/types.d.ts +3 -0
- package/dist/core/workflow/findings/types.d.ts.map +1 -0
- package/dist/core/workflow/findings/types.js +2 -0
- package/dist/core/workflow/findings/types.js.map +1 -0
- package/dist/core/workflow/instruction/InstructionBuilder.d.ts +1 -0
- package/dist/core/workflow/instruction/InstructionBuilder.d.ts.map +1 -1
- package/dist/core/workflow/instruction/InstructionBuilder.js +35 -11
- package/dist/core/workflow/instruction/InstructionBuilder.js.map +1 -1
- package/dist/core/workflow/instruction/ReportInstructionBuilder.d.ts +4 -0
- package/dist/core/workflow/instruction/ReportInstructionBuilder.d.ts.map +1 -1
- package/dist/core/workflow/instruction/ReportInstructionBuilder.js +22 -1
- package/dist/core/workflow/instruction/ReportInstructionBuilder.js.map +1 -1
- package/dist/core/workflow/instruction/fenced-json.d.ts +2 -0
- package/dist/core/workflow/instruction/fenced-json.d.ts.map +1 -0
- package/dist/core/workflow/instruction/fenced-json.js +11 -0
- package/dist/core/workflow/instruction/fenced-json.js.map +1 -0
- package/dist/core/workflow/instruction/instruction-context.d.ts +8 -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/observability/traceDiscovery.d.ts +33 -0
- package/dist/core/workflow/observability/traceDiscovery.d.ts.map +1 -0
- package/dist/core/workflow/observability/traceDiscovery.js +104 -0
- package/dist/core/workflow/observability/traceDiscovery.js.map +1 -0
- package/dist/core/workflow/observability/workflowSpans.d.ts +5 -2
- package/dist/core/workflow/observability/workflowSpans.d.ts.map +1 -1
- package/dist/core/workflow/observability/workflowSpans.js +60 -13
- package/dist/core/workflow/observability/workflowSpans.js.map +1 -1
- package/dist/core/workflow/phase-runner.d.ts +4 -0
- package/dist/core/workflow/phase-runner.d.ts.map +1 -1
- package/dist/core/workflow/phase-runner.js.map +1 -1
- package/dist/core/workflow/promotion/PromotionEvaluator.d.ts +2 -0
- package/dist/core/workflow/promotion/PromotionEvaluator.d.ts.map +1 -1
- package/dist/core/workflow/promotion/PromotionEvaluator.js +1 -0
- package/dist/core/workflow/promotion/PromotionEvaluator.js.map +1 -1
- package/dist/core/workflow/promotion/promotion-runtime.d.ts +2 -0
- package/dist/core/workflow/promotion/promotion-runtime.d.ts.map +1 -1
- package/dist/core/workflow/promotion/promotion-runtime.js +1 -0
- package/dist/core/workflow/promotion/promotion-runtime.js.map +1 -1
- package/dist/core/workflow/provider-options-trace.d.ts +3 -2
- package/dist/core/workflow/provider-options-trace.d.ts.map +1 -1
- package/dist/core/workflow/provider-resolution.d.ts +11 -3
- package/dist/core/workflow/provider-resolution.d.ts.map +1 -1
- package/dist/core/workflow/provider-resolution.js +68 -2
- package/dist/core/workflow/provider-resolution.js.map +1 -1
- package/dist/core/workflow/quality-gates/commandGateRunner.d.ts +1 -1
- package/dist/core/workflow/quality-gates/commandGateRunner.d.ts.map +1 -1
- package/dist/core/workflow/quality-gates/commandGateRunner.js +11 -6
- package/dist/core/workflow/quality-gates/commandGateRunner.js.map +1 -1
- package/dist/core/workflow/quality-gates/qualityGateRunner.d.ts +1 -1
- package/dist/core/workflow/quality-gates/qualityGateRunner.d.ts.map +1 -1
- package/dist/core/workflow/quality-gates/qualityGateRunner.js +2 -2
- package/dist/core/workflow/quality-gates/qualityGateRunner.js.map +1 -1
- package/dist/core/workflow/quality-gates/types.d.ts +2 -0
- package/dist/core/workflow/quality-gates/types.d.ts.map +1 -1
- package/dist/core/workflow/report-phase-runner.d.ts.map +1 -1
- package/dist/core/workflow/report-phase-runner.js +59 -44
- package/dist/core/workflow/report-phase-runner.js.map +1 -1
- package/dist/core/workflow/report-writer.d.ts +2 -0
- package/dist/core/workflow/report-writer.d.ts.map +1 -0
- package/dist/core/workflow/report-writer.js +42 -0
- package/dist/core/workflow/report-writer.js.map +1 -0
- package/dist/core/workflow/run/run-meta.d.ts +5 -0
- package/dist/core/workflow/run/run-meta.d.ts.map +1 -1
- package/dist/core/workflow/run/run-meta.js.map +1 -1
- package/dist/core/workflow/state/workflow-state-access.d.ts +2 -2
- package/dist/core/workflow/state/workflow-state-access.d.ts.map +1 -1
- package/dist/core/workflow/state/workflow-state-access.js +17 -2
- package/dist/core/workflow/state/workflow-state-access.js.map +1 -1
- package/dist/core/workflow/status-judgment-phase.d.ts.map +1 -1
- package/dist/core/workflow/status-judgment-phase.js +1 -0
- package/dist/core/workflow/status-judgment-phase.js.map +1 -1
- package/dist/core/workflow/types.d.ts +27 -1
- package/dist/core/workflow/types.d.ts.map +1 -1
- package/dist/features/analytics/events.d.ts +1 -1
- package/dist/features/analytics/events.d.ts.map +1 -1
- package/dist/features/analytics/index.d.ts +1 -1
- package/dist/features/analytics/index.d.ts.map +1 -1
- package/dist/features/analytics/index.js +1 -1
- package/dist/features/analytics/index.js.map +1 -1
- package/dist/features/analytics/report-parser.d.ts +5 -3
- package/dist/features/analytics/report-parser.d.ts.map +1 -1
- package/dist/features/analytics/report-parser.js +42 -7
- package/dist/features/analytics/report-parser.js.map +1 -1
- package/dist/features/interactive/aiCaller.d.ts.map +1 -1
- package/dist/features/interactive/aiCaller.js +4 -2
- package/dist/features/interactive/aiCaller.js.map +1 -1
- package/dist/features/pipeline/execute.d.ts.map +1 -1
- package/dist/features/pipeline/execute.js +2 -3
- package/dist/features/pipeline/execute.js.map +1 -1
- package/dist/features/pipeline/steps.d.ts +4 -3
- package/dist/features/pipeline/steps.d.ts.map +1 -1
- package/dist/features/pipeline/steps.js +46 -8
- package/dist/features/pipeline/steps.js.map +1 -1
- package/dist/features/repertoire/file-filter.d.ts +3 -3
- package/dist/features/repertoire/file-filter.d.ts.map +1 -1
- package/dist/features/repertoire/file-filter.js +3 -3
- package/dist/features/repertoire/file-filter.js.map +1 -1
- package/dist/features/repertoire/pack-summary.d.ts +21 -7
- package/dist/features/repertoire/pack-summary.d.ts.map +1 -1
- package/dist/features/repertoire/pack-summary.js +156 -24
- package/dist/features/repertoire/pack-summary.js.map +1 -1
- package/dist/features/repertoire/remove.d.ts +5 -2
- package/dist/features/repertoire/remove.d.ts.map +1 -1
- package/dist/features/repertoire/remove.js +9 -2
- package/dist/features/repertoire/remove.js.map +1 -1
- package/dist/features/repertoire/takt-repertoire-config.d.ts +3 -3
- package/dist/features/repertoire/takt-repertoire-config.d.ts.map +1 -1
- package/dist/features/repertoire/takt-repertoire-config.js +31 -16
- package/dist/features/repertoire/takt-repertoire-config.js.map +1 -1
- package/dist/features/tasks/add/index.d.ts +1 -0
- package/dist/features/tasks/add/index.d.ts.map +1 -1
- package/dist/features/tasks/add/index.js +1 -0
- package/dist/features/tasks/add/index.js.map +1 -1
- package/dist/features/tasks/execute/analyticsEmitter.d.ts +4 -1
- package/dist/features/tasks/execute/analyticsEmitter.d.ts.map +1 -1
- package/dist/features/tasks/execute/analyticsEmitter.js +30 -3
- package/dist/features/tasks/execute/analyticsEmitter.js.map +1 -1
- package/dist/features/tasks/execute/runAllTasks.d.ts.map +1 -1
- package/dist/features/tasks/execute/runAllTasks.js +2 -2
- package/dist/features/tasks/execute/runAllTasks.js.map +1 -1
- package/dist/features/tasks/execute/runMeta.d.ts +5 -1
- package/dist/features/tasks/execute/runMeta.d.ts.map +1 -1
- package/dist/features/tasks/execute/runMeta.js +6 -1
- package/dist/features/tasks/execute/runMeta.js.map +1 -1
- package/dist/features/tasks/execute/selectAndExecute.d.ts.map +1 -1
- package/dist/features/tasks/execute/selectAndExecute.js +12 -0
- package/dist/features/tasks/execute/selectAndExecute.js.map +1 -1
- package/dist/features/tasks/execute/slackSummaryAdapter.d.ts +0 -1
- package/dist/features/tasks/execute/slackSummaryAdapter.d.ts.map +1 -1
- package/dist/features/tasks/execute/slackSummaryAdapter.js +0 -5
- package/dist/features/tasks/execute/slackSummaryAdapter.js.map +1 -1
- package/dist/features/tasks/execute/taskExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/taskExecution.js +9 -0
- package/dist/features/tasks/execute/taskExecution.js.map +1 -1
- package/dist/features/tasks/execute/taskWorkflowExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/taskWorkflowExecution.js +20 -1
- package/dist/features/tasks/execute/taskWorkflowExecution.js.map +1 -1
- package/dist/features/tasks/execute/traceTaskMetadata.d.ts +20 -0
- package/dist/features/tasks/execute/traceTaskMetadata.d.ts.map +1 -0
- package/dist/features/tasks/execute/traceTaskMetadata.js +54 -0
- package/dist/features/tasks/execute/traceTaskMetadata.js.map +1 -0
- package/dist/features/tasks/execute/types.d.ts +13 -1
- package/dist/features/tasks/execute/types.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecution.js +44 -1
- package/dist/features/tasks/execute/workflowExecution.js.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts +2 -0
- package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionBootstrap.js +16 -2
- package/dist/features/tasks/execute/workflowExecutionBootstrap.js.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.d.ts +2 -0
- package/dist/features/tasks/execute/workflowExecutionEvents.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.js +16 -2
- package/dist/features/tasks/execute/workflowExecutionEvents.js.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionReporting.d.ts +3 -2
- package/dist/features/tasks/execute/workflowExecutionReporting.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionReporting.js +14 -2
- package/dist/features/tasks/execute/workflowExecutionReporting.js.map +1 -1
- package/dist/features/tasks/index.d.ts +1 -1
- package/dist/features/tasks/index.d.ts.map +1 -1
- package/dist/features/tasks/index.js.map +1 -1
- package/dist/features/tasks/resume/index.d.ts.map +1 -1
- package/dist/features/tasks/resume/index.js +5 -0
- package/dist/features/tasks/resume/index.js.map +1 -1
- package/dist/infra/claude/client.d.ts.map +1 -1
- package/dist/infra/claude/client.js +1 -0
- package/dist/infra/claude/client.js.map +1 -1
- package/dist/infra/claude/options-builder.d.ts.map +1 -1
- package/dist/infra/claude/options-builder.js +2 -3
- package/dist/infra/claude/options-builder.js.map +1 -1
- package/dist/infra/claude/types.d.ts +2 -0
- package/dist/infra/claude/types.d.ts.map +1 -1
- package/dist/infra/claude-headless/headless-spawn.d.ts.map +1 -1
- package/dist/infra/claude-headless/headless-spawn.js +2 -1
- package/dist/infra/claude-headless/headless-spawn.js.map +1 -1
- package/dist/infra/claude-headless/types.d.ts +1 -0
- package/dist/infra/claude-headless/types.d.ts.map +1 -1
- package/dist/infra/claude-terminal/client.d.ts.map +1 -1
- package/dist/infra/claude-terminal/client.js +1 -0
- package/dist/infra/claude-terminal/client.js.map +1 -1
- package/dist/infra/claude-terminal/response-normalizer.js.map +1 -1
- package/dist/infra/claude-terminal/tmux-backend.d.ts.map +1 -1
- package/dist/infra/claude-terminal/tmux-backend.js +15 -1
- package/dist/infra/claude-terminal/tmux-backend.js.map +1 -1
- package/dist/infra/claude-terminal/types.d.ts +2 -0
- package/dist/infra/claude-terminal/types.d.ts.map +1 -1
- package/dist/infra/codex/client.d.ts.map +1 -1
- package/dist/infra/codex/client.js +3 -1
- package/dist/infra/codex/client.js.map +1 -1
- package/dist/infra/codex/types.d.ts +1 -0
- package/dist/infra/codex/types.d.ts.map +1 -1
- package/dist/infra/config/configNormalizers.d.ts +18 -7
- package/dist/infra/config/configNormalizers.d.ts.map +1 -1
- package/dist/infra/config/configNormalizers.js +55 -14
- package/dist/infra/config/configNormalizers.js.map +1 -1
- package/dist/infra/config/env/global-current-env-specs.d.ts.map +1 -1
- package/dist/infra/config/env/global-current-env-specs.js +1 -0
- package/dist/infra/config/env/global-current-env-specs.js.map +1 -1
- package/dist/infra/config/env/project-current-env-specs.d.ts.map +1 -1
- package/dist/infra/config/env/project-current-env-specs.js +1 -0
- package/dist/infra/config/env/project-current-env-specs.js.map +1 -1
- package/dist/infra/config/global/globalConfigCore.d.ts.map +1 -1
- package/dist/infra/config/global/globalConfigCore.js +2 -1
- package/dist/infra/config/global/globalConfigCore.js.map +1 -1
- package/dist/infra/config/global/globalConfigSerializer.d.ts.map +1 -1
- package/dist/infra/config/global/globalConfigSerializer.js +5 -1
- package/dist/infra/config/global/globalConfigSerializer.js.map +1 -1
- package/dist/infra/config/loaders/namedResourceResolver.d.ts +18 -0
- package/dist/infra/config/loaders/namedResourceResolver.d.ts.map +1 -0
- package/dist/infra/config/loaders/namedResourceResolver.js +49 -0
- package/dist/infra/config/loaders/namedResourceResolver.js.map +1 -0
- package/dist/infra/config/loaders/providerOptionsLookupDirectories.d.ts +13 -0
- package/dist/infra/config/loaders/providerOptionsLookupDirectories.d.ts.map +1 -0
- package/dist/infra/config/loaders/providerOptionsLookupDirectories.js +61 -0
- package/dist/infra/config/loaders/providerOptionsLookupDirectories.js.map +1 -0
- package/dist/infra/config/loaders/workflowDiscovery.js +1 -1
- package/dist/infra/config/loaders/workflowDiscovery.js.map +1 -1
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js +1 -1
- package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js.map +1 -1
- package/dist/infra/config/loaders/workflowParser.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowParser.js +64 -3
- package/dist/infra/config/loaders/workflowParser.js.map +1 -1
- package/dist/infra/config/loaders/workflowPreview.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowPreview.js +8 -3
- package/dist/infra/config/loaders/workflowPreview.js.map +1 -1
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.d.ts +25 -0
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.d.ts.map +1 -0
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.js +150 -0
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.js.map +1 -0
- package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowRuleNormalizer.js +5 -16
- package/dist/infra/config/loaders/workflowRuleNormalizer.js.map +1 -1
- package/dist/infra/config/loaders/workflowStepFeaturesNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowStepFeaturesNormalizer.js +5 -3
- package/dist/infra/config/loaders/workflowStepFeaturesNormalizer.js.map +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.d.ts +3 -2
- package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.js +65 -13
- package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
- package/dist/infra/config/paths.d.ts +4 -0
- package/dist/infra/config/paths.d.ts.map +1 -1
- package/dist/infra/config/paths.js +13 -0
- package/dist/infra/config/paths.js.map +1 -1
- package/dist/infra/config/project/projectConfig.d.ts.map +1 -1
- package/dist/infra/config/project/projectConfig.js +12 -3
- package/dist/infra/config/project/projectConfig.js.map +1 -1
- package/dist/infra/config/providerOptions.d.ts +24 -7
- package/dist/infra/config/providerOptions.d.ts.map +1 -1
- package/dist/infra/config/providerOptions.js +85 -11
- package/dist/infra/config/providerOptions.js.map +1 -1
- package/dist/infra/config/providerOptionsContract.d.ts +3 -3
- package/dist/infra/config/providerOptionsContract.d.ts.map +1 -1
- package/dist/infra/config/providerOptionsContract.js +8 -0
- package/dist/infra/config/providerOptionsContract.js.map +1 -1
- package/dist/infra/config/traced/tracedConfigSchema.d.ts.map +1 -1
- package/dist/infra/config/traced/tracedConfigSchema.js +8 -0
- package/dist/infra/config/traced/tracedConfigSchema.js.map +1 -1
- package/dist/infra/copilot/client.d.ts.map +1 -1
- package/dist/infra/copilot/client.js +7 -8
- package/dist/infra/copilot/client.js.map +1 -1
- package/dist/infra/copilot/types.d.ts +1 -0
- package/dist/infra/copilot/types.d.ts.map +1 -1
- package/dist/infra/cursor/client.d.ts.map +1 -1
- package/dist/infra/cursor/client.js +120 -55
- package/dist/infra/cursor/client.js.map +1 -1
- package/dist/infra/cursor/types.d.ts +1 -0
- package/dist/infra/cursor/types.d.ts.map +1 -1
- package/dist/infra/kiro/client.d.ts.map +1 -1
- package/dist/infra/kiro/client.js +10 -0
- package/dist/infra/kiro/client.js.map +1 -1
- package/dist/infra/kiro/process.d.ts.map +1 -1
- package/dist/infra/kiro/process.js +4 -2
- package/dist/infra/kiro/process.js.map +1 -1
- package/dist/infra/kiro/types.d.ts +2 -0
- package/dist/infra/kiro/types.d.ts.map +1 -1
- package/dist/infra/observability/otelFoundation.d.ts.map +1 -1
- package/dist/infra/observability/otelFoundation.js +93 -20
- package/dist/infra/observability/otelFoundation.js.map +1 -1
- package/dist/infra/opencode/OpenCodeStreamHandler.d.ts +19 -0
- package/dist/infra/opencode/OpenCodeStreamHandler.d.ts.map +1 -1
- package/dist/infra/opencode/OpenCodeStreamHandler.js +10 -0
- package/dist/infra/opencode/OpenCodeStreamHandler.js.map +1 -1
- package/dist/infra/opencode/allowedTools.d.ts +2 -0
- package/dist/infra/opencode/allowedTools.d.ts.map +1 -0
- package/dist/infra/opencode/allowedTools.js +10 -0
- package/dist/infra/opencode/allowedTools.js.map +1 -0
- package/dist/infra/opencode/client.d.ts +4 -2
- package/dist/infra/opencode/client.d.ts.map +1 -1
- package/dist/infra/opencode/client.js +304 -124
- package/dist/infra/opencode/client.js.map +1 -1
- package/dist/infra/opencode/index.d.ts +1 -1
- package/dist/infra/opencode/index.d.ts.map +1 -1
- package/dist/infra/opencode/index.js +1 -1
- package/dist/infra/opencode/index.js.map +1 -1
- package/dist/infra/opencode/types.d.ts +12 -10
- package/dist/infra/opencode/types.d.ts.map +1 -1
- package/dist/infra/opencode/types.js +101 -36
- package/dist/infra/opencode/types.js.map +1 -1
- package/dist/infra/opencode/unavailable-tool-loop.d.ts +7 -0
- package/dist/infra/opencode/unavailable-tool-loop.d.ts.map +1 -0
- package/dist/infra/opencode/unavailable-tool-loop.js +33 -0
- package/dist/infra/opencode/unavailable-tool-loop.js.map +1 -0
- package/dist/infra/providers/allowed-tool-edit-policy.d.ts +3 -0
- package/dist/infra/providers/allowed-tool-edit-policy.d.ts.map +1 -0
- package/dist/infra/providers/allowed-tool-edit-policy.js +10 -0
- package/dist/infra/providers/allowed-tool-edit-policy.js.map +1 -0
- package/dist/infra/providers/claude-headless.d.ts +2 -0
- package/dist/infra/providers/claude-headless.d.ts.map +1 -1
- package/dist/infra/providers/claude-headless.js +8 -0
- package/dist/infra/providers/claude-headless.js.map +1 -1
- package/dist/infra/providers/claude-terminal.d.ts +2 -0
- package/dist/infra/providers/claude-terminal.d.ts.map +1 -1
- package/dist/infra/providers/claude-terminal.js +8 -0
- package/dist/infra/providers/claude-terminal.js.map +1 -1
- package/dist/infra/providers/claude.d.ts +2 -0
- package/dist/infra/providers/claude.d.ts.map +1 -1
- package/dist/infra/providers/claude.js +8 -0
- package/dist/infra/providers/claude.js.map +1 -1
- package/dist/infra/providers/codex.d.ts +2 -0
- package/dist/infra/providers/codex.d.ts.map +1 -1
- package/dist/infra/providers/codex.js +7 -0
- package/dist/infra/providers/codex.js.map +1 -1
- package/dist/infra/providers/copilot.d.ts +2 -0
- package/dist/infra/providers/copilot.d.ts.map +1 -1
- package/dist/infra/providers/copilot.js +7 -0
- package/dist/infra/providers/copilot.js.map +1 -1
- package/dist/infra/providers/cursor.d.ts +2 -0
- package/dist/infra/providers/cursor.d.ts.map +1 -1
- package/dist/infra/providers/cursor.js +7 -0
- package/dist/infra/providers/cursor.js.map +1 -1
- package/dist/infra/providers/kiro.d.ts +2 -0
- package/dist/infra/providers/kiro.d.ts.map +1 -1
- package/dist/infra/providers/kiro.js +8 -0
- package/dist/infra/providers/kiro.js.map +1 -1
- package/dist/infra/providers/mock.d.ts +2 -0
- package/dist/infra/providers/mock.d.ts.map +1 -1
- package/dist/infra/providers/mock.js +7 -0
- package/dist/infra/providers/mock.js.map +1 -1
- package/dist/infra/providers/opencode.d.ts +3 -1
- package/dist/infra/providers/opencode.d.ts.map +1 -1
- package/dist/infra/providers/opencode.js +16 -3
- package/dist/infra/providers/opencode.js.map +1 -1
- package/dist/infra/providers/provider-capabilities.d.ts +2 -0
- package/dist/infra/providers/provider-capabilities.d.ts.map +1 -1
- package/dist/infra/providers/provider-capabilities.js +13 -1
- package/dist/infra/providers/provider-capabilities.js.map +1 -1
- package/dist/infra/providers/runtimeSystemPrompt.d.ts +2 -0
- package/dist/infra/providers/runtimeSystemPrompt.d.ts.map +1 -0
- package/dist/infra/providers/runtimeSystemPrompt.js +11 -0
- package/dist/infra/providers/runtimeSystemPrompt.js.map +1 -0
- package/dist/infra/providers/types.d.ts +3 -0
- package/dist/infra/providers/types.d.ts.map +1 -1
- package/dist/infra/rate-limit/detection.d.ts +1 -1
- package/dist/infra/rate-limit/detection.d.ts.map +1 -1
- package/dist/infra/rate-limit/detection.js +6 -7
- package/dist/infra/rate-limit/detection.js.map +1 -1
- package/dist/infra/resources/schema-loader.d.ts +1 -1
- package/dist/infra/resources/schema-loader.d.ts.map +1 -1
- package/dist/infra/resources/schema-loader.js +8 -4
- package/dist/infra/resources/schema-loader.js.map +1 -1
- package/dist/infra/service/runSyncConflictResolver.d.ts.map +1 -1
- package/dist/infra/service/runSyncConflictResolver.js +3 -1
- package/dist/infra/service/runSyncConflictResolver.js.map +1 -1
- package/dist/infra/task/clone-base-branch.d.ts +1 -0
- package/dist/infra/task/clone-base-branch.d.ts.map +1 -1
- package/dist/infra/task/clone-base-branch.js +22 -14
- package/dist/infra/task/clone-base-branch.js.map +1 -1
- package/dist/infra/task/clone.d.ts +2 -0
- package/dist/infra/task/clone.d.ts.map +1 -1
- package/dist/infra/task/clone.js +7 -1
- package/dist/infra/task/clone.js.map +1 -1
- package/dist/infra/task/index.d.ts +1 -1
- package/dist/infra/task/index.d.ts.map +1 -1
- package/dist/infra/task/index.js +1 -1
- package/dist/infra/task/index.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/summarize.d.ts.map +1 -1
- package/dist/infra/task/summarize.js +3 -1
- package/dist/infra/task/summarize.js.map +1 -1
- package/dist/infra/task/taskExecutionSchemas.d.ts +3 -3
- package/dist/infra/task/taskRecordSchemas.d.ts +2 -2
- package/dist/infra/task/types.d.ts +1 -0
- package/dist/infra/task/types.d.ts.map +1 -1
- package/dist/shared/constants.d.ts +2 -0
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +2 -0
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/prompts/en/perform_agent_system_prompt.md +9 -1
- package/dist/shared/prompts/en/perform_phase2_message.md +1 -0
- package/dist/shared/prompts/en/provider_runtime_system_prompt.md +18 -0
- package/dist/shared/prompts/index.d.ts +1 -1
- package/dist/shared/prompts/index.d.ts.map +1 -1
- package/dist/shared/prompts/index.js +7 -1
- package/dist/shared/prompts/index.js.map +1 -1
- package/dist/shared/prompts/ja/perform_agent_system_prompt.md +9 -1
- package/dist/shared/prompts/ja/perform_phase2_message.md +1 -0
- package/dist/shared/prompts/ja/provider_runtime_system_prompt.md +18 -0
- package/dist/shared/telemetry/childProcessEnv.d.ts +7 -0
- package/dist/shared/telemetry/childProcessEnv.d.ts.map +1 -0
- package/dist/shared/telemetry/childProcessEnv.js +176 -0
- package/dist/shared/telemetry/childProcessEnv.js.map +1 -0
- package/dist/shared/telemetry/index.d.ts +3 -0
- package/dist/shared/telemetry/index.d.ts.map +1 -0
- package/dist/shared/telemetry/index.js +3 -0
- package/dist/shared/telemetry/index.js.map +1 -0
- package/dist/shared/telemetry/otlp.d.ts +40 -0
- package/dist/shared/telemetry/otlp.d.ts.map +1 -0
- package/dist/shared/telemetry/otlp.js +72 -0
- package/dist/shared/telemetry/otlp.js.map +1 -0
- package/dist/shared/types/provider.d.ts +25 -0
- package/dist/shared/types/provider.d.ts.map +1 -1
- package/dist/shared/ui/StreamDisplay.d.ts.map +1 -1
- package/dist/shared/ui/StreamDisplay.js +2 -1
- package/dist/shared/ui/StreamDisplay.js.map +1 -1
- 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/runId.d.ts +2 -0
- package/dist/shared/utils/runId.d.ts.map +1 -0
- package/dist/shared/utils/runId.js +18 -0
- package/dist/shared/utils/runId.js.map +1 -0
- package/package.json +25 -10
- package/builtins/en/facets/instructions/review-requirements.md +0 -17
- package/builtins/en/facets/output-contracts/requirements-review.md +0 -56
- package/builtins/en/facets/personas/requirements-reviewer.md +0 -33
- package/builtins/ja/facets/instructions/review-requirements.md +0 -17
- package/builtins/ja/facets/output-contracts/requirements-review.md +0 -56
- package/builtins/ja/facets/personas/requirements-reviewer.md +0 -33
|
@@ -65,7 +65,7 @@ data class Order(
|
|
|
65
65
|
|
|
66
66
|
## API Layer Design (Controller)
|
|
67
67
|
|
|
68
|
-
Keep Controllers thin.
|
|
68
|
+
Keep Controllers thin. Focus them on receiving requests, DTO conversion, resolving authentication/authorization boundaries, delegating to a UseCase or query boundary, and returning responses.
|
|
69
69
|
|
|
70
70
|
```kotlin
|
|
71
71
|
// CORRECT - Thin Controller
|
|
@@ -208,6 +208,19 @@ fun confirm(confirmedBy: String): OrderConfirmedEvent {
|
|
|
208
208
|
| Structural validation (@NotBlank, etc.) in domain | REJECT. Belongs in API layer |
|
|
209
209
|
| UseCase-level validation inside Aggregate | REJECT. Read Model queries belong in UseCase layer |
|
|
210
210
|
|
|
211
|
+
### Read and Write Entrypoints
|
|
212
|
+
|
|
213
|
+
Separate read and write entrypoints. Read-side query boundaries have no side effects; writes are handled by commands or UseCases.
|
|
214
|
+
|
|
215
|
+
| Criteria | Judgment |
|
|
216
|
+
|----------|----------|
|
|
217
|
+
| Query boundary saves, deletes, calls external services, or dispatches commands | REJECT |
|
|
218
|
+
| Read-oriented class or method names hide side effects | REJECT |
|
|
219
|
+
| Simple read API calls a query boundary and converts to response DTO | OK |
|
|
220
|
+
| Simple state-changing API resolves structural validation and authorization boundary, then dispatches one command | OK |
|
|
221
|
+
| Controller contains multiple Read Model lookups, external integration, multiple commands, or result waiting | REJECT. Separate into UseCase layer |
|
|
222
|
+
| UseCase only delegates to another service or command dispatch without domain coordination | Consider deleting |
|
|
223
|
+
|
|
211
224
|
## Error Handling
|
|
212
225
|
|
|
213
226
|
### Exception Hierarchy Design
|
|
@@ -245,6 +258,17 @@ class OrderExceptionHandler {
|
|
|
245
258
|
| Empty try-catch blocks | REJECT |
|
|
246
259
|
| Controller swallowing exceptions and returning 200 | REJECT |
|
|
247
260
|
|
|
261
|
+
### Exception Translation Scope
|
|
262
|
+
|
|
263
|
+
Translate exceptions into HTTP status codes at an exception translation layer on the HTTP adapter boundary. Global translation should be limited to truly cross-cutting cases such as authentication, input validation, and common error shapes; API- or resource-specific mappings belong in a boundary scoped to that API.
|
|
264
|
+
|
|
265
|
+
| Criteria | Judgment |
|
|
266
|
+
|----------|----------|
|
|
267
|
+
| Each endpoint maps exceptions to HTTP representation through the same try-catch or wrapper | REJECT. Move it to an exception translation layer at the HTTP adapter boundary |
|
|
268
|
+
| API-specific exception mapping is added to a global handler | Scope is too broad. Keep it inside the target API boundary |
|
|
269
|
+
| Authentication failures, input validation, and common error shapes shared by all APIs | OK. Handle at a global boundary |
|
|
270
|
+
| HTTP representation mapping lives in the application or domain layer | REJECT. Keep it at the HTTP adapter boundary |
|
|
271
|
+
|
|
248
272
|
## Domain Model Design
|
|
249
273
|
|
|
250
274
|
### Immutable + require
|
|
@@ -167,6 +167,35 @@ Validation inside an Aggregate should be limited to facts reproducible by event
|
|
|
167
167
|
|
|
168
168
|
Example: for an upload-completed command, the Aggregate decides whether the session owner matches the requester and whether the current state can be completed. The storage object key format and whether the key belongs to the current user/tenant are validated in the UseCase layer before sending the command.
|
|
169
169
|
|
|
170
|
+
## UseCase Layer (Orchestration)
|
|
171
|
+
|
|
172
|
+
UseCases sit between Controllers and command dispatch when orchestration is needed. They validate preconditions from Read Models across aggregates and perform required preparation before sending commands.
|
|
173
|
+
|
|
174
|
+
```
|
|
175
|
+
Controller → UseCase → CommandGateway → Aggregate
|
|
176
|
+
↓
|
|
177
|
+
QueryGateway / Repository (Read Model lookup)
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
Cases where UseCase is needed:
|
|
181
|
+
- Read Model checks from multiple aggregates before command dispatch
|
|
182
|
+
- Multiple validations executed in sequence
|
|
183
|
+
- Result consistency waiting after command dispatch
|
|
184
|
+
- External integration or multiple command dispatches
|
|
185
|
+
|
|
186
|
+
Cases where UseCase is unnecessary:
|
|
187
|
+
- Simple operation completed by sending one command from Controller
|
|
188
|
+
- Simple read that only queries the query side and converts to response
|
|
189
|
+
- Operation that checks resource existence/scope and then sends one command
|
|
190
|
+
|
|
191
|
+
| Criteria | Judgment |
|
|
192
|
+
|----------|----------|
|
|
193
|
+
| Controller directly references Repository for validation | Separate into UseCase layer |
|
|
194
|
+
| UseCase depends on HTTP requests/responses | REJECT. UseCase must be protocol-independent |
|
|
195
|
+
| UseCase directly modifies Aggregate internal state | REJECT. Use CommandGateway |
|
|
196
|
+
| UseCase waits for results via Subscription Query | REJECT. Does not work in distributed environments. Use reactive polling |
|
|
197
|
+
| UseCase only delegates to a query boundary or command dispatch | Consider deleting |
|
|
198
|
+
|
|
170
199
|
## Projection Design
|
|
171
200
|
|
|
172
201
|
| Criteria | Judgment |
|
|
@@ -181,6 +210,19 @@ Good Projection:
|
|
|
181
210
|
- Idempotently reconstructible from events
|
|
182
211
|
- Completely independent from Write model
|
|
183
212
|
|
|
213
|
+
### External Work Triggers
|
|
214
|
+
|
|
215
|
+
External workers and asynchronous work should start from domain events confirmed by the Aggregate. Application Services and Coordinators must not bundle command dispatch and external side effects in the same control flow.
|
|
216
|
+
|
|
217
|
+
| Criteria | Judgment |
|
|
218
|
+
|----------|----------|
|
|
219
|
+
| Application Service or Coordinator dispatches a command, then starts external work for the same state transition | REJECT. Separate into an EventHandler for the confirmed event |
|
|
220
|
+
| Aggregate emits an event that represents generation or processing start, and an EventHandler starts external work | OK |
|
|
221
|
+
| EventHandler converts external start failure into a failure command back to the Aggregate | OK |
|
|
222
|
+
| Inputs needed by external work are represented in the event or reloadable through stable identifiers | OK |
|
|
223
|
+
| Inputs needed by external work exist only as local variables during command handling | REJECT. Move them to events or reloadable references |
|
|
224
|
+
| Saga is used only to start simple external work without contention or compensation | REJECT. EventHandler is sufficient |
|
|
225
|
+
|
|
184
226
|
## Query Side Design
|
|
185
227
|
|
|
186
228
|
Query side operates on an event-driven PubSub model. Projections update Read Models via EventHandler, and queries read from Read Models.
|
|
@@ -197,6 +239,9 @@ Event distribution uses PubSub (via message broker) to deliver events to all ins
|
|
|
197
239
|
| Controller directly referencing Repository | REJECT. Must go through UseCase layer |
|
|
198
240
|
| Query side referencing Command Model | REJECT |
|
|
199
241
|
| QueryHandler issuing commands | REJECT |
|
|
242
|
+
| Query-side service or handler saves, deletes, or calls external APIs | REJECT |
|
|
243
|
+
| Command and Query responsibilities mixed in the same service | REJECT. Separate responsibility and naming |
|
|
244
|
+
| Query side checks existence or scope and caller dispatches command | OK |
|
|
200
245
|
|
|
201
246
|
Types between layers:
|
|
202
247
|
- `application/query/` - Query result types (e.g., `OrderDetail`)
|
|
@@ -249,6 +294,18 @@ Aggregate → Event Bus → Projection(@EventHandler) → Repository(Read Model)
|
|
|
249
294
|
QueryHandler reads from here
|
|
250
295
|
```
|
|
251
296
|
|
|
297
|
+
### Async Callbacks and Concurrency Control
|
|
298
|
+
|
|
299
|
+
Completion notifications for asynchronous work must assume duplicates, delays, and reordering. Protect the workflow with Aggregate state transitions and command idempotency, not Controller-level or single-process locks.
|
|
300
|
+
|
|
301
|
+
| Criteria | Judgment |
|
|
302
|
+
|----------|----------|
|
|
303
|
+
| Controller or application-process lock prevents duplicate callbacks | REJECT. It does not work across multiple instances |
|
|
304
|
+
| Aggregate state decides whether work is processing | OK |
|
|
305
|
+
| Aggregate verifies callback attempt/generation identifiers | OK |
|
|
306
|
+
| Stale or duplicate callbacks are idempotently ignored by state transition | OK |
|
|
307
|
+
| Concurrency control is duplicated across Controller, UseCase, and Aggregate | REJECT |
|
|
308
|
+
|
|
252
309
|
## Eventual Consistency
|
|
253
310
|
|
|
254
311
|
When synchronous response is needed after command dispatch, use reactive polling to wait for Projection updates.
|
|
@@ -17,6 +17,17 @@ E2E tests verify the entire user operation flow. Their scope differs from unit a
|
|
|
17
17
|
| Scenarios spanning multiple commands/pages | E2E test is appropriate |
|
|
18
18
|
| Error message display verification | E2E test is appropriate |
|
|
19
19
|
|
|
20
|
+
## Behavior Observation
|
|
21
|
+
|
|
22
|
+
E2E tests observe behavior visible to the user. Checking configuration values, logs, or snapshots alone does not prove that rejection, permission, isolation, or recovery actually occurred.
|
|
23
|
+
|
|
24
|
+
| Criteria | Judgment |
|
|
25
|
+
|----------|----------|
|
|
26
|
+
| Results from user actions or external inputs are observed | OK |
|
|
27
|
+
| Rejection, error, and recovery paths verify the expected result | OK |
|
|
28
|
+
| Only configuration or internal state is checked, with no user-visible result | REJECT |
|
|
29
|
+
| Only real external-environment verification exists, with no deterministic test for the main boundary | Warning or REJECT |
|
|
30
|
+
|
|
20
31
|
## UX Route Identification
|
|
21
32
|
|
|
22
33
|
E2E test completeness depends on thorough UX route identification. Identify entry points from code, not documentation.
|
|
@@ -86,4 +97,3 @@ Manage test cases as a list to guarantee E2E test completeness.
|
|
|
86
97
|
| Classify by entry point | Group by command/page/endpoint |
|
|
87
98
|
| Prioritize | Determine priority by user impact × untested risk |
|
|
88
99
|
| Cross-reference with existing tests | Check existing test coverage before adding new tests |
|
|
89
|
-
|
|
@@ -54,6 +54,17 @@ test('validates age at boundaries', () => {
|
|
|
54
54
|
})
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
+
## Behavior Guarantees
|
|
58
|
+
|
|
59
|
+
Unit tests should verify that the public contract behaves as expected, not only that configuration values or internal-state snapshots changed. Boundary changes such as rejection, permission, isolation, or release should cover the main success/failure cases deterministically.
|
|
60
|
+
|
|
61
|
+
| Criteria | Judgment |
|
|
62
|
+
|----------|----------|
|
|
63
|
+
| Expected return values, exceptions, or side effects are directly verified | OK |
|
|
64
|
+
| Both sides of a boundary change, such as success/failure or allow/deny, are verified | OK |
|
|
65
|
+
| Only configuration values or the last internal state are checked | REJECT |
|
|
66
|
+
| Main boundary conditions require an external environment to reproduce | Consider a deterministic test with a fake or stub |
|
|
67
|
+
|
|
57
68
|
## Test Fixture Design
|
|
58
69
|
|
|
59
70
|
Manage test data with factory functions.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# AI-Generated Code Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize the result in one sentence}
|
|
8
|
+
|
|
9
|
+
## Verified Items
|
|
10
|
+
| Aspect | Result | Notes |
|
|
11
|
+
|--------|--------|-------|
|
|
12
|
+
| Validity of assumptions | ✅ | - |
|
|
13
|
+
| API/library existence | ✅ | - |
|
|
14
|
+
| Context fit | ✅ | - |
|
|
15
|
+
| Scope | ✅ | - |
|
|
16
|
+
|
|
17
|
+
Expected `family_tag` values: `hallucination`, `unvalidated-assumption`, `off-by-one`, `api-mismatch`, `missing-edge-case`, `logic-error`, `scope-creep`.
|
|
18
|
+
When structured raw findings are requested, copy this table's `family_tag` value into the structured `familyTag` field.
|
|
19
|
+
|
|
20
|
+
## Observed Findings
|
|
21
|
+
| # | family_tag | Category | Severity | Location | Issue | Fix Suggestion |
|
|
22
|
+
|---|------------|----------|----------|----------|-------|----------------|
|
|
23
|
+
| 1 | hallucination | Hallucinated API | high / medium / low | `src/file.ts:23` | Non-existent method | Replace with existing API |
|
|
24
|
+
|
|
25
|
+
## Rejection Gate
|
|
26
|
+
- REJECT is valid only when at least one blocking finding is observed
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**Cognitive load reduction rules:**
|
|
30
|
+
- No issues → Summary sentence + checklist + empty finding sections (10 lines or fewer)
|
|
31
|
+
- Issues found → include table rows only for impacted sections (30 lines or fewer)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Architecture Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / IMPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize the result in 1-2 sentences}
|
|
8
|
+
|
|
9
|
+
## Reviewed Aspects
|
|
10
|
+
- [x] Structure & design
|
|
11
|
+
- [x] Code quality
|
|
12
|
+
- [x] Change scope
|
|
13
|
+
- [x] Test coverage
|
|
14
|
+
- [x] Dead code
|
|
15
|
+
- [x] Call chain verification
|
|
16
|
+
|
|
17
|
+
## Observed Findings
|
|
18
|
+
| # | family_tag | Scope | Severity | Location | Issue | Fix Suggestion |
|
|
19
|
+
|---|------------|-------|----------|----------|-------|----------------|
|
|
20
|
+
| 1 | design-violation | In-scope | high / medium / low | `src/file.ts:42` | Issue description | Fix approach |
|
|
21
|
+
|
|
22
|
+
Scope: "In-scope" (fixable in this change) / "Out-of-scope" (existing issue, non-blocking)
|
|
23
|
+
|
|
24
|
+
## Verification Evidence
|
|
25
|
+
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
26
|
+
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
27
|
+
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
28
|
+
|
|
29
|
+
## Rejection Gate
|
|
30
|
+
- REJECT is valid only when at least one in-scope blocking finding is observed
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Cognitive load reduction rules:**
|
|
34
|
+
- APPROVE → Summary only (5 lines or fewer)
|
|
35
|
+
- REJECT → Include only relevant finding rows (30 lines or fewer)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Coding Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize the review result in 1-2 sentences}
|
|
8
|
+
|
|
9
|
+
## Observed Findings
|
|
10
|
+
| # | family_tag | Severity | Location | Issue | Impact | Fix Suggestion |
|
|
11
|
+
|---|------------|----------|----------|-------|--------|----------------|
|
|
12
|
+
| 1 | bug | High / Medium / Low | `src/file.ts:42` | {Issue} | {Impact} | {Fix suggestion} |
|
|
13
|
+
|
|
14
|
+
## Verification Evidence
|
|
15
|
+
- Diff review: {What was checked}
|
|
16
|
+
- Build: {Result, or state unverified}
|
|
17
|
+
- Tests: {Result, or state unverified}
|
|
18
|
+
|
|
19
|
+
## Rejection Gate
|
|
20
|
+
- REJECT only when at least one blocking finding is observed
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**Cognitive load reduction rules:**
|
|
24
|
+
- APPROVE: Summary only (5 lines or fewer)
|
|
25
|
+
- REJECT: Include only relevant finding rows (30 lines or fewer)
|
|
@@ -6,6 +6,13 @@
|
|
|
6
6
|
## Summary
|
|
7
7
|
{Summarize the review result in 1-2 sentences}
|
|
8
8
|
|
|
9
|
+
## Contract Entry Check
|
|
10
|
+
Fill this when the diff adds or changes IDs, names, metadata, config, environment variables, or output contracts.
|
|
11
|
+
|
|
12
|
+
| Entry / Path | Original Requirement | Implementation Evidence | Test Evidence | Judgment | Exception / Unverified Evidence |
|
|
13
|
+
|--------------|----------------------|--------------------------|---------------|----------|---------------------------------|
|
|
14
|
+
| {normal entry / derived condition / validation / evaluation / output / re-injection, etc.} | {Requirement} | `src/file.ts:42` | `src/file.test.ts:10` | ✅/❌/⚠️ | {none / evidence} |
|
|
15
|
+
|
|
9
16
|
## Current Iteration Findings (new)
|
|
10
17
|
| # | finding_id | family_tag | Severity | Location | Issue | Impact | Fix Suggestion |
|
|
11
18
|
|---|------------|------------|----------|----------|-------|--------|----------------|
|
|
@@ -17,9 +24,9 @@
|
|
|
17
24
|
| 1 | CODE-PERSIST-src-file-L77 | regression | `src/file.ts:77` | `src/file.ts:77` | {Unresolved issue} | {Fix suggestion} |
|
|
18
25
|
|
|
19
26
|
## Resolved Findings (resolved)
|
|
20
|
-
| finding_id | Resolution Evidence |
|
|
21
|
-
|
|
22
|
-
| CODE-RESOLVED-src-file-L10 | Resolved at `src/file.ts:10` |
|
|
27
|
+
| finding_id | Original Expected Result | Resolution Evidence |
|
|
28
|
+
|------------|--------------------------|---------------------|
|
|
29
|
+
| CODE-RESOLVED-src-file-L10 | {Original finding acceptance criteria} | Resolved at `src/file.ts:10` |
|
|
23
30
|
|
|
24
31
|
## Reopened Findings (reopened)
|
|
25
32
|
| # | finding_id | family_tag | Prior Resolution Evidence | Recurrence Evidence | Issue | Fix Suggestion |
|
|
@@ -37,5 +44,5 @@
|
|
|
37
44
|
```
|
|
38
45
|
|
|
39
46
|
**Cognitive load reduction rules:**
|
|
40
|
-
- APPROVE: Summary
|
|
47
|
+
- APPROVE: Summary plus Contract Entry Check when needed (10 lines or fewer total)
|
|
41
48
|
- REJECT: Include only relevant finding rows (30 lines or fewer)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# CQRS+ES Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize the result in 1-2 sentences}
|
|
8
|
+
|
|
9
|
+
## Reviewed Aspects
|
|
10
|
+
| Aspect | Result | Notes |
|
|
11
|
+
|--------|--------|-------|
|
|
12
|
+
| Aggregate design | ✅ | - |
|
|
13
|
+
| Event design | ✅ | - |
|
|
14
|
+
| Command/Query separation | ✅ | - |
|
|
15
|
+
| Projections | ✅ | - |
|
|
16
|
+
| Eventual consistency | ✅ | - |
|
|
17
|
+
|
|
18
|
+
## Observed Findings
|
|
19
|
+
| # | family_tag | Severity | Scope | Location | Issue | Impact | Fix Suggestion |
|
|
20
|
+
|---|------------|----------|-------|----------|-------|--------|----------------|
|
|
21
|
+
| 1 | cqrs-violation | High / Medium / Low | In-scope | `src/file.ts:42` | Issue description | Domain consistency or maintainability impact | Fix approach |
|
|
22
|
+
|
|
23
|
+
Scope: "In-scope" (fixable in this change) / "Out-of-scope" (existing issue, non-blocking)
|
|
24
|
+
|
|
25
|
+
## Rejection Gate
|
|
26
|
+
- REJECT only when at least one blocking finding is observed
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**Cognitive load reduction rules:**
|
|
30
|
+
- APPROVE → Summary only (5 lines or fewer)
|
|
31
|
+
- REJECT → Include only relevant finding rows (30 lines or fewer)
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
```json
|
|
2
|
+
{
|
|
3
|
+
"matches": [
|
|
4
|
+
{
|
|
5
|
+
"findingId": "F-0001",
|
|
6
|
+
"rawFindingIds": ["raw-1"],
|
|
7
|
+
"evidence": "Why this is the same issue"
|
|
8
|
+
}
|
|
9
|
+
],
|
|
10
|
+
"newFindings": [
|
|
11
|
+
{
|
|
12
|
+
"rawFindingIds": ["raw-2"],
|
|
13
|
+
"title": "Short title for the new finding",
|
|
14
|
+
"severity": "high"
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"resolvedFindings": [
|
|
18
|
+
{
|
|
19
|
+
"findingId": "F-0002",
|
|
20
|
+
"rawFindingIds": ["raw-previous-1"],
|
|
21
|
+
"evidence": "Evidence that the finding is resolved"
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"reopenedFindings": [
|
|
25
|
+
{
|
|
26
|
+
"findingId": "F-0003",
|
|
27
|
+
"rawFindingIds": ["raw-3"],
|
|
28
|
+
"evidence": "Evidence that the finding has reappeared"
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"conflicts": [
|
|
32
|
+
{
|
|
33
|
+
"findingIds": [],
|
|
34
|
+
"rawFindingIds": ["raw-4", "raw-5"],
|
|
35
|
+
"description": "Reviewer contradiction"
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"resolvedConflicts": [
|
|
39
|
+
{
|
|
40
|
+
"conflictId": "C-012345ABCDEF",
|
|
41
|
+
"evidence": "Evidence that the conflict is adjudicated"
|
|
42
|
+
}
|
|
43
|
+
]
|
|
44
|
+
}
|
|
45
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Frontend Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize the result in 1-2 sentences}
|
|
8
|
+
|
|
9
|
+
## Reviewed Aspects
|
|
10
|
+
| Aspect | Result | Notes |
|
|
11
|
+
|--------|--------|-------|
|
|
12
|
+
| Component design | ✅ | - |
|
|
13
|
+
| State management | ✅ | - |
|
|
14
|
+
| Canonical and derived state | ✅ | - |
|
|
15
|
+
| Performance | ✅ | - |
|
|
16
|
+
| Accessibility | ✅ | - |
|
|
17
|
+
| Type safety | ✅ | - |
|
|
18
|
+
|
|
19
|
+
## Observed Findings
|
|
20
|
+
| # | family_tag | Severity | Location | Issue | Impact | Fix Suggestion |
|
|
21
|
+
|---|------------|----------|----------|-------|--------|----------------|
|
|
22
|
+
| 1 | component-design | High / Medium / Low | `src/file.tsx:42` | Issue description | User experience or maintainability impact | Fix approach |
|
|
23
|
+
|
|
24
|
+
## Rejection Gate
|
|
25
|
+
- REJECT only when at least one blocking finding is observed
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Cognitive load reduction rules:**
|
|
29
|
+
- APPROVE → Summary only (5 lines or fewer)
|
|
30
|
+
- REJECT → Include only relevant finding rows (30 lines or fewer)
|
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
|----------|--------|--------------|
|
|
20
20
|
| {Contract type} | {Target} | {What is preserved} |
|
|
21
21
|
|
|
22
|
+
## Replaced Old Specifications
|
|
23
|
+
| Old Specification | New Specification | Deletion Targets | Test Strategy |
|
|
24
|
+
|-------------------|-------------------|------------------|---------------|
|
|
25
|
+
| {Old specification} | {New specification} | {Implementation/tests to delete} | {Where to verify the new specification} |
|
|
26
|
+
|
|
22
27
|
## Unnecessary Change Check
|
|
23
28
|
| Check Target | Result | Notes |
|
|
24
29
|
|--------------|--------|-------|
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Pure Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize in 1-2 sentences whether this change is mergeable quality. If REJECT, mention the largest blocker first}
|
|
8
|
+
|
|
9
|
+
## Pure Review Check
|
|
10
|
+
| # | Area | Status | Evidence (file:line / test / execution evidence) | Comment |
|
|
11
|
+
|---|------|--------|--------------------------------------------------|---------|
|
|
12
|
+
| 1 | Requirement fulfillment | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
|
|
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 | `npm test` | {Notes} |
|
|
15
|
+
| 4 | Out-of-scope changes and scope creep | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
16
|
+
| 5 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
17
|
+
|
|
18
|
+
## Requirements Cross-Reference
|
|
19
|
+
| # | Requirement (from task) | Status | Evidence (file:line) | Comment |
|
|
20
|
+
|---|-------------------------|--------|----------------------|---------|
|
|
21
|
+
| 1 | {requirement 1} | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
|
|
22
|
+
|
|
23
|
+
## Out-of-Scope Changes and Existing Impact
|
|
24
|
+
| # | Change | File | Judgment | Comment |
|
|
25
|
+
|---|--------|------|----------|---------|
|
|
26
|
+
| 1 | {out-of-scope change or existing impact} | `src/file.ts` | Justified / Needs review / Unnecessary / Problematic | {Reason} |
|
|
27
|
+
|
|
28
|
+
## Observed Findings
|
|
29
|
+
| # | family_tag | Category | Severity | Location | Issue | Fix Suggestion |
|
|
30
|
+
|---|------------|----------|----------|----------|-------|----------------|
|
|
31
|
+
| 1 | mergeability | Regression / Requirement gap / Missing tests / Contract break / Scope creep | high / medium / low | `src/file.ts:42` | Issue description | Fix suggestion |
|
|
32
|
+
|
|
33
|
+
## Verification Evidence
|
|
34
|
+
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
35
|
+
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
36
|
+
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
37
|
+
|
|
38
|
+
## Rejection Gate
|
|
39
|
+
- REJECT if at least one merge-blocking finding is observed
|
|
40
|
+
- Unverified areas should block merge only when they affect mergeability
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**Cognitive load reduction rules:**
|
|
44
|
+
- APPROVE: Summary + Pure Review Check only (10 lines or fewer)
|
|
45
|
+
- REJECT: Prioritize blocker findings (40 lines or fewer)
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Pure Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize in 1-2 sentences whether this change is mergeable quality. If REJECT, mention the largest blocker first}
|
|
8
|
+
|
|
9
|
+
## Pure Review Check
|
|
10
|
+
| # | Area | Status | Evidence (file:line / test / execution evidence) | Comment |
|
|
11
|
+
|---|------|--------|--------------------------------------------------|---------|
|
|
12
|
+
| 1 | Requirement fulfillment | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
|
|
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 | `npm test` | {Notes} |
|
|
15
|
+
| 4 | Out-of-scope changes and scope creep | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
16
|
+
| 5 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
|
|
17
|
+
|
|
18
|
+
## Requirements Cross-Reference
|
|
19
|
+
| # | Requirement (from task) | Original Requirement Source | Status | Evidence (file:line) | Exception / Unverified Evidence |
|
|
20
|
+
|---|-------------------------|-----------------------------|--------|----------------------|---------------------------------|
|
|
21
|
+
| 1 | {requirement 1} | `order.md:10` | Satisfied / Unmet / Unverified | `src/file.ts:42` | {none / evidence} |
|
|
22
|
+
|
|
23
|
+
## Out-of-Scope Changes and Existing Impact
|
|
24
|
+
| # | Change | File | Judgment | Comment |
|
|
25
|
+
|---|--------|------|----------|---------|
|
|
26
|
+
| 1 | {out-of-scope change or existing impact} | `src/file.ts` | Justified / Needs review / Unnecessary / Problematic | {Reason} |
|
|
27
|
+
|
|
28
|
+
## Current Iteration Findings (new)
|
|
29
|
+
| # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
|
|
30
|
+
|---|------------|------------|----------|----------|-------|----------------|
|
|
31
|
+
| 1 | PURE-NEW-src-file-L42 | mergeability | Regression / Requirement gap / Missing tests / Contract break / Scope creep | `src/file.ts:42` | Issue description | Fix suggestion |
|
|
32
|
+
|
|
33
|
+
## Carry-over Findings (persists)
|
|
34
|
+
| # | finding_id | family_tag | Previous Evidence | Current Evidence | Issue | Fix Suggestion |
|
|
35
|
+
|---|------------|------------|-------------------|------------------|-------|----------------|
|
|
36
|
+
| 1 | PURE-PERSIST-src-file-L77 | mergeability | `file:line` | `file:line` | Unresolved | Fix suggestion |
|
|
37
|
+
|
|
38
|
+
## Resolved Findings (resolved)
|
|
39
|
+
| finding_id | Original Expected Result | Resolution Evidence |
|
|
40
|
+
|------------|--------------------------|---------------------|
|
|
41
|
+
| PURE-RESOLVED-src-file-L10 | {Original finding acceptance criteria} | `file:line` resolves the issue |
|
|
42
|
+
|
|
43
|
+
## Reopened Findings (reopened)
|
|
44
|
+
| # | finding_id | family_tag | Prior Resolution Evidence | Recurrence Evidence | Issue | Fix Suggestion |
|
|
45
|
+
|---|------------|------------|--------------------------|---------------------|-------|----------------|
|
|
46
|
+
| 1 | PURE-REOPENED-src-file-L55 | mergeability | `Previously fixed at file:line` | `Recurred at file:line` | Issue description | Fix approach |
|
|
47
|
+
|
|
48
|
+
## Verification Evidence
|
|
49
|
+
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
50
|
+
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
51
|
+
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
52
|
+
|
|
53
|
+
## Rejection Gate
|
|
54
|
+
- REJECT if at least one merge-blocking issue exists in `new`, `persists`, or `reopened`
|
|
55
|
+
- Findings without `finding_id` are invalid
|
|
56
|
+
- Unverified areas should block merge only when they affect mergeability
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Cognitive load reduction rules:**
|
|
60
|
+
- APPROVE: Summary + Pure Review Check only (10 lines or fewer)
|
|
61
|
+
- REJECT: Prioritize blocker findings (40 lines or fewer)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# QA Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Summary
|
|
7
|
+
{Summarize the result in 1-2 sentences}
|
|
8
|
+
|
|
9
|
+
## Reviewed Aspects
|
|
10
|
+
| Aspect | Result | Notes |
|
|
11
|
+
|--------|--------|-------|
|
|
12
|
+
| Test coverage | ✅ | - |
|
|
13
|
+
| Test quality | ✅ | - |
|
|
14
|
+
| Error handling | ✅ | - |
|
|
15
|
+
| Documentation | ✅ | - |
|
|
16
|
+
| Maintainability | ✅ | - |
|
|
17
|
+
|
|
18
|
+
## Observed Findings
|
|
19
|
+
| # | family_tag | Category | Severity | Location | Issue | Fix Suggestion |
|
|
20
|
+
|---|------------|----------|----------|----------|-------|----------------|
|
|
21
|
+
| 1 | test-coverage | Testing | high / medium / low | `src/test.ts:42` | Missing negative test | Add failure-path test |
|
|
22
|
+
|
|
23
|
+
## Verification Evidence
|
|
24
|
+
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
25
|
+
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
26
|
+
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
27
|
+
|
|
28
|
+
## Unverified Scope
|
|
29
|
+
| Item | Reason | Impact on Decision |
|
|
30
|
+
|------|--------|--------------------|
|
|
31
|
+
| {Unverified scope, or "none"} | {Reason it was not verified} | {APPROVE allowed / REJECT reason} |
|
|
32
|
+
|
|
33
|
+
## Rejection Gate
|
|
34
|
+
- REJECT is valid only when at least one blocking finding is observed
|
|
35
|
+
```
|
|
@@ -15,6 +15,13 @@
|
|
|
15
15
|
| Documentation | ✅ | - |
|
|
16
16
|
| Maintainability | ✅ | - |
|
|
17
17
|
|
|
18
|
+
## Contract Entry Check
|
|
19
|
+
Fill this when the diff adds or changes IDs, names, metadata, config, environment variables, or output contracts.
|
|
20
|
+
|
|
21
|
+
| Entry / Path | Original Requirement | Implementation Evidence | Test Evidence | Judgment | Exception / Unverified Evidence |
|
|
22
|
+
|--------------|----------------------|--------------------------|---------------|----------|---------------------------------|
|
|
23
|
+
| {normal entry / derived condition / validation / evaluation / output / re-injection, etc.} | {Requirement} | `src/file.ts:42` | `src/file.test.ts:10` | ✅/❌/⚠️ | {none / evidence} |
|
|
24
|
+
|
|
18
25
|
## Current Iteration Findings (new)
|
|
19
26
|
| # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
|
|
20
27
|
|---|------------|------------|----------|----------|-------|----------------|
|
|
@@ -26,9 +33,9 @@
|
|
|
26
33
|
| 1 | QA-PERSIST-src-test-L77 | test-coverage | `src/test.ts:77` | `src/test.ts:77` | Still flaky | Stabilize assertion & setup |
|
|
27
34
|
|
|
28
35
|
## Resolved Findings (resolved)
|
|
29
|
-
| finding_id | Resolution Evidence |
|
|
30
|
-
|
|
31
|
-
| QA-RESOLVED-src-test-L10 | `src/test.ts:10` now covers error path |
|
|
36
|
+
| finding_id | Original Expected Result | Resolution Evidence |
|
|
37
|
+
|------------|--------------------------|---------------------|
|
|
38
|
+
| QA-RESOLVED-src-test-L10 | {Original finding acceptance criteria} | `src/test.ts:10` now covers error path |
|
|
32
39
|
|
|
33
40
|
## Reopened Findings (reopened)
|
|
34
41
|
| # | finding_id | family_tag | Prior Resolution Evidence | Recurrence Evidence | Issue | Fix Suggestion |
|
|
@@ -40,6 +47,11 @@
|
|
|
40
47
|
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
41
48
|
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
42
49
|
|
|
50
|
+
## Unverified Scope
|
|
51
|
+
| Item | Reason | Impact on Decision |
|
|
52
|
+
|------|--------|--------------------|
|
|
53
|
+
| {Unverified scope, or "none"} | {Reason it was not verified} | {APPROVE allowed / REJECT reason} |
|
|
54
|
+
|
|
43
55
|
## Rejection Gate
|
|
44
56
|
- REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
45
57
|
- Findings without `finding_id` are invalid
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
```markdown
|
|
2
|
+
# Security Review
|
|
3
|
+
|
|
4
|
+
## Result: APPROVE / REJECT
|
|
5
|
+
|
|
6
|
+
## Severity: None / Low / Medium / High / Critical
|
|
7
|
+
|
|
8
|
+
## Check Results
|
|
9
|
+
| Category | Result | Notes |
|
|
10
|
+
|----------|--------|-------|
|
|
11
|
+
| Injection | ✅ | - |
|
|
12
|
+
| Authentication & Authorization | ✅ | - |
|
|
13
|
+
| Data Protection | ✅ | - |
|
|
14
|
+
| Dependencies | ✅ | - |
|
|
15
|
+
|
|
16
|
+
## Observed Findings
|
|
17
|
+
| # | family_tag | Severity | Type | Location | Issue | Fix Suggestion |
|
|
18
|
+
|---|------------|----------|------|----------|-------|----------------|
|
|
19
|
+
| 1 | injection-risk | High | SQLi | `src/db.ts:42` | Raw query string | Use parameterized queries |
|
|
20
|
+
|
|
21
|
+
## Verification Evidence
|
|
22
|
+
- Build: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
23
|
+
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
24
|
+
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
25
|
+
|
|
26
|
+
## Warnings (non-blocking)
|
|
27
|
+
- {Security recommendations}
|
|
28
|
+
|
|
29
|
+
## Rejection Gate
|
|
30
|
+
- REJECT is valid only when at least one blocking vulnerability is observed
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Cognitive load reduction rules:**
|
|
34
|
+
- No issues → Checklist only (10 lines or fewer)
|
|
35
|
+
- Warnings only → + Warnings in 1-2 lines (15 lines or fewer)
|
|
36
|
+
- Vulnerabilities found → + finding tables (30 lines or fewer)
|