takt 0.45.0 → 0.46.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/builtins/en/config.yaml +9 -0
- package/builtins/en/facets/instructions/implement-maintenance.md +2 -0
- package/builtins/en/facets/instructions/implement.md +3 -2
- package/builtins/en/facets/instructions/review-arch.md +1 -1
- package/builtins/en/facets/instructions/review-coding.md +4 -3
- package/builtins/en/facets/instructions/review-cqrs-es.md +1 -1
- package/builtins/en/facets/instructions/review-pure.md +1 -0
- package/builtins/en/facets/instructions/review-qa.md +1 -0
- package/builtins/en/facets/instructions/review-terraform.md +1 -1
- package/builtins/en/facets/instructions/review-test.md +2 -0
- package/builtins/en/facets/instructions/supervise-maintenance.md +7 -5
- package/builtins/en/facets/instructions/supervise.md +11 -4
- package/builtins/en/facets/instructions/write-tests-maintenance.md +1 -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/maintenance-scope.md +5 -0
- package/builtins/en/facets/output-contracts/pure-review.md +61 -0
- package/builtins/en/facets/output-contracts/qa-review.md +5 -0
- package/builtins/en/facets/output-contracts/supervisor-validation.md +1 -1
- 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/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 +2 -0
- package/builtins/en/facets/policies/coding.md +36 -0
- package/builtins/en/facets/policies/review.md +26 -1
- package/builtins/en/facets/policies/testing.md +25 -0
- package/builtins/en/workflows/backend-cqrs.yaml +21 -0
- package/builtins/en/workflows/backend.yaml +21 -0
- package/builtins/en/workflows/default-high.yaml +1 -1
- package/builtins/en/workflows/default-peer-review.yaml +24 -3
- package/builtins/en/workflows/draft.yaml +4 -32
- package/builtins/en/workflows/dual-cqrs.yaml +21 -0
- package/builtins/en/workflows/dual.yaml +5 -5
- package/builtins/en/workflows/frontend-maintenance.yaml +21 -0
- package/builtins/en/workflows/frontend.yaml +21 -0
- package/builtins/en/workflows/peer-review.yaml +13 -70
- package/builtins/en/workflows/provider-options/edit.yaml +21 -0
- package/builtins/en/workflows/provider-options/review-files.yaml +10 -0
- package/builtins/en/workflows/provider-options/review-readonly.yaml +16 -0
- package/builtins/en/workflows/provider-options/review-web.yaml +14 -0
- package/builtins/en/workflows/review-backend-cqrs.yaml +21 -0
- package/builtins/en/workflows/review-backend.yaml +21 -0
- package/builtins/en/workflows/review-default.yaml +6 -6
- package/builtins/en/workflows/review-dual-cqrs.yaml +21 -0
- package/builtins/en/workflows/review-dual.yaml +21 -0
- package/builtins/en/workflows/review-fix-backend-cqrs.yaml +21 -0
- package/builtins/en/workflows/review-fix-backend.yaml +21 -0
- package/builtins/en/workflows/review-fix-default.yaml +6 -6
- package/builtins/en/workflows/review-fix-dual-cqrs.yaml +21 -0
- package/builtins/en/workflows/review-fix-dual.yaml +21 -0
- package/builtins/en/workflows/review-fix-frontend.yaml +21 -0
- package/builtins/en/workflows/review-fix-takt-default.yaml +5 -5
- package/builtins/en/workflows/review-frontend.yaml +21 -0
- package/builtins/en/workflows/review-takt-default.yaml +6 -6
- package/builtins/en/workflows/takt-default-refresh-all.yaml +6 -6
- package/builtins/en/workflows/takt-default-refresh-fast.yaml +5 -5
- package/builtins/en/workflows/takt-default.yaml +4 -27
- package/builtins/en/workflows/terraform.yaml +23 -2
- package/builtins/ja/config.yaml +9 -0
- package/builtins/ja/facets/instructions/implement-maintenance.md +2 -0
- package/builtins/ja/facets/instructions/implement.md +3 -2
- package/builtins/ja/facets/instructions/review-arch.md +1 -1
- package/builtins/ja/facets/instructions/review-coding.md +4 -3
- package/builtins/ja/facets/instructions/review-cqrs-es.md +1 -1
- package/builtins/ja/facets/instructions/review-pure.md +1 -0
- package/builtins/ja/facets/instructions/review-qa.md +1 -0
- package/builtins/ja/facets/instructions/review-terraform.md +1 -1
- package/builtins/ja/facets/instructions/review-test.md +2 -0
- package/builtins/ja/facets/instructions/supervise-maintenance.md +6 -4
- package/builtins/ja/facets/instructions/supervise.md +11 -4
- package/builtins/ja/facets/instructions/write-tests-maintenance.md +1 -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/maintenance-scope.md +5 -0
- package/builtins/ja/facets/output-contracts/pure-review.md +61 -0
- package/builtins/ja/facets/output-contracts/qa-review.md +5 -0
- package/builtins/ja/facets/output-contracts/supervisor-validation.md +1 -1
- 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/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 +2 -0
- package/builtins/ja/facets/policies/coding.md +36 -0
- package/builtins/ja/facets/policies/review.md +26 -1
- package/builtins/ja/facets/policies/testing.md +25 -0
- package/builtins/ja/workflows/backend-cqrs.yaml +21 -0
- package/builtins/ja/workflows/backend.yaml +21 -0
- package/builtins/ja/workflows/default-high.yaml +1 -1
- package/builtins/ja/workflows/default-peer-review.yaml +24 -3
- package/builtins/ja/workflows/draft.yaml +4 -32
- package/builtins/ja/workflows/dual-cqrs.yaml +21 -0
- package/builtins/ja/workflows/dual.yaml +5 -5
- package/builtins/ja/workflows/frontend-maintenance.yaml +21 -0
- package/builtins/ja/workflows/frontend.yaml +21 -0
- package/builtins/ja/workflows/peer-review.yaml +13 -70
- package/builtins/ja/workflows/provider-options/edit.yaml +21 -0
- package/builtins/ja/workflows/provider-options/review-files.yaml +10 -0
- package/builtins/ja/workflows/provider-options/review-readonly.yaml +16 -0
- package/builtins/ja/workflows/provider-options/review-web.yaml +14 -0
- package/builtins/ja/workflows/review-backend-cqrs.yaml +21 -0
- package/builtins/ja/workflows/review-backend.yaml +21 -0
- package/builtins/ja/workflows/review-default.yaml +7 -7
- package/builtins/ja/workflows/review-dual-cqrs.yaml +21 -0
- package/builtins/ja/workflows/review-dual.yaml +21 -0
- package/builtins/ja/workflows/review-fix-backend-cqrs.yaml +21 -0
- package/builtins/ja/workflows/review-fix-backend.yaml +21 -0
- package/builtins/ja/workflows/review-fix-default.yaml +6 -6
- package/builtins/ja/workflows/review-fix-dual-cqrs.yaml +21 -0
- package/builtins/ja/workflows/review-fix-dual.yaml +21 -0
- package/builtins/ja/workflows/review-fix-frontend.yaml +21 -0
- package/builtins/ja/workflows/review-fix-takt-default.yaml +6 -6
- package/builtins/ja/workflows/review-frontend.yaml +21 -0
- package/builtins/ja/workflows/review-takt-default.yaml +7 -7
- package/builtins/ja/workflows/takt-default-refresh-all.yaml +6 -6
- package/builtins/ja/workflows/takt-default-refresh-fast.yaml +5 -5
- package/builtins/ja/workflows/takt-default.yaml +4 -27
- package/builtins/ja/workflows/terraform.yaml +22 -1
- 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/core/models/config-schemas.d.ts +16 -0
- package/dist/core/models/config-schemas.d.ts.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/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 +165 -21
- package/dist/core/models/workflow-schemas.d.ts.map +1 -1
- package/dist/core/models/workflow-schemas.js +62 -18
- package/dist/core/models/workflow-schemas.js.map +1 -1
- package/dist/core/models/workflow-types.d.ts +1 -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.map +1 -1
- package/dist/core/workflow/engine/OptionsBuilder.js +2 -0
- package/dist/core/workflow/engine/OptionsBuilder.js.map +1 -1
- package/dist/core/workflow/engine/ParallelRunner.d.ts +1 -0
- package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
- package/dist/core/workflow/engine/ParallelRunner.js +3 -0
- package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
- package/dist/core/workflow/engine/StepExecutor.d.ts.map +1 -1
- package/dist/core/workflow/engine/StepExecutor.js +1 -0
- 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/WorkflowEngineSetup.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowEngineSetup.js +2 -0
- package/dist/core/workflow/engine/WorkflowEngineSetup.js.map +1 -1
- package/dist/core/workflow/engine/WorkflowRunLoop.d.ts +1 -0
- package/dist/core/workflow/engine/WorkflowRunLoop.d.ts.map +1 -1
- package/dist/core/workflow/engine/WorkflowRunLoop.js +3 -0
- package/dist/core/workflow/engine/WorkflowRunLoop.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-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/evaluation/RuleEvaluator.d.ts +2 -0
- package/dist/core/workflow/evaluation/RuleEvaluator.d.ts.map +1 -1
- package/dist/core/workflow/evaluation/RuleEvaluator.js +1 -0
- package/dist/core/workflow/evaluation/RuleEvaluator.js.map +1 -1
- package/dist/core/workflow/observability/workflowSpans.d.ts.map +1 -1
- package/dist/core/workflow/observability/workflowSpans.js +27 -9
- package/dist/core/workflow/observability/workflowSpans.js.map +1 -1
- package/dist/core/workflow/phase-runner.d.ts +2 -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/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/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 +2 -0
- package/dist/core/workflow/types.d.ts.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/tasks/execute/workflowExecution.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecution.js +30 -0
- package/dist/features/tasks/execute/workflowExecution.js.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.d.ts.map +1 -1
- package/dist/features/tasks/execute/workflowExecutionEvents.js +6 -0
- package/dist/features/tasks/execute/workflowExecutionEvents.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.map +1 -1
- package/dist/infra/config/configNormalizers.js +9 -1
- package/dist/infra/config/configNormalizers.js.map +1 -1
- 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 +1 -1
- package/dist/infra/config/loaders/workflowParser.js.map +1 -1
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.d.ts +7 -0
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.d.ts.map +1 -0
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.js +68 -0
- package/dist/infra/config/loaders/workflowProviderOptionsResolver.js.map +1 -0
- 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 +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
- package/dist/infra/config/loaders/workflowStepNormalizer.js +41 -10
- package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
- package/dist/infra/config/providerOptions.d.ts +6 -1
- package/dist/infra/config/providerOptions.d.ts.map +1 -1
- package/dist/infra/config/providerOptions.js +31 -3
- 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/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 +7 -8
- 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 +283 -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/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 -0
- 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/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/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/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/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 +1 -0
- package/dist/shared/ui/StreamDisplay.js.map +1 -1
- package/package.json +5 -2
- 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
package/builtins/en/config.yaml
CHANGED
|
@@ -46,6 +46,15 @@ language: en # UI language: en | ja
|
|
|
46
46
|
# provider_events: false # Persist provider stream events
|
|
47
47
|
# usage_events: false # Persist usage event logs
|
|
48
48
|
|
|
49
|
+
# OpenTelemetry observability
|
|
50
|
+
# observability:
|
|
51
|
+
# enabled: true # Initialize the OpenTelemetry SDK
|
|
52
|
+
# monitor: true # Write .takt/runs/<run>/monitor.json
|
|
53
|
+
# session_log_exporter: true # Write a shadow session log from spans
|
|
54
|
+
# usage_events_phase: true # Write phase-level usage event logs
|
|
55
|
+
# Set OTEL_EXPORTER_OTLP_ENDPOINT to also export spans and metrics through OTLP HTTP.
|
|
56
|
+
# Optional OTLP overrides: OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, OTEL_EXPORTER_OTLP_METRICS_ENDPOINT.
|
|
57
|
+
|
|
49
58
|
# Analytics
|
|
50
59
|
# analytics:
|
|
51
60
|
# enabled: true # Enable local analytics collection
|
|
@@ -15,6 +15,7 @@ Use reports in the Report Directory as the primary source of truth. If additiona
|
|
|
15
15
|
- Implement only required and related changes
|
|
16
16
|
- Do not use a touched file as a reason to make style improvements, renames, file moves, hook return shape changes, comment deletions, or test expectation changes
|
|
17
17
|
- If the existing structure can satisfy the request, do not restructure only to match common style
|
|
18
|
+
- When a specification change removes an old design, do not leave code or tests that only verify the absence of the old specification
|
|
18
19
|
- After implementation, inspect the full diff and revert unnecessary changes
|
|
19
20
|
|
|
20
21
|
**Maintenance Scope output contract (create at the start of implementation):**
|
|
@@ -58,6 +59,7 @@ Before running build and tests, audit your work against Policy with the followin
|
|
|
58
59
|
2. List every `##` section (do not cherry-pick)
|
|
59
60
|
3. Match the REJECT criteria in each listed section against your implementation
|
|
60
61
|
4. Inspect the full diff and check that no out-of-scope rename, move, comment deletion, UI copy change, accessible-name change, or test expectation change remains
|
|
62
|
+
5. If a specification change replaced an old design, check that no code or test remains that only verifies absence of the old design
|
|
61
63
|
|
|
62
64
|
**Required output (include headings)**
|
|
63
65
|
## Work Results
|
|
@@ -9,6 +9,7 @@ Use reports in the Report Directory as the primary source of truth. If additiona
|
|
|
9
9
|
- Build verification is mandatory. After completing implementation, run the build (type check) and verify there are no type errors
|
|
10
10
|
- Running tests is mandatory. After build succeeds, always run tests and verify results
|
|
11
11
|
- When introducing new contract strings (file names, config key names, etc.), define them as constants in one place
|
|
12
|
+
- When the change touches a boundary (permissions, rejection paths, external execution, shared state, state transitions), briefly table the changed boundary, main state axes, expected behavior, and corresponding verification
|
|
12
13
|
|
|
13
14
|
**Scope output contract (create at the start of implementation):**
|
|
14
15
|
```markdown
|
|
@@ -41,9 +42,7 @@ Small / Medium / Large
|
|
|
41
42
|
```
|
|
42
43
|
|
|
43
44
|
**Pre-completion self-check (required):**
|
|
44
|
-
|
|
45
45
|
Before running build and tests, audit your work against Policy with the following procedure.
|
|
46
|
-
|
|
47
46
|
1. Open the Policy Source path with the Read tool and obtain the full content
|
|
48
47
|
2. List every `##` section (do not cherry-pick)
|
|
49
48
|
3. Match the REJECT criteria in each listed section against your implementation
|
|
@@ -57,3 +56,5 @@ Before running build and tests, audit your work against Policy with the followin
|
|
|
57
56
|
- {Build execution results}
|
|
58
57
|
## Test results
|
|
59
58
|
- {Test command executed and results}
|
|
59
|
+
## Boundary change check
|
|
60
|
+
- {If boundary changes exist: changed boundary, state axes, expected behavior, and corresponding verification. If none, write "Not applicable"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Focus on reviewing **architecture and design**.
|
|
2
|
-
Do not
|
|
2
|
+
Do not assume another reviewer or step has already covered an issue. Detect any problem that belongs to this review perspective.
|
|
3
3
|
|
|
4
4
|
Procedure:
|
|
5
5
|
1. Open the Knowledge and Policy Source paths with the Read tool and obtain the full content
|
|
@@ -3,6 +3,7 @@ Review the code diff.
|
|
|
3
3
|
Procedure:
|
|
4
4
|
1. Review the task intent, plan, diff, and execution evidence
|
|
5
5
|
2. Look for implementation bugs, regressions in existing behavior, security risks, and missing tests
|
|
6
|
-
3.
|
|
7
|
-
4.
|
|
8
|
-
5.
|
|
6
|
+
3. For diffs involving side effects or state changes, trace entry, normal completion, early exit, exception, and cleanup paths
|
|
7
|
+
4. Include only issues caused by the current diff that the user should fix
|
|
8
|
+
5. For each finding, include location, impact, and fix direction
|
|
9
|
+
6. Do not report unsupported speculation, preference-only changes, or unrelated pre-existing issues
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Focus on reviewing **CQRS (Command Query Responsibility Segregation) and Event Sourcing**.
|
|
2
|
-
Do not
|
|
2
|
+
Do not assume another reviewer or step has already covered an issue. Detect any problem that belongs to this review perspective.
|
|
3
3
|
|
|
4
4
|
Procedure:
|
|
5
5
|
1. Open the Knowledge and Policy Source paths with the Read tool and obtain the full content
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Review whether the current change is mergeable quality.
|
|
@@ -4,3 +4,4 @@ Procedure:
|
|
|
4
4
|
1. Open the Knowledge and Policy Source paths with the Read tool and obtain the full content
|
|
5
5
|
2. List every `##` section in each of them (do not cherry-pick)
|
|
6
6
|
3. Match the criteria in each listed section against the diff and detect any issues
|
|
7
|
+
4. Separate verified scope from unverified scope, and do not treat unverified primary paths as functionally checked
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Focus on reviewing **Terraform convention compliance**.
|
|
2
|
-
Do not
|
|
2
|
+
Do not assume another reviewer or step has already covered an issue. Detect any problem that belongs to this review perspective.
|
|
3
3
|
|
|
4
4
|
Procedure:
|
|
5
5
|
1. Open the Knowledge and Policy Source paths with the Read tool and obtain the full content
|
|
@@ -9,3 +9,5 @@ Procedure:
|
|
|
9
9
|
|
|
10
10
|
1. Cross-reference the test plan / test scope reports in the Report Directory with the implemented tests
|
|
11
11
|
2. If an external contract exists and input locations (root body / query / path) are not verified, treat it as a coverage gap by default
|
|
12
|
+
3. For changes involving side effects or state transitions, check whether representative failure paths are tested, not just the happy path
|
|
13
|
+
4. Do not treat mock-substituted verification as proof that the real integration was verified
|
|
@@ -13,11 +13,13 @@ Procedure:
|
|
|
13
13
|
2. For each requirement, identify the implemented code (file:line)
|
|
14
14
|
3. Actually verify that the code satisfies the requirement by reading files and checking build/test evidence
|
|
15
15
|
- Do not mark a compound requirement ✅ after checking only one side
|
|
16
|
-
- Do not trust plan or
|
|
16
|
+
- Do not trust plan or pure-review judgments without independent mergeability verification
|
|
17
17
|
- REJECT if any single requirement is unsatisfied
|
|
18
18
|
4. Validate the maintenance scope
|
|
19
19
|
- Check whether required, related, and unnecessary change classifications are valid
|
|
20
20
|
- Check that comments, type names, file placement, UI copy, accessible names, and test expectations did not change out of scope
|
|
21
|
+
- If a specification change replaced an old design, check that no code or test remains only to negate the old specification
|
|
22
|
+
- If a target has no final production-code diff, check that tests were not changed only as old-specification absence checks
|
|
21
23
|
- REJECT if any diff remains that is justified only by general quality improvement or style cleanup
|
|
22
24
|
5. Re-evaluate prior review findings
|
|
23
25
|
- If a finding does not hold in the code, record it as false_positive
|
|
@@ -28,7 +30,7 @@ Procedure:
|
|
|
28
30
|
|
|
29
31
|
- Summary reports are not primary evidence. Primary evidence is execution-result reports, review reports with concrete checks, and actual code
|
|
30
32
|
- `Build Results` / `Test Results` inside execution-result reports may be treated as primary evidence
|
|
31
|
-
- In `architecture-review` / `qa-review` / `testing-review` / `security-review` / `
|
|
33
|
+
- In `architecture-review` / `qa-review` / `testing-review` / `security-review` / `pure-review`, prioritize each report's verification-evidence section
|
|
32
34
|
- Treat a verification-evidence item as supporting evidence only when target, check content, and result are all present. Otherwise treat it as unverified
|
|
33
35
|
- When evidence conflicts, prefer `execution-result report > review report with concrete checks > summary report`
|
|
34
36
|
|
|
@@ -38,7 +40,7 @@ Procedure:
|
|
|
38
40
|
|
|
39
41
|
## Result: APPROVE / REJECT
|
|
40
42
|
|
|
41
|
-
##
|
|
43
|
+
## Requirements Fulfillment Check
|
|
42
44
|
|
|
43
45
|
Extract requirements from the task instructions and verify each requirement against actual code.
|
|
44
46
|
|
|
@@ -50,7 +52,7 @@ Extract requirements from the task instructions and verify each requirement agai
|
|
|
50
52
|
- Any ❌ requires REJECT
|
|
51
53
|
- ✅ without evidence is invalid
|
|
52
54
|
- Do not mark ✅ when only part of a compound case was checked
|
|
53
|
-
- Do not trust the plan report without independent verification
|
|
55
|
+
- Do not trust the plan report without independent mergeability verification
|
|
54
56
|
|
|
55
57
|
## Maintenance Scope Check
|
|
56
58
|
|
|
@@ -71,7 +73,7 @@ Extract requirements from the task instructions and verify each requirement agai
|
|
|
71
73
|
|
|
72
74
|
- If final judgment differs from prior review conclusions, write the reason with evidence
|
|
73
75
|
- When marking false_positive / overreach, state whether it is inappropriate relative to the task or the plan
|
|
74
|
-
- If overturning
|
|
76
|
+
- If overturning pure-review, provide evidence-backed reasoning
|
|
75
77
|
|
|
76
78
|
## Verification Summary
|
|
77
79
|
| Item | Status | Verification Method |
|
|
@@ -15,7 +15,8 @@ Procedure:
|
|
|
15
15
|
2. For each requirement, identify the implementing code (file:line)
|
|
16
16
|
3. Verify the code actually fulfills the requirement (read the file, check existing test/build evidence)
|
|
17
17
|
- Do not mark a composite requirement as ✅ based on only one side of the cases
|
|
18
|
-
- Do not rely on the plan report or
|
|
18
|
+
- Do not rely on the plan report or pure-review judgment; independently verify mergeability
|
|
19
|
+
- For requirements involving side effects or state changes, separate verification of happy paths, failure paths, and cleanup
|
|
19
20
|
- If any requirement is unfulfilled, REJECT
|
|
20
21
|
4. Re-evaluate prior review findings
|
|
21
22
|
- If a finding does not hold in code, classify it as `false_positive`
|
|
@@ -26,8 +27,9 @@ Procedure:
|
|
|
26
27
|
|
|
27
28
|
- Do not treat summary reports as primary evidence. Use execution-result reports, reviewer reports with concrete verification details, and actual code in that order
|
|
28
29
|
- You may treat `Build Results` / `Test Results` sections in execution-result reports as primary evidence
|
|
29
|
-
- For `architecture-review`, `qa-review`, `testing-review`, `security-review`, and `
|
|
30
|
+
- For `architecture-review`, `qa-review`, `testing-review`, `security-review`, and `pure-review`, prioritize each report's `Verification Evidence` section
|
|
30
31
|
- Treat each `Verification Evidence` item as supporting evidence only when it states the verified target, what was checked, and observed result. If any part is missing, mark that item as `unverified`
|
|
32
|
+
- Evidence based on mocks, static inspection, or limited unit tests must not be treated as verification beyond that scope
|
|
31
33
|
- If items of evidence conflict, prioritize them in this order: `execution-result report > reviewer report with concrete verification details > summary report`
|
|
32
34
|
|
|
33
35
|
**Validation output contract:**
|
|
@@ -48,7 +50,7 @@ Extract requirements from the task spec and verify each one individually against
|
|
|
48
50
|
- If any ❌ exists, REJECT is mandatory
|
|
49
51
|
- ✅ without evidence is invalid (must verify against actual code)
|
|
50
52
|
- Do not mark a row as ✅ when only part of the cases is verified
|
|
51
|
-
- Do not rely on plan report's judgment; independently verify
|
|
53
|
+
- Do not rely on plan report's judgment; independently verify mergeability
|
|
52
54
|
|
|
53
55
|
## Re-evaluation of Prior Findings
|
|
54
56
|
| finding_id | Prior status | Re-evaluation | Evidence |
|
|
@@ -57,7 +59,7 @@ Extract requirements from the task spec and verify each one individually against
|
|
|
57
59
|
|
|
58
60
|
- If final judgment differs from prior review conclusions, explain why with evidence
|
|
59
61
|
- If marking `false_positive` or `overreach`, state whether it conflicts with the task objective, the plan, or both
|
|
60
|
-
- If overturning a
|
|
62
|
+
- If overturning a pure-review conclusion, explain why with concrete evidence
|
|
61
63
|
|
|
62
64
|
## Verification Summary
|
|
63
65
|
| Item | Status | Verification method |
|
|
@@ -66,6 +68,11 @@ Extract requirements from the task spec and verify each one individually against
|
|
|
66
68
|
| Build | ✅ / ⚠️ / ❌ | {Execution log, report, CI result, or why unverified} |
|
|
67
69
|
| Functional check | ✅ / ⚠️ / ❌ | {Evidence used, or state that it was not verified} |
|
|
68
70
|
|
|
71
|
+
## Unverified Scope
|
|
72
|
+
| Item | Impact | Treatment |
|
|
73
|
+
|------|--------|-----------|
|
|
74
|
+
| {Unverified scope, or "none"} | {Primary or supporting requirement} | APPROVE allowed / REJECT reason |
|
|
75
|
+
|
|
69
76
|
## Deliverables
|
|
70
77
|
- Created: {Created files}
|
|
71
78
|
- Modified: {Modified files}
|
|
@@ -20,6 +20,7 @@ Refer only to files within the Report Directory shown in the Workflow Context. D
|
|
|
20
20
|
- One concept per test. Do not mix multiple concerns in a single test
|
|
21
21
|
- Cover happy path, error cases, boundary values, and edge cases
|
|
22
22
|
- Do not weaken existing expectations for implementation convenience
|
|
23
|
+
- When a specification change replaces an old design with a new one, do not write tests that only freeze the absence of the old specification; positively verify the new specification in the layer that owns it
|
|
23
24
|
- When an external contract exists, include tests that use the contract-defined input location
|
|
24
25
|
- Example: pass request bodies using the defined root shape as-is
|
|
25
26
|
- Example: keep query / path parameters in their defined location instead of moving them into the body
|
|
@@ -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.
|
|
@@ -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,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) | 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
|
+
## 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 | Resolution Evidence |
|
|
40
|
+
|------------|---------------------|
|
|
41
|
+
| PURE-RESOLVED-src-file-L10 | `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)
|
|
@@ -40,6 +40,11 @@
|
|
|
40
40
|
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
41
41
|
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
42
42
|
|
|
43
|
+
## Unverified Scope
|
|
44
|
+
| Item | Reason | Impact on Decision |
|
|
45
|
+
|------|--------|--------------------|
|
|
46
|
+
| {Unverified scope, or "none"} | {Reason it was not verified} | {APPROVE allowed / REJECT reason} |
|
|
47
|
+
|
|
43
48
|
## Rejection Gate
|
|
44
49
|
- REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
45
50
|
- Findings without `finding_id` are invalid
|
|
@@ -17,7 +17,7 @@ Extract requirements from the task spec and verify each one individually against
|
|
|
17
17
|
- If any ❌ exists, REJECT is mandatory
|
|
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
|
-
- Do not rely on plan report's judgment; independently verify
|
|
20
|
+
- Do not rely on plan report's judgment; independently verify mergeability
|
|
21
21
|
|
|
22
22
|
## Re-evaluation of Prior Findings
|
|
23
23
|
| finding_id | Prior Status | Re-evaluation | Evidence |
|
|
@@ -42,11 +42,16 @@
|
|
|
42
42
|
- Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
43
43
|
- Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
|
|
44
44
|
|
|
45
|
+
## Unverified Scope
|
|
46
|
+
| Item | Reason | Impact on Decision |
|
|
47
|
+
|------|--------|--------------------|
|
|
48
|
+
| {Unverified scope, or "none"} | {Reason it was not verified} | {APPROVE allowed / REJECT reason} |
|
|
49
|
+
|
|
45
50
|
## Rejection Gate
|
|
46
51
|
- REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
47
52
|
- Findings without `finding_id` are invalid
|
|
48
53
|
```
|
|
49
54
|
|
|
50
55
|
**Cognitive load reduction rules:**
|
|
51
|
-
- APPROVE: Summary only (
|
|
56
|
+
- APPROVE: Summary and unverified scope only (8 lines or fewer)
|
|
52
57
|
- REJECT: Only relevant findings in tables (30 lines or fewer)
|
|
@@ -14,8 +14,8 @@ You are an AI-generated code expert. You review code produced by AI coding assis
|
|
|
14
14
|
- Detect unnecessary backward-compatibility code
|
|
15
15
|
|
|
16
16
|
**Don't:**
|
|
17
|
-
-
|
|
18
|
-
-
|
|
17
|
+
- Flag issues that are not tied to AI-generated-code failure patterns
|
|
18
|
+
- Make speculative or preference-only findings
|
|
19
19
|
- Write code yourself
|
|
20
20
|
|
|
21
21
|
## Behavioral Principles
|
|
@@ -39,7 +39,7 @@ Code is read far more often than it is written. Poorly structured code destroys
|
|
|
39
39
|
**Don't:**
|
|
40
40
|
- Write code yourself (only provide feedback and suggestions)
|
|
41
41
|
- Give vague feedback ("clean this up" is prohibited)
|
|
42
|
-
-
|
|
42
|
+
- Flag issues that cannot be justified from this review perspective
|
|
43
43
|
|
|
44
44
|
## Important
|
|
45
45
|
|
|
@@ -9,10 +9,10 @@ You are a **PR comment posting specialist**. You post review findings to GitHub
|
|
|
9
9
|
- Filter findings by severity to reduce noise
|
|
10
10
|
|
|
11
11
|
**Don't:**
|
|
12
|
-
- Review code yourself
|
|
12
|
+
- Review code yourself
|
|
13
13
|
- Make any file edits
|
|
14
14
|
- Run tests or builds
|
|
15
|
-
- Make judgments about code quality (
|
|
15
|
+
- Make judgments about code quality (treat review reports as the posting source)
|
|
16
16
|
|
|
17
17
|
## Core Knowledge
|
|
18
18
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Pure Reviewer
|
|
2
|
+
|
|
3
|
+
You are a reviewer who plainly judges whether the current change is mergeable quality. Without limiting yourself to one specialty, identify issues that would make merging risky based on the diff, surrounding code, and execution evidence.
|
|
4
|
+
|
|
5
|
+
## Role Boundaries
|
|
6
|
+
|
|
7
|
+
**Do:**
|
|
8
|
+
- Judge whether the change can be merged now based on actual code and diffs
|
|
9
|
+
- Detect unmet requests, broken existing behavior, missing tests, out-of-scope changes, and obvious risks
|
|
10
|
+
- Report only blocking issues with concrete evidence
|
|
11
|
+
|
|
12
|
+
**Don't:**
|
|
13
|
+
- Write code yourself
|
|
14
|
+
- Turn unsupported speculation into findings
|
|
15
|
+
- Request preference-only improvements
|
|
16
|
+
- Mix unrelated pre-existing issues into the review
|
|
17
|
+
|
|
18
|
+
## Behavioral Principles
|
|
19
|
+
|
|
20
|
+
- Keep the final question as: "Can this change be merged now?"
|
|
21
|
+
- Look for impact on real users, existing flows, and tests instead of merely completing a checklist
|
|
22
|
+
- APPROVE when there are no blocking issues
|
|
@@ -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 `pure-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
|
|
@@ -12,9 +12,9 @@ You are an IaC (Infrastructure as Code) convention specialist reviewer. You veri
|
|
|
12
12
|
|
|
13
13
|
**Don't:**
|
|
14
14
|
- Write code yourself (only provide findings and fix suggestions)
|
|
15
|
-
-
|
|
16
|
-
- Review application code
|
|
17
|
-
- Execute `terraform plan`
|
|
15
|
+
- Flag issues unrelated to Terraform conventions, IaC security, or cost impact
|
|
16
|
+
- Review application code
|
|
17
|
+
- Execute `terraform plan`
|
|
18
18
|
|
|
19
19
|
## Behavioral Principles
|
|
20
20
|
|
|
@@ -112,11 +112,13 @@ AI sometimes "addresses" review findings by adding tests or documentation that "
|
|
|
112
112
|
| Adding tests instead of fixing | "Remove unnecessary comments" → adds tests verifying comment presence | REJECT |
|
|
113
113
|
| Adding docs instead of fixing | "DRY violation" → adds documentation explaining duplication is intentional | REJECT |
|
|
114
114
|
| Changing unrelated files | Security finding → performs unrelated refactoring | REJECT |
|
|
115
|
+
| Absence checks for an old specification instead of implementing a changed specification | "Replace old badge display with filtering from the list" → lower-level component only verifies the old badge is not shown | REJECT |
|
|
115
116
|
|
|
116
117
|
Verification approach:
|
|
117
118
|
1. Check if the fix diff includes changes to the finding's target file and target lines
|
|
118
119
|
2. If the fix consists only of new file additions, check whether those files "fix" the issue or merely "verify" it
|
|
119
120
|
3. If tests are added as part of the fix, verify they test "correct behavior after the fix" (not "the finding itself")
|
|
121
|
+
4. For mid-PR specification changes, verify the tests cover the new behavior in the layer that owns it, not only the absence of the old specification
|
|
120
122
|
|
|
121
123
|
## Context Fitness Assessment
|
|
122
124
|
|
|
@@ -319,6 +319,42 @@ const storage = createStorage(config)
|
|
|
319
319
|
return storage.upload(file, options)
|
|
320
320
|
```
|
|
321
321
|
|
|
322
|
+
## Naming
|
|
323
|
+
|
|
324
|
+
A name expresses the code's actual role and effect, not its implementation mechanism. Code whose name leads the reader to misread behavior, responsibility, or side effects is bad code.
|
|
325
|
+
|
|
326
|
+
| Pattern | Example | Verdict |
|
|
327
|
+
|---------|---------|---------|
|
|
328
|
+
| Name contradicts the actual effect | Reads as if it causes a side effect every time, but actually returns a cached value | REJECT |
|
|
329
|
+
| Side effects or call frequency are unreadable | Cannot tell from the name whether it initializes, retrieves, or updates | REJECT |
|
|
330
|
+
| Cannot distinguish it from nearby APIs | Same name as the wrapped or delegated API, hiding which layer owns the responsibility | REJECT |
|
|
331
|
+
| Named after role/effect | The provided value, state change, or responsibility is clear from the name | OK |
|
|
332
|
+
|
|
333
|
+
```typescript
|
|
334
|
+
// REJECT - Name reads as if it causes a side effect every time, but it is a memoized accessor
|
|
335
|
+
let resourcePromise: Promise<Resource> | null = null
|
|
336
|
+
function openResource(): Promise<Resource> {
|
|
337
|
+
if (!resourcePromise) {
|
|
338
|
+
resourcePromise = createResource()
|
|
339
|
+
}
|
|
340
|
+
return resourcePromise
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
// OK - Name it after its actual role: getting an available resource
|
|
344
|
+
function getResource(): Promise<Resource> {
|
|
345
|
+
if (!resourcePromise) {
|
|
346
|
+
resourcePromise = createResource()
|
|
347
|
+
}
|
|
348
|
+
return resourcePromise
|
|
349
|
+
}
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
Criteria:
|
|
353
|
+
1. Does the name express the actual role/effect?
|
|
354
|
+
2. Does the implementation match the side effects, call frequency, and responsibility implied by the name?
|
|
355
|
+
3. Does it avoid confusion with wrapped, delegated, or nearby APIs?
|
|
356
|
+
4. Is it consistent with the naming conventions already used in the surrounding code?
|
|
357
|
+
|
|
322
358
|
## Structure
|
|
323
359
|
|
|
324
360
|
### Criteria for Splitting
|
|
@@ -10,6 +10,8 @@ Define the shared judgment criteria and behavioral principles for all reviewers.
|
|
|
10
10
|
| Eliminate ambiguity | Vague feedback like "clean this up a bit" is prohibited. Specify file, line, and proposed fix |
|
|
11
11
|
| Fact-check | Verify against actual code before raising issues. Do not speculate |
|
|
12
12
|
| Practical fixes | Propose implementable solutions, not theoretical ideals |
|
|
13
|
+
| State consistency | For side effects and state changes, verify that success, failure, and interruption paths have no missing, duplicated, or inconsistent effects |
|
|
14
|
+
| Behavior evidence | Verify what behavior the tests or logs prove, not merely that they exist |
|
|
13
15
|
| Boy Scout | Have problems fixed within the task scope when they are in changed code or in areas directly affecting correctness, contracts, or wiring of the change |
|
|
14
16
|
|
|
15
17
|
## Scope Determination
|
|
@@ -31,6 +33,7 @@ Define the shared judgment criteria and behavioral principles for all reviewers.
|
|
|
31
33
|
REJECT without exception if any of the following apply.
|
|
32
34
|
|
|
33
35
|
- New behavior without tests
|
|
36
|
+
- Boundary changes (permissions, rejection paths, external execution, shared state, state transitions) without verification of the main allow/deny, success/failure, isolation/release behavior
|
|
34
37
|
- Bug fix without a regression test
|
|
35
38
|
- Use of `any` type
|
|
36
39
|
- Fallback value abuse (`?? 'unknown'`)
|
|
@@ -46,6 +49,7 @@ REJECT without exception if any of the following apply.
|
|
|
46
49
|
- Replaced code/exports surviving after refactoring
|
|
47
50
|
- Missing cross-validation of related fields (invariants of semantically coupled config values left unverified)
|
|
48
51
|
- Missing caller, producer, or test data updates after a contract change
|
|
52
|
+
- Missing, duplicated, or incorrectly ordered effects in side-effect or state-change paths
|
|
49
53
|
- Sensitive data exposed in logs, error responses, or test output
|
|
50
54
|
|
|
51
55
|
A DRY finding is not complete unless the proposed consolidation target is also sound. A consolidation proposal is invalid unless all of the following hold.
|
|
@@ -61,7 +65,7 @@ Not blocking, but improvement is recommended.
|
|
|
61
65
|
- Insufficient edge case / boundary value tests
|
|
62
66
|
- Tests coupled to implementation details
|
|
63
67
|
- Overly complex functions/files
|
|
64
|
-
-
|
|
68
|
+
- Naming diverges from reality
|
|
65
69
|
- TODO/FIXME with issue number, external blocker, and removal condition
|
|
66
70
|
- `@ts-ignore` or `eslint-disable` without justification
|
|
67
71
|
|
|
@@ -69,6 +73,17 @@ Not blocking, but improvement is recommended.
|
|
|
69
73
|
|
|
70
74
|
Approve when all REJECT criteria are cleared and quality standards are met. Never give conditional approval. If there are problems, reject.
|
|
71
75
|
|
|
76
|
+
## Judging Behavior Evidence
|
|
77
|
+
|
|
78
|
+
Checks that only inspect configuration values, logs, snapshots, or the last observed state are supplementary evidence. They do not prove primary behaviors such as rejection, permission, isolation, or release.
|
|
79
|
+
|
|
80
|
+
| Evidence | Judgment |
|
|
81
|
+
|----------|----------|
|
|
82
|
+
| Expected behavior is observed in execution results | OK |
|
|
83
|
+
| Deterministic tests cover the main boundary conditions | OK |
|
|
84
|
+
| Only external-environment E2E exists, with no reproducible verification of the main boundary | Warning or REJECT |
|
|
85
|
+
| Behavior is approved from configuration values, logs, or snapshots only | REJECT |
|
|
86
|
+
|
|
72
87
|
## Fact-Checking
|
|
73
88
|
|
|
74
89
|
Always verify facts before raising an issue.
|
|
@@ -232,6 +247,16 @@ The review target is the entire cumulative diff from the task's starting point (
|
|
|
232
247
|
- Do not dismiss intentional decisions as false positives just because they were recorded. Evaluate validity against `order.md` / `plan.md` / actual code
|
|
233
248
|
- If the design decision itself is flawed, raise it
|
|
234
249
|
|
|
250
|
+
### Reviewing Side Effects and State Transitions
|
|
251
|
+
|
|
252
|
+
When a change involves side effects or state changes such as external calls, configuration application, sessions, queues, locks, subscriptions, caches, or temporary resources, do not judge from the happy path alone.
|
|
253
|
+
|
|
254
|
+
- Trace entry, normal completion, early return, exception, retry, interruption, and cleanup paths
|
|
255
|
+
- Verify that anything acquired, started, registered, or applied is handled exactly as required on the corresponding paths
|
|
256
|
+
- Verify that the same side effect is not executed more than once, and that required effects are not skipped on failure paths
|
|
257
|
+
- For changes that affect shared state or downstream execution, verify that partial failure does not leave state that breaks the next run
|
|
258
|
+
- If these checks have not been performed, do not treat the behavior as functionally verified
|
|
259
|
+
|
|
235
260
|
### Tracking Findings from Previous Reviews
|
|
236
261
|
|
|
237
262
|
- Look in the Report Directory for review reports this step has previously produced, along with their timestamped history
|