@rpamis/comet 0.4.0-beta.5 → 0.4.0-beta.7
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 +215 -77
- package/assets/manifest.json +14 -5
- package/assets/skills/comet/SKILL.md +17 -282
- package/assets/skills/comet/reference/comet-yaml-fields.md +5 -3
- package/assets/skills/comet/reference/context-recovery.md +3 -3
- package/assets/skills/comet/reference/intent-frame.md +2 -2
- package/assets/skills/comet/reference/scripts.md +2 -2
- package/assets/skills/comet/rules/comet-workflow-guard.en.md +32 -0
- package/assets/skills/comet/rules/comet-workflow-guard.md +32 -0
- package/assets/skills/comet/scripts/comet-entry-runtime.mjs +7834 -0
- package/assets/skills/comet/scripts/comet-hook-router.mjs +10307 -0
- package/assets/skills/comet/scripts/comet-runtime.mjs +782 -425
- package/assets/skills/comet-any/SKILL.md +4 -4
- package/assets/skills/comet-any/reference/authoring-subagents.md +1 -1
- package/assets/skills/comet-any/reference/bundle-authoring.md +1 -1
- package/assets/skills/comet-any/reference/subagents/reference-author.md +1 -1
- package/assets/skills/comet-any/reference/subagents/script-author.md +1 -1
- package/assets/skills/comet-any/reference/subagents/skill-core-author.md +1 -1
- package/assets/skills/comet-any/reference/subagents/skill-reviewer.md +2 -2
- package/assets/skills/comet-any/reference/subagents/workflow-entry-author.md +3 -3
- package/assets/skills/comet-archive/SKILL.md +7 -9
- package/assets/skills/comet-build/SKILL.md +17 -11
- package/assets/skills/comet-classic/SKILL.md +293 -0
- package/assets/skills/comet-design/SKILL.md +1 -1
- package/assets/skills/comet-hotfix/SKILL.md +20 -6
- package/assets/skills/comet-native/SKILL.md +257 -0
- package/assets/skills/comet-native/reference/artifacts.md +204 -0
- package/assets/skills/comet-native/reference/commands.md +118 -0
- package/assets/skills/comet-native/reference/recovery.md +143 -0
- package/assets/skills/comet-native/scripts/comet-native-hook-guard.mjs +4 -0
- package/assets/skills/comet-native/scripts/comet-native-runtime.mjs +28898 -0
- package/assets/skills/comet-open/SKILL.md +4 -4
- package/assets/skills/comet-tweak/SKILL.md +22 -10
- package/assets/skills/comet-verify/SKILL.md +2 -0
- package/assets/skills-zh/comet/SKILL.md +17 -270
- package/assets/skills-zh/comet/reference/comet-yaml-fields.md +5 -3
- package/assets/skills-zh/comet/reference/context-recovery.md +3 -3
- package/assets/skills-zh/comet/reference/intent-frame.md +2 -2
- package/assets/skills-zh/comet/reference/scripts.md +2 -2
- package/assets/skills-zh/comet-any/SKILL.md +4 -4
- package/assets/skills-zh/comet-any/reference/authoring-subagents.md +1 -1
- package/assets/skills-zh/comet-any/reference/bundle-authoring.md +1 -1
- package/assets/skills-zh/comet-any/reference/subagents/reference-author.md +1 -1
- package/assets/skills-zh/comet-any/reference/subagents/script-author.md +1 -1
- package/assets/skills-zh/comet-any/reference/subagents/skill-core-author.md +1 -1
- package/assets/skills-zh/comet-any/reference/subagents/skill-reviewer.md +2 -2
- package/assets/skills-zh/comet-any/reference/subagents/workflow-entry-author.md +3 -3
- package/assets/skills-zh/comet-archive/SKILL.md +7 -9
- package/assets/skills-zh/comet-build/SKILL.md +17 -11
- package/assets/skills-zh/comet-classic/SKILL.md +281 -0
- package/assets/skills-zh/comet-design/SKILL.md +1 -1
- package/assets/skills-zh/comet-hotfix/SKILL.md +20 -6
- package/assets/skills-zh/comet-native/SKILL.md +257 -0
- package/assets/skills-zh/comet-native/reference/artifacts.md +206 -0
- package/assets/skills-zh/comet-native/reference/commands.md +118 -0
- package/assets/skills-zh/comet-native/reference/recovery.md +143 -0
- package/assets/skills-zh/comet-open/SKILL.md +4 -4
- package/assets/skills-zh/comet-tweak/SKILL.md +22 -10
- package/assets/skills-zh/comet-verify/SKILL.md +2 -0
- package/dist/app/cli/index.js +59 -13
- package/dist/app/cli/index.js.map +1 -1
- package/dist/app/commands/command-result.d.ts +6 -0
- package/dist/app/commands/command-result.d.ts.map +1 -0
- package/dist/app/commands/command-result.js +4 -0
- package/dist/app/commands/command-result.js.map +1 -0
- package/dist/app/commands/doctor.d.ts +1 -0
- package/dist/app/commands/doctor.d.ts.map +1 -1
- package/dist/app/commands/doctor.js +201 -26
- package/dist/app/commands/doctor.js.map +1 -1
- package/dist/app/commands/eval.d.ts +3 -1
- package/dist/app/commands/eval.d.ts.map +1 -1
- package/dist/app/commands/eval.js +17 -7
- package/dist/app/commands/eval.js.map +1 -1
- package/dist/app/commands/i18n.d.ts +1 -1
- package/dist/app/commands/i18n.d.ts.map +1 -1
- package/dist/app/commands/i18n.js +6 -2
- package/dist/app/commands/i18n.js.map +1 -1
- package/dist/app/commands/init.d.ts +10 -2
- package/dist/app/commands/init.d.ts.map +1 -1
- package/dist/app/commands/init.js +331 -50
- package/dist/app/commands/init.js.map +1 -1
- package/dist/app/commands/native.d.ts +2 -0
- package/dist/app/commands/native.d.ts.map +1 -0
- package/dist/app/commands/native.js +10 -0
- package/dist/app/commands/native.js.map +1 -0
- package/dist/app/commands/project-scope-selection.d.ts.map +1 -1
- package/dist/app/commands/project-scope-selection.js +2 -0
- package/dist/app/commands/project-scope-selection.js.map +1 -1
- package/dist/app/commands/resume-probe.d.ts.map +1 -1
- package/dist/app/commands/resume-probe.js +8 -2
- package/dist/app/commands/resume-probe.js.map +1 -1
- package/dist/app/commands/status.d.ts +0 -31
- package/dist/app/commands/status.d.ts.map +1 -1
- package/dist/app/commands/status.js +49 -172
- package/dist/app/commands/status.js.map +1 -1
- package/dist/app/commands/update.d.ts +20 -4
- package/dist/app/commands/update.d.ts.map +1 -1
- package/dist/app/commands/update.js +698 -90
- package/dist/app/commands/update.js.map +1 -1
- package/dist/app/commands/workflow.d.ts +6 -0
- package/dist/app/commands/workflow.d.ts.map +1 -0
- package/dist/app/commands/workflow.js +11 -0
- package/dist/app/commands/workflow.js.map +1 -0
- package/dist/config/repository-layout.json +21 -1
- package/dist/domains/comet-classic/classic-archive.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-archive.js +3 -0
- package/dist/domains/comet-classic/classic-archive.js.map +1 -1
- package/dist/domains/comet-classic/classic-branch-binding.d.ts +51 -0
- package/dist/domains/comet-classic/classic-branch-binding.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-branch-binding.js +107 -0
- package/dist/domains/comet-classic/classic-branch-binding.js.map +1 -0
- package/dist/domains/comet-classic/classic-current-change.d.ts +3 -5
- package/dist/domains/comet-classic/classic-current-change.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-current-change.js +59 -68
- package/dist/domains/comet-classic/classic-current-change.js.map +1 -1
- package/dist/domains/comet-classic/classic-guard.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-guard.js +40 -10
- package/dist/domains/comet-classic/classic-guard.js.map +1 -1
- package/dist/domains/comet-classic/classic-hook-guard.d.ts +9 -0
- package/dist/domains/comet-classic/classic-hook-guard.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-hook-guard.js +109 -13
- package/dist/domains/comet-classic/classic-hook-guard.js.map +1 -1
- package/dist/domains/comet-classic/classic-project-config.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-project-config.js +12 -8
- package/dist/domains/comet-classic/classic-project-config.js.map +1 -1
- package/dist/domains/comet-classic/classic-runtime-run.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-runtime-run.js +9 -1
- package/dist/domains/comet-classic/classic-runtime-run.js.map +1 -1
- package/dist/domains/comet-classic/classic-state-command.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-state-command.js +94 -4
- package/dist/domains/comet-classic/classic-state-command.js.map +1 -1
- package/dist/domains/comet-classic/classic-state-events.d.ts +1 -1
- package/dist/domains/comet-classic/classic-state-events.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-state.d.ts +2 -1
- package/dist/domains/comet-classic/classic-state.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-state.js +3 -0
- package/dist/domains/comet-classic/classic-state.js.map +1 -1
- package/dist/domains/comet-classic/classic-transitions.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-transitions.js +1 -0
- package/dist/domains/comet-classic/classic-transitions.js.map +1 -1
- package/dist/domains/comet-classic/classic-validate-command.d.ts.map +1 -1
- package/dist/domains/comet-classic/classic-validate-command.js +6 -0
- package/dist/domains/comet-classic/classic-validate-command.js.map +1 -1
- package/dist/domains/comet-entry/current-selection-repair.d.ts +17 -0
- package/dist/domains/comet-entry/current-selection-repair.d.ts.map +1 -0
- package/dist/domains/comet-entry/current-selection-repair.js +19 -0
- package/dist/domains/comet-entry/current-selection-repair.js.map +1 -0
- package/dist/domains/comet-entry/current-selection.d.ts +28 -0
- package/dist/domains/comet-entry/current-selection.d.ts.map +1 -0
- package/dist/domains/comet-entry/current-selection.js +116 -0
- package/dist/domains/comet-entry/current-selection.js.map +1 -0
- package/dist/domains/comet-entry/entry-runtime-entry.d.ts +2 -0
- package/dist/domains/comet-entry/entry-runtime-entry.d.ts.map +1 -0
- package/dist/domains/comet-entry/entry-runtime-entry.js +3 -0
- package/dist/domains/comet-entry/entry-runtime-entry.js.map +1 -0
- package/dist/domains/comet-entry/entry-runtime.d.ts +7 -0
- package/dist/domains/comet-entry/entry-runtime.d.ts.map +1 -0
- package/dist/domains/comet-entry/entry-runtime.js +55 -0
- package/dist/domains/comet-entry/entry-runtime.js.map +1 -0
- package/dist/domains/comet-entry/hook-adapter.d.ts +6 -0
- package/dist/domains/comet-entry/hook-adapter.d.ts.map +1 -0
- package/dist/domains/comet-entry/hook-adapter.js +202 -0
- package/dist/domains/comet-entry/hook-adapter.js.map +1 -0
- package/dist/domains/comet-entry/hook-router-entry.d.ts +8 -0
- package/dist/domains/comet-entry/hook-router-entry.d.ts.map +1 -0
- package/dist/domains/comet-entry/hook-router-entry.js +92 -0
- package/dist/domains/comet-entry/hook-router-entry.js.map +1 -0
- package/dist/domains/comet-entry/hook-router.d.ts +32 -0
- package/dist/domains/comet-entry/hook-router.d.ts.map +1 -0
- package/dist/domains/comet-entry/hook-router.js +133 -0
- package/dist/domains/comet-entry/hook-router.js.map +1 -0
- package/dist/domains/comet-entry/hook-types.d.ts +20 -0
- package/dist/domains/comet-entry/hook-types.d.ts.map +1 -0
- package/dist/domains/comet-entry/hook-types.js +2 -0
- package/dist/domains/comet-entry/hook-types.js.map +1 -0
- package/dist/domains/comet-entry/init-workflow.d.ts +16 -0
- package/dist/domains/comet-entry/init-workflow.d.ts.map +1 -0
- package/dist/domains/comet-entry/init-workflow.js +103 -0
- package/dist/domains/comet-entry/init-workflow.js.map +1 -0
- package/dist/domains/comet-entry/project-status.d.ts +3 -0
- package/dist/domains/comet-entry/project-status.d.ts.map +1 -0
- package/dist/domains/comet-entry/project-status.js +222 -0
- package/dist/domains/comet-entry/project-status.js.map +1 -0
- package/dist/domains/comet-entry/resolve-entry.d.ts +3 -0
- package/dist/domains/comet-entry/resolve-entry.d.ts.map +1 -0
- package/dist/domains/comet-entry/resolve-entry.js +22 -0
- package/dist/domains/comet-entry/resolve-entry.js.map +1 -0
- package/dist/domains/comet-entry/resume-probe.d.ts +34 -0
- package/dist/domains/comet-entry/resume-probe.d.ts.map +1 -0
- package/dist/domains/comet-entry/resume-probe.js +458 -0
- package/dist/domains/comet-entry/resume-probe.js.map +1 -0
- package/dist/domains/comet-entry/types.d.ts +59 -0
- package/dist/domains/comet-entry/types.d.ts.map +1 -0
- package/dist/domains/comet-entry/types.js +2 -0
- package/dist/domains/comet-entry/types.js.map +1 -0
- package/dist/domains/comet-entry/workflow-resolution.d.ts +8 -0
- package/dist/domains/comet-entry/workflow-resolution.d.ts.map +1 -0
- package/dist/domains/comet-entry/workflow-resolution.js +16 -0
- package/dist/domains/comet-entry/workflow-resolution.js.map +1 -0
- package/dist/domains/comet-native/index.d.ts +35 -0
- package/dist/domains/comet-native/index.d.ts.map +1 -0
- package/dist/domains/comet-native/index.js +35 -0
- package/dist/domains/comet-native/index.js.map +1 -0
- package/dist/domains/comet-native/native-acceptance.d.ts +42 -0
- package/dist/domains/comet-native/native-acceptance.d.ts.map +1 -0
- package/dist/domains/comet-native/native-acceptance.js +503 -0
- package/dist/domains/comet-native/native-acceptance.js.map +1 -0
- package/dist/domains/comet-native/native-archive-content.d.ts +26 -0
- package/dist/domains/comet-native/native-archive-content.d.ts.map +1 -0
- package/dist/domains/comet-native/native-archive-content.js +159 -0
- package/dist/domains/comet-native/native-archive-content.js.map +1 -0
- package/dist/domains/comet-native/native-archive-inspection.d.ts +9 -0
- package/dist/domains/comet-native/native-archive-inspection.d.ts.map +1 -0
- package/dist/domains/comet-native/native-archive-inspection.js +94 -0
- package/dist/domains/comet-native/native-archive-inspection.js.map +1 -0
- package/dist/domains/comet-native/native-archive-preflight.d.ts +52 -0
- package/dist/domains/comet-native/native-archive-preflight.d.ts.map +1 -0
- package/dist/domains/comet-native/native-archive-preflight.js +214 -0
- package/dist/domains/comet-native/native-archive-preflight.js.map +1 -0
- package/dist/domains/comet-native/native-archive-transaction.d.ts +19 -0
- package/dist/domains/comet-native/native-archive-transaction.d.ts.map +1 -0
- package/dist/domains/comet-native/native-archive-transaction.js +1181 -0
- package/dist/domains/comet-native/native-archive-transaction.js.map +1 -0
- package/dist/domains/comet-native/native-archive.d.ts +36 -0
- package/dist/domains/comet-native/native-archive.d.ts.map +1 -0
- package/dist/domains/comet-native/native-archive.js +403 -0
- package/dist/domains/comet-native/native-archive.js.map +1 -0
- package/dist/domains/comet-native/native-artifacts.d.ts +10 -0
- package/dist/domains/comet-native/native-artifacts.d.ts.map +1 -0
- package/dist/domains/comet-native/native-artifacts.js +204 -0
- package/dist/domains/comet-native/native-artifacts.js.map +1 -0
- package/dist/domains/comet-native/native-atomic-file.d.ts +10 -0
- package/dist/domains/comet-native/native-atomic-file.d.ts.map +1 -0
- package/dist/domains/comet-native/native-atomic-file.js +175 -0
- package/dist/domains/comet-native/native-atomic-file.js.map +1 -0
- package/dist/domains/comet-native/native-bounded-file.d.ts +19 -0
- package/dist/domains/comet-native/native-bounded-file.d.ts.map +1 -0
- package/dist/domains/comet-native/native-bounded-file.js +180 -0
- package/dist/domains/comet-native/native-bounded-file.js.map +1 -0
- package/dist/domains/comet-native/native-build-evidence.d.ts +42 -0
- package/dist/domains/comet-native/native-build-evidence.d.ts.map +1 -0
- package/dist/domains/comet-native/native-build-evidence.js +257 -0
- package/dist/domains/comet-native/native-build-evidence.js.map +1 -0
- package/dist/domains/comet-native/native-canonical-hash.d.ts +10 -0
- package/dist/domains/comet-native/native-canonical-hash.d.ts.map +1 -0
- package/dist/domains/comet-native/native-canonical-hash.js +100 -0
- package/dist/domains/comet-native/native-canonical-hash.js.map +1 -0
- package/dist/domains/comet-native/native-change-recovery.d.ts +11 -0
- package/dist/domains/comet-native/native-change-recovery.d.ts.map +1 -0
- package/dist/domains/comet-native/native-change-recovery.js +15 -0
- package/dist/domains/comet-native/native-change-recovery.js.map +1 -0
- package/dist/domains/comet-native/native-change.d.ts +61 -0
- package/dist/domains/comet-native/native-change.d.ts.map +1 -0
- package/dist/domains/comet-native/native-change.js +696 -0
- package/dist/domains/comet-native/native-change.js.map +1 -0
- package/dist/domains/comet-native/native-check-receipt-model.d.ts +63 -0
- package/dist/domains/comet-native/native-check-receipt-model.d.ts.map +1 -0
- package/dist/domains/comet-native/native-check-receipt-model.js +347 -0
- package/dist/domains/comet-native/native-check-receipt-model.js.map +1 -0
- package/dist/domains/comet-native/native-check-receipt-storage.d.ts +10 -0
- package/dist/domains/comet-native/native-check-receipt-storage.d.ts.map +1 -0
- package/dist/domains/comet-native/native-check-receipt-storage.js +196 -0
- package/dist/domains/comet-native/native-check-receipt-storage.js.map +1 -0
- package/dist/domains/comet-native/native-check-receipt.d.ts +19 -0
- package/dist/domains/comet-native/native-check-receipt.d.ts.map +1 -0
- package/dist/domains/comet-native/native-check-receipt.js +446 -0
- package/dist/domains/comet-native/native-check-receipt.js.map +1 -0
- package/dist/domains/comet-native/native-check.d.ts +18 -0
- package/dist/domains/comet-native/native-check.d.ts.map +1 -0
- package/dist/domains/comet-native/native-check.js +29 -0
- package/dist/domains/comet-native/native-check.js.map +1 -0
- package/dist/domains/comet-native/native-checkpoint-journal.d.ts +13 -0
- package/dist/domains/comet-native/native-checkpoint-journal.d.ts.map +1 -0
- package/dist/domains/comet-native/native-checkpoint-journal.js +53 -0
- package/dist/domains/comet-native/native-checkpoint-journal.js.map +1 -0
- package/dist/domains/comet-native/native-checkpoint-storage.d.ts +43 -0
- package/dist/domains/comet-native/native-checkpoint-storage.d.ts.map +1 -0
- package/dist/domains/comet-native/native-checkpoint-storage.js +487 -0
- package/dist/domains/comet-native/native-checkpoint-storage.js.map +1 -0
- package/dist/domains/comet-native/native-cli-entry.d.ts +2 -0
- package/dist/domains/comet-native/native-cli-entry.d.ts.map +1 -0
- package/dist/domains/comet-native/native-cli-entry.js +18 -0
- package/dist/domains/comet-native/native-cli-entry.js.map +1 -0
- package/dist/domains/comet-native/native-cli.d.ts +7 -0
- package/dist/domains/comet-native/native-cli.d.ts.map +1 -0
- package/dist/domains/comet-native/native-cli.js +642 -0
- package/dist/domains/comet-native/native-cli.js.map +1 -0
- package/dist/domains/comet-native/native-config.d.ts +15 -0
- package/dist/domains/comet-native/native-config.d.ts.map +1 -0
- package/dist/domains/comet-native/native-config.js +281 -0
- package/dist/domains/comet-native/native-config.js.map +1 -0
- package/dist/domains/comet-native/native-conflict-inspection.d.ts +17 -0
- package/dist/domains/comet-native/native-conflict-inspection.d.ts.map +1 -0
- package/dist/domains/comet-native/native-conflict-inspection.js +90 -0
- package/dist/domains/comet-native/native-conflict-inspection.js.map +1 -0
- package/dist/domains/comet-native/native-conflict-radar.d.ts +75 -0
- package/dist/domains/comet-native/native-conflict-radar.d.ts.map +1 -0
- package/dist/domains/comet-native/native-conflict-radar.js +326 -0
- package/dist/domains/comet-native/native-conflict-radar.js.map +1 -0
- package/dist/domains/comet-native/native-continuation.d.ts +9 -0
- package/dist/domains/comet-native/native-continuation.d.ts.map +1 -0
- package/dist/domains/comet-native/native-continuation.js +146 -0
- package/dist/domains/comet-native/native-continuation.js.map +1 -0
- package/dist/domains/comet-native/native-contract-files.d.ts +24 -0
- package/dist/domains/comet-native/native-contract-files.d.ts.map +1 -0
- package/dist/domains/comet-native/native-contract-files.js +66 -0
- package/dist/domains/comet-native/native-contract-files.js.map +1 -0
- package/dist/domains/comet-native/native-contract.d.ts +41 -0
- package/dist/domains/comet-native/native-contract.d.ts.map +1 -0
- package/dist/domains/comet-native/native-contract.js +141 -0
- package/dist/domains/comet-native/native-contract.js.map +1 -0
- package/dist/domains/comet-native/native-diagnostics.d.ts +18 -0
- package/dist/domains/comet-native/native-diagnostics.d.ts.map +1 -0
- package/dist/domains/comet-native/native-diagnostics.js +522 -0
- package/dist/domains/comet-native/native-diagnostics.js.map +1 -0
- package/dist/domains/comet-native/native-doctor.d.ts +12 -0
- package/dist/domains/comet-native/native-doctor.d.ts.map +1 -0
- package/dist/domains/comet-native/native-doctor.js +768 -0
- package/dist/domains/comet-native/native-doctor.js.map +1 -0
- package/dist/domains/comet-native/native-evidence-retention.d.ts +37 -0
- package/dist/domains/comet-native/native-evidence-retention.d.ts.map +1 -0
- package/dist/domains/comet-native/native-evidence-retention.js +885 -0
- package/dist/domains/comet-native/native-evidence-retention.js.map +1 -0
- package/dist/domains/comet-native/native-evidence-storage.d.ts +41 -0
- package/dist/domains/comet-native/native-evidence-storage.d.ts.map +1 -0
- package/dist/domains/comet-native/native-evidence-storage.js +351 -0
- package/dist/domains/comet-native/native-evidence-storage.js.map +1 -0
- package/dist/domains/comet-native/native-findings.d.ts +8 -0
- package/dist/domains/comet-native/native-findings.d.ts.map +1 -0
- package/dist/domains/comet-native/native-findings.js +238 -0
- package/dist/domains/comet-native/native-findings.js.map +1 -0
- package/dist/domains/comet-native/native-guards.d.ts +7 -0
- package/dist/domains/comet-native/native-guards.d.ts.map +1 -0
- package/dist/domains/comet-native/native-guards.js +126 -0
- package/dist/domains/comet-native/native-guards.js.map +1 -0
- package/dist/domains/comet-native/native-hash.d.ts +3 -0
- package/dist/domains/comet-native/native-hash.d.ts.map +1 -0
- package/dist/domains/comet-native/native-hash.js +12 -0
- package/dist/domains/comet-native/native-hash.js.map +1 -0
- package/dist/domains/comet-native/native-hook-guard.d.ts +17 -0
- package/dist/domains/comet-native/native-hook-guard.d.ts.map +1 -0
- package/dist/domains/comet-native/native-hook-guard.js +154 -0
- package/dist/domains/comet-native/native-hook-guard.js.map +1 -0
- package/dist/domains/comet-native/native-lock.d.ts +47 -0
- package/dist/domains/comet-native/native-lock.d.ts.map +1 -0
- package/dist/domains/comet-native/native-lock.js +395 -0
- package/dist/domains/comet-native/native-lock.js.map +1 -0
- package/dist/domains/comet-native/native-mutation-lock.d.ts +5 -0
- package/dist/domains/comet-native/native-mutation-lock.d.ts.map +1 -0
- package/dist/domains/comet-native/native-mutation-lock.js +66 -0
- package/dist/domains/comet-native/native-mutation-lock.js.map +1 -0
- package/dist/domains/comet-native/native-paths.d.ts +10 -0
- package/dist/domains/comet-native/native-paths.d.ts.map +1 -0
- package/dist/domains/comet-native/native-paths.js +171 -0
- package/dist/domains/comet-native/native-paths.js.map +1 -0
- package/dist/domains/comet-native/native-progress-checkpoint.d.ts +13 -0
- package/dist/domains/comet-native/native-progress-checkpoint.d.ts.map +1 -0
- package/dist/domains/comet-native/native-progress-checkpoint.js +104 -0
- package/dist/domains/comet-native/native-progress-checkpoint.js.map +1 -0
- package/dist/domains/comet-native/native-protected-file.d.ts +113 -0
- package/dist/domains/comet-native/native-protected-file.d.ts.map +1 -0
- package/dist/domains/comet-native/native-protected-file.js +509 -0
- package/dist/domains/comet-native/native-protected-file.js.map +1 -0
- package/dist/domains/comet-native/native-redaction.d.ts +2 -0
- package/dist/domains/comet-native/native-redaction.d.ts.map +1 -0
- package/dist/domains/comet-native/native-redaction.js +18 -0
- package/dist/domains/comet-native/native-redaction.js.map +1 -0
- package/dist/domains/comet-native/native-repair-integration.d.ts +42 -0
- package/dist/domains/comet-native/native-repair-integration.d.ts.map +1 -0
- package/dist/domains/comet-native/native-repair-integration.js +184 -0
- package/dist/domains/comet-native/native-repair-integration.js.map +1 -0
- package/dist/domains/comet-native/native-repair-runtime.d.ts +73 -0
- package/dist/domains/comet-native/native-repair-runtime.d.ts.map +1 -0
- package/dist/domains/comet-native/native-repair-runtime.js +509 -0
- package/dist/domains/comet-native/native-repair-runtime.js.map +1 -0
- package/dist/domains/comet-native/native-repair-stagnation.d.ts +85 -0
- package/dist/domains/comet-native/native-repair-stagnation.d.ts.map +1 -0
- package/dist/domains/comet-native/native-repair-stagnation.js +256 -0
- package/dist/domains/comet-native/native-repair-stagnation.js.map +1 -0
- package/dist/domains/comet-native/native-resume-view.d.ts +14 -0
- package/dist/domains/comet-native/native-resume-view.d.ts.map +1 -0
- package/dist/domains/comet-native/native-resume-view.js +105 -0
- package/dist/domains/comet-native/native-resume-view.js.map +1 -0
- package/dist/domains/comet-native/native-revision.d.ts +20 -0
- package/dist/domains/comet-native/native-revision.d.ts.map +1 -0
- package/dist/domains/comet-native/native-revision.js +32 -0
- package/dist/domains/comet-native/native-revision.js.map +1 -0
- package/dist/domains/comet-native/native-root-move.d.ts +20 -0
- package/dist/domains/comet-native/native-root-move.d.ts.map +1 -0
- package/dist/domains/comet-native/native-root-move.js +812 -0
- package/dist/domains/comet-native/native-root-move.js.map +1 -0
- package/dist/domains/comet-native/native-run-consistency.d.ts +3 -0
- package/dist/domains/comet-native/native-run-consistency.d.ts.map +1 -0
- package/dist/domains/comet-native/native-run-consistency.js +136 -0
- package/dist/domains/comet-native/native-run-consistency.js.map +1 -0
- package/dist/domains/comet-native/native-run-store.d.ts +41 -0
- package/dist/domains/comet-native/native-run-store.d.ts.map +1 -0
- package/dist/domains/comet-native/native-run-store.js +451 -0
- package/dist/domains/comet-native/native-run-store.js.map +1 -0
- package/dist/domains/comet-native/native-runtime-package.d.ts +16 -0
- package/dist/domains/comet-native/native-runtime-package.d.ts.map +1 -0
- package/dist/domains/comet-native/native-runtime-package.js +72 -0
- package/dist/domains/comet-native/native-runtime-package.js.map +1 -0
- package/dist/domains/comet-native/native-schema-migration.d.ts +11 -0
- package/dist/domains/comet-native/native-schema-migration.d.ts.map +1 -0
- package/dist/domains/comet-native/native-schema-migration.js +899 -0
- package/dist/domains/comet-native/native-schema-migration.js.map +1 -0
- package/dist/domains/comet-native/native-selection.d.ts +12 -0
- package/dist/domains/comet-native/native-selection.d.ts.map +1 -0
- package/dist/domains/comet-native/native-selection.js +52 -0
- package/dist/domains/comet-native/native-selection.js.map +1 -0
- package/dist/domains/comet-native/native-sensitive-paths.d.ts +7 -0
- package/dist/domains/comet-native/native-sensitive-paths.d.ts.map +1 -0
- package/dist/domains/comet-native/native-sensitive-paths.js +69 -0
- package/dist/domains/comet-native/native-sensitive-paths.js.map +1 -0
- package/dist/domains/comet-native/native-snapshot.d.ts +74 -0
- package/dist/domains/comet-native/native-snapshot.d.ts.map +1 -0
- package/dist/domains/comet-native/native-snapshot.js +2308 -0
- package/dist/domains/comet-native/native-snapshot.js.map +1 -0
- package/dist/domains/comet-native/native-specs.d.ts +12 -0
- package/dist/domains/comet-native/native-specs.d.ts.map +1 -0
- package/dist/domains/comet-native/native-specs.js +270 -0
- package/dist/domains/comet-native/native-specs.js.map +1 -0
- package/dist/domains/comet-native/native-trajectory-limits.d.ts +7 -0
- package/dist/domains/comet-native/native-trajectory-limits.d.ts.map +1 -0
- package/dist/domains/comet-native/native-trajectory-limits.js +13 -0
- package/dist/domains/comet-native/native-trajectory-limits.js.map +1 -0
- package/dist/domains/comet-native/native-trajectory-recovery.d.ts +37 -0
- package/dist/domains/comet-native/native-trajectory-recovery.d.ts.map +1 -0
- package/dist/domains/comet-native/native-trajectory-recovery.js +133 -0
- package/dist/domains/comet-native/native-trajectory-recovery.js.map +1 -0
- package/dist/domains/comet-native/native-trajectory.d.ts +16 -0
- package/dist/domains/comet-native/native-trajectory.d.ts.map +1 -0
- package/dist/domains/comet-native/native-trajectory.js +27 -0
- package/dist/domains/comet-native/native-trajectory.js.map +1 -0
- package/dist/domains/comet-native/native-transaction.d.ts +45 -0
- package/dist/domains/comet-native/native-transaction.d.ts.map +1 -0
- package/dist/domains/comet-native/native-transaction.js +846 -0
- package/dist/domains/comet-native/native-transaction.js.map +1 -0
- package/dist/domains/comet-native/native-transition-evidence.d.ts +4 -0
- package/dist/domains/comet-native/native-transition-evidence.d.ts.map +1 -0
- package/dist/domains/comet-native/native-transition-evidence.js +20 -0
- package/dist/domains/comet-native/native-transition-evidence.js.map +1 -0
- package/dist/domains/comet-native/native-transition-journal.d.ts +30 -0
- package/dist/domains/comet-native/native-transition-journal.d.ts.map +1 -0
- package/dist/domains/comet-native/native-transition-journal.js +819 -0
- package/dist/domains/comet-native/native-transition-journal.js.map +1 -0
- package/dist/domains/comet-native/native-transitions.d.ts +13 -0
- package/dist/domains/comet-native/native-transitions.d.ts.map +1 -0
- package/dist/domains/comet-native/native-transitions.js +632 -0
- package/dist/domains/comet-native/native-transitions.js.map +1 -0
- package/dist/domains/comet-native/native-types.d.ts +547 -0
- package/dist/domains/comet-native/native-types.d.ts.map +1 -0
- package/dist/domains/comet-native/native-types.js +8 -0
- package/dist/domains/comet-native/native-types.js.map +1 -0
- package/dist/domains/comet-native/native-verification-evidence.d.ts +86 -0
- package/dist/domains/comet-native/native-verification-evidence.d.ts.map +1 -0
- package/dist/domains/comet-native/native-verification-evidence.js +480 -0
- package/dist/domains/comet-native/native-verification-evidence.js.map +1 -0
- package/dist/domains/comet-native/native-verification-runtime.d.ts +58 -0
- package/dist/domains/comet-native/native-verification-runtime.d.ts.map +1 -0
- package/dist/domains/comet-native/native-verification-runtime.js +321 -0
- package/dist/domains/comet-native/native-verification-runtime.js.map +1 -0
- package/dist/domains/comet-native/native-verification-scope.d.ts +117 -0
- package/dist/domains/comet-native/native-verification-scope.d.ts.map +1 -0
- package/dist/domains/comet-native/native-verification-scope.js +1040 -0
- package/dist/domains/comet-native/native-verification-scope.js.map +1 -0
- package/dist/domains/comet-native/native-workspace.d.ts +46 -0
- package/dist/domains/comet-native/native-workspace.d.ts.map +1 -0
- package/dist/domains/comet-native/native-workspace.js +276 -0
- package/dist/domains/comet-native/native-workspace.js.map +1 -0
- package/dist/domains/dashboard/collector.d.ts.map +1 -1
- package/dist/domains/dashboard/collector.js +9 -1
- package/dist/domains/dashboard/collector.js.map +1 -1
- package/dist/domains/dashboard/native-adapter.d.ts +157 -0
- package/dist/domains/dashboard/native-adapter.d.ts.map +1 -0
- package/dist/domains/dashboard/native-adapter.js +302 -0
- package/dist/domains/dashboard/native-adapter.js.map +1 -0
- package/dist/domains/dashboard/native-collector.d.ts +6 -0
- package/dist/domains/dashboard/native-collector.d.ts.map +1 -0
- package/dist/domains/dashboard/native-collector.js +285 -0
- package/dist/domains/dashboard/native-collector.js.map +1 -0
- package/dist/domains/dashboard/types.d.ts +5 -0
- package/dist/domains/dashboard/types.d.ts.map +1 -1
- package/dist/domains/dashboard/web/assets/{arc-TGVUG2WN.js → arc-CxdiLJ50.js} +1 -1
- package/dist/domains/dashboard/web/assets/{architectureDiagram-3BPJPVTR-ASHmiHoP.js → architectureDiagram-3BPJPVTR-D5YCQu4e.js} +1 -1
- package/dist/domains/dashboard/web/assets/{blockDiagram-GPEHLZMM-CwASxBKe.js → blockDiagram-GPEHLZMM-8NfdCOQ8.js} +1 -1
- package/dist/domains/dashboard/web/assets/{c4Diagram-AAUBKEIU-BU8z_WNk.js → c4Diagram-AAUBKEIU-B3cFnNT7.js} +1 -1
- package/dist/domains/dashboard/web/assets/channel-B6AFly29.js +1 -0
- package/dist/domains/dashboard/web/assets/{chunk-2J33WTMH-CBGlUx4_.js → chunk-2J33WTMH-CBNfW-Dr.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-4BX2VUAB-CS-iGcFz.js → chunk-4BX2VUAB-vWyemRBr.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-55IACEB6-BUtCVJat.js → chunk-55IACEB6-H6haOo2C.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-727SXJPM-C94tj_pf.js → chunk-727SXJPM-D02UjGND.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-AQP2D5EJ-BFOKcpdG.js → chunk-AQP2D5EJ-wKsbOw_T.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-FMBD7UC4-Dmx8B-st.js → chunk-FMBD7UC4-eYFEZimP.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-ND2GUHAM-DYV00CNn.js → chunk-ND2GUHAM-fMaIDDI2.js} +1 -1
- package/dist/domains/dashboard/web/assets/{chunk-QZHKN3VN-DMJJyQnw.js → chunk-QZHKN3VN-C9rhF6Hm.js} +1 -1
- package/dist/domains/dashboard/web/assets/classDiagram-4FO5ZUOK-BcnrxOTt.js +1 -0
- package/dist/domains/dashboard/web/assets/classDiagram-v2-Q7XG4LA2-BcnrxOTt.js +1 -0
- package/dist/domains/dashboard/web/assets/{cose-bilkent-S5V4N54A-P4nE2rea.js → cose-bilkent-S5V4N54A-CbaShPub.js} +1 -1
- package/dist/domains/dashboard/web/assets/{cynefin-VYW2F7L2-C-R1HXDv.js → cynefin-VYW2F7L2-DN4emAQv.js} +1 -1
- package/dist/domains/dashboard/web/assets/{dagre-BM42HDAG-BH8d-C9z.js → dagre-BM42HDAG-BpSzbk_V.js} +1 -1
- package/dist/domains/dashboard/web/assets/demo-BuVau32v.js +25 -0
- package/dist/domains/dashboard/web/assets/{diagram-2AECGRRQ-DpXTgQIH.js → diagram-2AECGRRQ-CfXwGGpQ.js} +1 -1
- package/dist/domains/dashboard/web/assets/{diagram-5GNKFQAL-DSiFJzSw.js → diagram-5GNKFQAL-DMp0Zmot.js} +1 -1
- package/dist/domains/dashboard/web/assets/{diagram-KO2AKTUF-DULMkben.js → diagram-KO2AKTUF-C7ZvofsM.js} +1 -1
- package/dist/domains/dashboard/web/assets/{diagram-LMA3HP47-Pi8m_NO9.js → diagram-LMA3HP47-BjmxFnap.js} +1 -1
- package/dist/domains/dashboard/web/assets/{diagram-OG6HWLK6-BSe6bCWm.js → diagram-OG6HWLK6-DFBG1Iqy.js} +1 -1
- package/dist/domains/dashboard/web/assets/{erDiagram-TEJ5UH35-zb-FEcbq.js → erDiagram-TEJ5UH35-MpNT7dzt.js} +1 -1
- package/dist/domains/dashboard/web/assets/{flowDiagram-I6XJVG4X-Dr-Gk0z2.js → flowDiagram-I6XJVG4X-_1wAR6c1.js} +1 -1
- package/dist/domains/dashboard/web/assets/{ganttDiagram-6RSMTGT7-qs6Zb2A6.js → ganttDiagram-6RSMTGT7-DJKjDeWl.js} +1 -1
- package/dist/domains/dashboard/web/assets/{gitGraphDiagram-PVQCEYII-BQ314orT.js → gitGraphDiagram-PVQCEYII-BL7yUEn-.js} +1 -1
- package/dist/domains/dashboard/web/assets/index-CjE9mHGb.js +24 -0
- package/dist/domains/dashboard/web/assets/index-D-AGxvI4.css +1 -0
- package/dist/domains/dashboard/web/assets/{infoDiagram-5YYISTIA-O0bQp98A.js → infoDiagram-5YYISTIA-Bt5fqrOd.js} +1 -1
- package/dist/domains/dashboard/web/assets/{ishikawaDiagram-YF4QCWOH-BPC7wbKh.js → ishikawaDiagram-YF4QCWOH-COCMcjBM.js} +1 -1
- package/dist/domains/dashboard/web/assets/{journeyDiagram-JHISSGLW-ohViOd4b.js → journeyDiagram-JHISSGLW-DGcpcWny.js} +1 -1
- package/dist/domains/dashboard/web/assets/{kanban-definition-UN3LZRKU-CHleNdbG.js → kanban-definition-UN3LZRKU-QSBNsWMP.js} +1 -1
- package/dist/domains/dashboard/web/assets/{linear-CyqiW--Q.js → linear-9uyeeBZf.js} +1 -1
- package/dist/domains/dashboard/web/assets/{mermaid.core-qS9XvtaK.js → mermaid.core-CkNdB471.js} +4 -4
- package/dist/domains/dashboard/web/assets/{mindmap-definition-RKZ34NQL-oaGkqO9l.js → mindmap-definition-RKZ34NQL-CiNxI0gP.js} +1 -1
- package/dist/domains/dashboard/web/assets/{pieDiagram-4H26LBE5-CPcB-AFh.js → pieDiagram-4H26LBE5-BLJ6QnRO.js} +1 -1
- package/dist/domains/dashboard/web/assets/{quadrantDiagram-W4KKPZXB-LFy52Qtj.js → quadrantDiagram-W4KKPZXB-CflW-eFH.js} +1 -1
- package/dist/domains/dashboard/web/assets/{requirementDiagram-4Y6WPE33-BdjeaYP_.js → requirementDiagram-4Y6WPE33-B9HLmRWH.js} +1 -1
- package/dist/domains/dashboard/web/assets/{sankeyDiagram-5OEKKPKP-DDJ4styL.js → sankeyDiagram-5OEKKPKP-6xnco5k5.js} +1 -1
- package/dist/domains/dashboard/web/assets/{sequenceDiagram-3UESZ5HK-BL5bFNoz.js → sequenceDiagram-3UESZ5HK-Dp1rujNZ.js} +1 -1
- package/dist/domains/dashboard/web/assets/{stateDiagram-AJRCARHV-BNUfikui.js → stateDiagram-AJRCARHV-C1Xc90ek.js} +1 -1
- package/dist/domains/dashboard/web/assets/stateDiagram-v2-BHNVJYJU-p-qmzXyE.js +1 -0
- package/dist/domains/dashboard/web/assets/{timeline-definition-PNZ67QCA--ps2uu6L.js → timeline-definition-PNZ67QCA-g9s-m5Z4.js} +1 -1
- package/dist/domains/dashboard/web/assets/{vennDiagram-CIIHVFJN-C2q8q26c.js → vennDiagram-CIIHVFJN-rkEyhyCc.js} +1 -1
- package/dist/domains/dashboard/web/assets/{wardleyDiagram-YWT4CUSO-BUH9gXqd.js → wardleyDiagram-YWT4CUSO-CJLrWGXc.js} +1 -1
- package/dist/domains/dashboard/web/assets/{xychartDiagram-2RQKCTM6-B-DielEy.js → xychartDiagram-2RQKCTM6-BxJvPNqo.js} +1 -1
- package/dist/domains/dashboard/web/index.html +2 -2
- package/dist/domains/engine/storage-layout.d.ts +14 -0
- package/dist/domains/engine/storage-layout.d.ts.map +1 -0
- package/dist/domains/engine/storage-layout.js +32 -0
- package/dist/domains/engine/storage-layout.js.map +1 -0
- package/dist/domains/engine/storage-run.d.ts +9 -0
- package/dist/domains/engine/storage-run.d.ts.map +1 -0
- package/dist/domains/engine/storage-run.js +116 -0
- package/dist/domains/engine/storage-run.js.map +1 -0
- package/dist/domains/factory/package.d.ts.map +1 -1
- package/dist/domains/factory/package.js +5 -3
- package/dist/domains/factory/package.js.map +1 -1
- package/dist/domains/integrations/openspec.d.ts.map +1 -1
- package/dist/domains/integrations/openspec.js +8 -6
- package/dist/domains/integrations/openspec.js.map +1 -1
- package/dist/domains/skill/find.d.ts.map +1 -1
- package/dist/domains/skill/find.js +7 -1
- package/dist/domains/skill/find.js.map +1 -1
- package/dist/domains/skill/platform-inspect.d.ts +6 -2
- package/dist/domains/skill/platform-inspect.d.ts.map +1 -1
- package/dist/domains/skill/platform-inspect.js +52 -8
- package/dist/domains/skill/platform-inspect.js.map +1 -1
- package/dist/domains/skill/platform-install.d.ts +18 -7
- package/dist/domains/skill/platform-install.d.ts.map +1 -1
- package/dist/domains/skill/platform-install.js +338 -71
- package/dist/domains/skill/platform-install.js.map +1 -1
- package/dist/domains/skill/project-instructions.d.ts.map +1 -1
- package/dist/domains/skill/project-instructions.js +12 -6
- package/dist/domains/skill/project-instructions.js.map +1 -1
- package/dist/domains/skill/uninstall.d.ts.map +1 -1
- package/dist/domains/skill/uninstall.js +15 -3
- package/dist/domains/skill/uninstall.js.map +1 -1
- package/dist/domains/workflow-contract/builtins.d.ts +6 -0
- package/dist/domains/workflow-contract/builtins.d.ts.map +1 -1
- package/dist/domains/workflow-contract/builtins.js +137 -0
- package/dist/domains/workflow-contract/builtins.js.map +1 -1
- package/dist/domains/workflow-contract/index.d.ts +3 -1
- package/dist/domains/workflow-contract/index.d.ts.map +1 -1
- package/dist/domains/workflow-contract/index.js +2 -1
- package/dist/domains/workflow-contract/index.js.map +1 -1
- package/dist/domains/workflow-contract/normalize.d.ts.map +1 -1
- package/dist/domains/workflow-contract/normalize.js +28 -10
- package/dist/domains/workflow-contract/normalize.js.map +1 -1
- package/dist/domains/workflow-contract/project-config.d.ts +7 -0
- package/dist/domains/workflow-contract/project-config.d.ts.map +1 -0
- package/dist/domains/workflow-contract/project-config.js +110 -0
- package/dist/domains/workflow-contract/project-config.js.map +1 -0
- package/dist/domains/workflow-contract/types.d.ts +4 -2
- package/dist/domains/workflow-contract/types.d.ts.map +1 -1
- package/dist/domains/workflow-contract/validation.d.ts.map +1 -1
- package/dist/domains/workflow-contract/validation.js +14 -5
- package/dist/domains/workflow-contract/validation.js.map +1 -1
- package/dist/platform/install/detect.d.ts +3 -1
- package/dist/platform/install/detect.d.ts.map +1 -1
- package/dist/platform/install/detect.js +4 -1
- package/dist/platform/install/detect.js.map +1 -1
- package/dist/platform/install/project-registry.js +2 -2
- package/dist/platform/install/project-registry.js.map +1 -1
- package/dist/platform/paths/repository-layout.d.ts +16 -0
- package/dist/platform/paths/repository-layout.d.ts.map +1 -1
- package/dist/platform/paths/repository-layout.js.map +1 -1
- package/eval/local/README.md +50 -0
- package/eval/local/scripts/compare_baselines.py +127 -1
- package/eval/local/scripts/regression_check.py +3 -4
- package/eval/local/tasks/comet-native-clarification/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-clarification/environment/test_wordcount.py +25 -0
- package/eval/local/tasks/comet-native-clarification/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-clarification/instruction.md +7 -0
- package/eval/local/tasks/comet-native-clarification/task.toml +40 -0
- package/eval/local/tasks/comet-native-clarification/validation/test_native_clarification.py +193 -0
- package/eval/local/tasks/comet-native-clarification-modes/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-clarification-modes/environment/test_wordcount.py +25 -0
- package/eval/local/tasks/comet-native-clarification-modes/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-clarification-modes/instruction.md +13 -0
- package/eval/local/tasks/comet-native-clarification-modes/task.toml +39 -0
- package/eval/local/tasks/comet-native-clarification-modes/validation/test_native_clarification_modes.py +235 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/.comet/config.yaml +6 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/Dockerfile +28 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/docs/comet/changes/add-character-counting/brief.md +17 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/docs/comet/changes/add-character-counting/comet-state.yaml +12 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/docs/comet/changes/add-character-counting/runtime/transition.json +69 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/docs/comet/changes/add-character-counting/specs/character-counting/spec.md +3 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/test_wordcount.py +20 -0
- package/eval/local/tasks/comet-native-interrupted-transition/environment/wordcount.py +27 -0
- package/eval/local/tasks/comet-native-interrupted-transition/instruction.md +7 -0
- package/eval/local/tasks/comet-native-interrupted-transition/task.toml +35 -0
- package/eval/local/tasks/comet-native-interrupted-transition/validation/test_native_interrupted_transition.py +63 -0
- package/eval/local/tasks/comet-native-repository-fact/environment/Dockerfile +26 -0
- package/eval/local/tasks/comet-native-repository-fact/environment/PRODUCT_RULES.md +3 -0
- package/eval/local/tasks/comet-native-repository-fact/environment/test_wordcount.py +20 -0
- package/eval/local/tasks/comet-native-repository-fact/environment/wordcount.py +27 -0
- package/eval/local/tasks/comet-native-repository-fact/instruction.md +7 -0
- package/eval/local/tasks/comet-native-repository-fact/task.toml +35 -0
- package/eval/local/tasks/comet-native-repository-fact/validation/test_native_repository_fact.py +53 -0
- package/eval/local/tasks/comet-native-wave-b-decision-resume/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-wave-b-decision-resume/environment/test_wordcount.py +27 -0
- package/eval/local/tasks/comet-native-wave-b-decision-resume/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-wave-b-decision-resume/instruction.md +9 -0
- package/eval/local/tasks/comet-native-wave-b-decision-resume/task.toml +40 -0
- package/eval/local/tasks/comet-native-wave-b-decision-resume/validation/test_native_wave_b_decision_resume.py +208 -0
- package/eval/local/tasks/comet-native-wave-c-verification-integrity/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-wave-c-verification-integrity/environment/test_wordcount.py +27 -0
- package/eval/local/tasks/comet-native-wave-c-verification-integrity/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-wave-c-verification-integrity/instruction.md +11 -0
- package/eval/local/tasks/comet-native-wave-c-verification-integrity/task.toml +36 -0
- package/eval/local/tasks/comet-native-wave-c-verification-integrity/validation/test_native_wave_c_verification_integrity.py +344 -0
- package/eval/local/tasks/comet-native-wave-d-stagnation-stop/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-wave-d-stagnation-stop/environment/test_wordcount.py +27 -0
- package/eval/local/tasks/comet-native-wave-d-stagnation-stop/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-wave-d-stagnation-stop/instruction.md +11 -0
- package/eval/local/tasks/comet-native-wave-d-stagnation-stop/task.toml +37 -0
- package/eval/local/tasks/comet-native-wave-d-stagnation-stop/validation/test_native_wave_d_stagnation_stop.py +284 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/environment/.include-trusted-native-runtime +1 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/environment/test_wordcount.py +27 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/instruction.md +9 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/task.toml +37 -0
- package/eval/local/tasks/comet-native-wave-e-parallel-safety/validation/test_native_wave_e_parallel_safety.py +309 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/environment/.include-current-comet-cli +1 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/environment/Dockerfile +31 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/environment/current-comet-package.json +18 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/environment/current-comet.sh +14 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/environment/test_wordcount.py +27 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/instruction.md +7 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/task.toml +36 -0
- package/eval/local/tasks/comet-native-wave-f-dashboard-readonly/validation/test_native_wave_f_dashboard_readonly.py +469 -0
- package/eval/local/tasks/comet-native-workflow/environment/Dockerfile +27 -0
- package/eval/local/tasks/comet-native-workflow/environment/test_wordcount.py +25 -0
- package/eval/local/tasks/comet-native-workflow/environment/wordcount.py +36 -0
- package/eval/local/tasks/comet-native-workflow/instruction.md +14 -0
- package/eval/local/tasks/comet-native-workflow/task.toml +36 -0
- package/eval/local/tasks/comet-native-workflow/validation/test_native_workflow.py +149 -0
- package/eval/local/tasks/index.yaml +61 -0
- package/eval/local/tests/conftest.py +407 -22
- package/eval/local/tests/scaffold/test_aligned_comparison.py +1012 -0
- package/eval/local/tests/scaffold/test_conftest_helpers.py +187 -7
- package/eval/local/tests/scaffold/test_logging.py +135 -1
- package/eval/local/tests/scaffold/test_manifests.py +2 -0
- package/eval/local/tests/scaffold/test_native_aligned_eval.py +346 -0
- package/eval/local/tests/scaffold/test_native_wave_evaluations.py +1889 -0
- package/eval/local/tests/scaffold/test_profiles.py +33 -0
- package/eval/local/tests/scaffold/test_sample_quality.py +57 -0
- package/eval/local/tests/scaffold/test_tasks.py +377 -1
- package/eval/local/tests/scaffold/test_treatments.py +59 -13
- package/eval/local/tests/scaffold/test_utils.py +277 -4
- package/eval/local/tests/tasks/__init__.py +1 -0
- package/eval/local/tests/tasks/test_tasks.py +104 -78
- package/eval/local/tests/tasks/test_validation_scripts.py +37 -0
- package/eval/local/treatments/comet/comet_native_phase1.yaml +66 -0
- package/eval/scaffold/python/aligned_comparison.py +1631 -0
- package/eval/scaffold/python/generic_llm_judge.py +3 -1
- package/eval/scaffold/python/llm_judge.py +0 -3
- package/eval/scaffold/python/logging.py +115 -16
- package/eval/scaffold/python/manifests.py +2 -0
- package/eval/scaffold/python/native_eval.py +138 -0
- package/eval/scaffold/python/pass_at_k.py +0 -1
- package/eval/scaffold/python/report_outputs.py +226 -44
- package/eval/scaffold/python/sample_quality.py +45 -2
- package/eval/scaffold/python/tasks.py +11 -0
- package/eval/scaffold/python/utils.py +108 -20
- package/eval/scaffold/python/validation/__init__.py +15 -5
- package/eval/scaffold/python/validation/comet_workflow.py +10 -5
- package/eval/scaffold/python/validation/generic_rubric.py +1 -2
- package/eval/scaffold/python/validation/native_wave.py +2154 -0
- package/eval/scaffold/python/validation/native_workflow.py +252 -0
- package/eval/scaffold/python/validation/rubric.py +0 -2
- package/eval/scaffold/shell/completion-point.sh +18 -0
- package/eval/scaffold/shell/decision-point.sh +35 -0
- package/eval/scaffold/shell/docker.sh +150 -9
- package/eval/scaffold/shell/run-claude-loop.sh +57 -27
- package/package.json +19 -5
- package/dist/domains/dashboard/web/assets/channel-kp6Ng2JJ.js +0 -1
- package/dist/domains/dashboard/web/assets/classDiagram-4FO5ZUOK-yBDjgMY_.js +0 -1
- package/dist/domains/dashboard/web/assets/classDiagram-v2-Q7XG4LA2-yBDjgMY_.js +0 -1
- package/dist/domains/dashboard/web/assets/demo-DQyfozbi.js +0 -1
- package/dist/domains/dashboard/web/assets/index-BLAfkNTu.css +0 -1
- package/dist/domains/dashboard/web/assets/index-DtLUOcAW.js +0 -24
- package/dist/domains/dashboard/web/assets/stateDiagram-v2-BHNVJYJU-DGrsmWts.js +0 -1
- package/eval/.env.example +0 -52
- package/eval/langsmith/.env.example +0 -16
|
@@ -13,7 +13,7 @@ description: "Use only when explicitly invoked as /comet-open or routed by the r
|
|
|
13
13
|
|
|
14
14
|
### 0. Output Language Constraint
|
|
15
15
|
|
|
16
|
-
Every prompt and artifact request passed to OpenSpec must include the resolved Comet artifact language, using normalized ids such as `en` or `zh-CN`. Before `.comet.yaml` exists, read `language` from project `.comet/config.yaml`, then fall back to global `~/.comet/config.yaml`; after the change is initialized, use `comet state get <name> language`. If no configured language exists, fall back to the current user request language. The generated `proposal.md`, `design.md`, and `tasks.md` must use that language as their main language.
|
|
16
|
+
Every prompt and artifact request passed to OpenSpec must include the resolved Comet artifact language, using normalized ids such as `en` or `zh-CN`. Before `.comet.yaml` exists, read `classic.language` from project `.comet/config.yaml`, then fall back to global `~/.comet/config.yaml`; after the change is initialized, use `comet state get <name> language`. If no configured language exists, fall back to the current user request language. The generated `proposal.md`, `design.md`, and `tasks.md` must use that language as their main language.
|
|
17
17
|
|
|
18
18
|
### 0a. Current Change Binding
|
|
19
19
|
|
|
@@ -85,7 +85,7 @@ Immediately after the user confirms multiple changes, persist the accepted split
|
|
|
85
85
|
|
|
86
86
|
In batch split mode, entering `/comet-open` for each split item must explicitly mark it as a "confirmed split item" and carry that split item's goals, scope, non-goals, and acceptance scenarios. Confirmed split items skip the PRD split preflight by default, unless the split item itself still clearly contains multiple independent capabilities.
|
|
87
87
|
|
|
88
|
-
In batch split mode, a single split item must not auto-advance to `/comet-design` after completing the open phase.
|
|
88
|
+
In batch split mode, a single split item must not auto-advance to `/comet-design` after completing the open phase. After splitting is complete, must pause and ask the user which change to start; after the user chooses, advance only that change into `/comet-design`, while other changes remain active and can be resumed later through `/comet-classic`.
|
|
89
89
|
|
|
90
90
|
**Batch completion hard check (must not be skipped)**: after every split item completes its own open phase, run the following for each `<name>` in the user-confirmed list:
|
|
91
91
|
|
|
@@ -103,7 +103,7 @@ The OpenSpec JSON must satisfy all of these conditions:
|
|
|
103
103
|
|
|
104
104
|
If any split item fails these checks, must not report splitting complete or ask which change to start. Stop and resume `/comet-open` from that change's first `ready` or `blocked` artifact. If OpenSpec passes but Comet state fails, repair `.comet.yaml` initialization or phase, then rerun the checks for the entire batch.
|
|
105
105
|
|
|
106
|
-
Only after every split item passes both CLI checks may you pause and ask which change to start. Mark the chosen item `selected` in the batch manifest, then advance only that change into `/comet-design`; other changes remain active and can be resumed later through `/comet`.
|
|
106
|
+
Only after every split item passes both CLI checks may you pause and ask which change to start. Mark the chosen item `selected` in the batch manifest, then advance only that change into `/comet-design`; other changes remain active and can be resumed later through `/comet-classic`.
|
|
107
107
|
|
|
108
108
|
On resume, read `.comet/batches/<batch-id>.json` first, then run the CLI checks above for already-created active changes. Do not recreate items that fully pass; resume incomplete items from the first `ready` artifact returned by OpenSpec. Create missing items from the persisted manifest. If the manifest is missing or damaged, stop and ask the user to rebuild/confirm it instead of inferring the original batch boundary from directory names.
|
|
109
109
|
|
|
@@ -124,7 +124,7 @@ Do not run `openspec new change` or create proposal/design/tasks while the resol
|
|
|
124
124
|
|
|
125
125
|
**Immediately execute:** Use the Skill tool to load the `openspec-new-change` skill. Skipping this step is prohibited.
|
|
126
126
|
|
|
127
|
-
Full `/comet` workflow must not use the Skill tool to load the `openspec-propose` skill by default; only load it when the user explicitly requests generating the proposal and artifacts in one pass.
|
|
127
|
+
Full `/comet-classic` workflow must not use the Skill tool to load the `openspec-propose` skill by default; only load it when the user explicitly requests generating the proposal and artifacts in one pass.
|
|
128
128
|
|
|
129
129
|
After the skill loads, follow its guidance to create the change skeleton. When Step 1b has produced an unambiguous resolved brief, override its "STOP and wait for user direction" behavior to avoid a duplicate question.
|
|
130
130
|
|
|
@@ -7,7 +7,7 @@ description: "Use only when explicitly invoked as /comet-tweak or routed by the
|
|
|
7
7
|
|
|
8
8
|
Tweak is a preset workflow of Comet's five-phase capabilities, not an independent parallel process. It chains OpenSpec's core flow, reusing open, build, verify, archive capabilities, only skipping Superpowers brainstorming and full plan.
|
|
9
9
|
|
|
10
|
-
Applicable for OpenSpec-chained lightweight changes, such as configuration adjustments, documentation or prompt optimization, and spec-driven (including delta spec) medium changes that do not need the full `/comet` deep design workflow. Delta spec is a first-class normal artifact in tweak; needing delta spec alone does not constitute an upgrade reason.
|
|
10
|
+
Applicable for OpenSpec-chained lightweight changes, such as configuration adjustments, documentation or prompt optimization, and spec-driven (including delta spec) medium changes that do not need the full `/comet-classic` deep design workflow. Delta spec is a first-class normal artifact in tweak; needing delta spec alone does not constitute an upgrade reason.
|
|
11
11
|
|
|
12
12
|
**Applicable conditions** (all must be met):
|
|
13
13
|
1. Can fit a **single OpenSpec change**
|
|
@@ -15,7 +15,7 @@ Applicable for OpenSpec-chained lightweight changes, such as configuration adjus
|
|
|
15
15
|
3. Does not involve cross-module or cross-layer architecture coordination
|
|
16
16
|
4. Task scope is estimable (file count and task count are hints only, not hard upgrade conditions; see Upgrade Assessment below)
|
|
17
17
|
|
|
18
|
-
**Not applicable**: If the change process hits a qualitative-change signal (see "Upgrade Assessment" section), the user decides whether to upgrade to the full `/comet` workflow.
|
|
18
|
+
**Not applicable**: If the change process hits a qualitative-change signal (see "Upgrade Assessment" section), the user decides whether to upgrade to the full `/comet-classic` workflow.
|
|
19
19
|
|
|
20
20
|
---
|
|
21
21
|
|
|
@@ -23,7 +23,7 @@ Applicable for OpenSpec-chained lightweight changes, such as configuration adjus
|
|
|
23
23
|
|
|
24
24
|
### 0. Output Language Constraint
|
|
25
25
|
|
|
26
|
-
Streamlined OpenSpec artifacts must use the configured Comet artifact language. Before `.comet.yaml` exists, read `language` from project `.comet/config.yaml`, then fall back to global `~/.comet/config.yaml`; after initialization, use `comet state get <name> language`.
|
|
26
|
+
Streamlined OpenSpec artifacts must use the configured Comet artifact language. Before `.comet.yaml` exists, read `classic.language` from project `.comet/config.yaml`, then fall back to global `~/.comet/config.yaml`; after initialization, use `comet state get <name> language`.
|
|
27
27
|
|
|
28
28
|
Execution chain: open → OpenSpec apply → verify → archive. Tweak provides default decisions for each phase: streamlined open, direct build through OpenSpec apply, scale- and delta-spec-driven verification weight, and final archive confirmation after verification passes.
|
|
29
29
|
|
|
@@ -50,14 +50,26 @@ comet state init <name> tweak
|
|
|
50
50
|
comet state select <name>
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
Tweak defaults to `isolation: current`, truthfully indicating execution in the current workspace. Change it to `branch` or `worktree` only after that workspace is actually created/selected.
|
|
54
|
-
|
|
55
53
|
Verify initialized state:
|
|
56
54
|
|
|
57
55
|
```bash
|
|
58
56
|
comet state check <name> open
|
|
59
57
|
```
|
|
60
58
|
|
|
59
|
+
If the `select` / `check` output is `BLOCKED` because `bound_branch` does not match the current branch, immediately pause under `comet/reference/decision-point.md` and let the user choose one option: switch back to the bound branch and rerun entry verification, or run `comet state rebind <change-name>` after the user explicitly confirms the current branch should take over this change, then rerun entry verification. Do not switch branches or rebind on your own.
|
|
60
|
+
|
|
61
|
+
Entry workspace isolation is a user decision point; do not use `current` as the default isolation mode. Pause under `comet/reference/decision-point.md` and let the user choose one option:
|
|
62
|
+
|
|
63
|
+
- A. Work directly on the current branch: run `comet state set <name> isolation current` to truthfully bind the current branch
|
|
64
|
+
- B. Create a branch: create and switch to `tweak/YYYYMMDD/<change-name>`, then run `comet state set <name> isolation branch`
|
|
65
|
+
- C. Create a worktree: first use the Skill tool to load Superpowers `using-git-worktrees`; let that skill create the isolated workspace, then run `comet state set <name> isolation worktree` inside the worktree
|
|
66
|
+
|
|
67
|
+
After B/C, rerun this in the actual execution branch or worktree:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
comet state select <name>
|
|
71
|
+
```
|
|
72
|
+
|
|
61
73
|
Run phase guard to transition open → build:
|
|
62
74
|
|
|
63
75
|
```bash
|
|
@@ -66,10 +78,10 @@ comet guard <change-name> open --apply
|
|
|
66
78
|
|
|
67
79
|
### 2. OpenSpec Apply Build (tweak-only preset build)
|
|
68
80
|
|
|
69
|
-
Use tweak defaults: `build_mode: direct`. Skip Superpowers `brainstorming` and `writing-plans`, and let OpenSpec's apply action execute the current change's tasks.
|
|
81
|
+
Use tweak defaults: `build_mode: direct`. `isolation` must keep the entry workspace isolation the user confirmed in Step 1; do not change it back to `current` on your own. Skip Superpowers `brainstorming` and `writing-plans`, and let OpenSpec's apply action execute the current change's tasks.
|
|
70
82
|
|
|
71
83
|
<IMPORTANT>
|
|
72
|
-
This apply path belongs only to tweak. Full `/comet` or `workflow: full` must not use tweak's `openspec-apply-change` build path; full must still generate a Design Doc through `/comet-design`, then let `/comet-build` use Superpowers `writing-plans`, execution-method selection, and the corresponding execution skill to build.
|
|
84
|
+
This apply path belongs only to tweak. Full `/comet-classic` or `workflow: full` must not use tweak's `openspec-apply-change` build path; full must still generate a Design Doc through `/comet-design`, then let `/comet-build` use Superpowers `writing-plans`, execution-method selection, and the corresponding execution skill to build.
|
|
73
85
|
</IMPORTANT>
|
|
74
86
|
|
|
75
87
|
Before continuing or starting changes, handle uncommitted changes through `comet/reference/dirty-worktree.md`. If attribution shows a qualitative-change signal or file-count tripwire is hit, handle it through this file's "Upgrade Assessment".
|
|
@@ -93,7 +105,7 @@ During tweak execution, whenever running programs, tests, builds, or manual veri
|
|
|
93
105
|
|
|
94
106
|
For specific investigation, minimal failing test, fix verification, and keeping the current change verification loop, follow `comet/reference/debug-gate.md`.
|
|
95
107
|
|
|
96
|
-
**Upgrade assessment check**: Continuously judge throughout build, and do a consolidated re-check before running the build→verify guard. Assessment uses a three-layer division of labor (see "Upgrade Assessment" section): qualitative-change signals rely on agent semantic recognition, file count is only a hint delegated to the user, and the scale script only governs verification weight. When a qualitative-change signal or file-count tripwire is hit, **do not upgrade on your own or decide to continue on your own** — must pause per `comet/reference/decision-point.md` and delegate the decision to the user: continue the tweak lightweight flow, or upgrade to the full `/comet`.
|
|
108
|
+
**Upgrade assessment check**: Continuously judge throughout build, and do a consolidated re-check before running the build→verify guard. Assessment uses a three-layer division of labor (see "Upgrade Assessment" section): qualitative-change signals rely on agent semantic recognition, file count is only a hint delegated to the user, and the scale script only governs verification weight. When a qualitative-change signal or file-count tripwire is hit, **do not upgrade on your own or decide to continue on your own** — must pause per `comet/reference/decision-point.md` and delegate the decision to the user: continue the tweak lightweight flow, or upgrade to the full `/comet-classic`.
|
|
97
109
|
|
|
98
110
|
7. Run phase guard to transition build → verify:
|
|
99
111
|
|
|
@@ -136,7 +148,7 @@ Exception: when `.comet.yaml` has `auto_transition: false`, end the current invo
|
|
|
136
148
|
|
|
137
149
|
The following genuine user decisions still pause:
|
|
138
150
|
|
|
139
|
-
1. Encountering an upgrade-assessment signal (see "Upgrade Assessment" section). **Must use the current platform's available user input/confirmation mechanism to pause and wait for the user to explicitly choose**: continue the tweak lightweight flow, or upgrade to the full `/comet` workflow
|
|
151
|
+
1. Encountering an upgrade-assessment signal (see "Upgrade Assessment" section). **Must use the current platform's available user input/confirmation mechanism to pause and wait for the user to explicitly choose**: continue the tweak lightweight flow, or upgrade to the full `/comet-classic` workflow
|
|
140
152
|
2. Verify-phase acceptance of WARNING/SUGGESTION deviations, Spec drift handling, or strategy after the automatic repair limit; the first 3 clearly repairable failures close automatically
|
|
141
153
|
3. Final archive confirmation and the branch-handling decision after the archive commit
|
|
142
154
|
|
|
@@ -151,7 +163,7 @@ After each phase completes, immediately enter next phase. Within each phase, mus
|
|
|
151
163
|
|
|
152
164
|
Tweak upgrade assessment only decides whether to move from the lightweight preset to full; delta spec alone is not an upgrade reason, file count never upgrades automatically, and `comet state scale` only decides verification weight.
|
|
153
165
|
|
|
154
|
-
If `/comet` passes an intent frame from the entry, tweak must recheck `risk_signal` and escalation signals only before build: new capability, public API, schema change, cross-module coordination, or deep architecture work. When any signal matches, enter the existing escalation decision point. Delta spec remains a normal tweak artifact and must not trigger escalation by itself; do not reimplement entry intent recognition.
|
|
166
|
+
If `/comet-classic` passes an intent frame from the entry, tweak must recheck `risk_signal` and escalation signals only before build: new capability, public API, schema change, cross-module coordination, or deep architecture work. When any signal matches, enter the existing escalation decision point. Delta spec remains a normal tweak artifact and must not trigger escalation by itself; do not reimplement entry intent recognition.
|
|
155
167
|
|
|
156
168
|
Continuously check these qualitative-change signals: cross-module coordination, needing a new capability, database schema changes, introducing a new public API, or touching a deep architecture problem; plus the tweak-specific signal: needing to split into multiple OpenSpec changes. If any signal appears, the agent **must not self-upgrade or self-decide to continue**.
|
|
157
169
|
|
|
@@ -27,6 +27,8 @@ comet state check <change-name> verify
|
|
|
27
27
|
|
|
28
28
|
Proceed to Step 1 after verification passes. The script outputs specific failure reasons when verification fails.
|
|
29
29
|
|
|
30
|
+
If the `select` / `check` output is `BLOCKED` because `bound_branch` does not match the current branch, immediately pause under `comet/reference/decision-point.md` and let the user choose one option: switch back to the bound branch and rerun entry verification, or run `comet state rebind <change-name>` after the user explicitly confirms the current branch should take over this change, then rerun entry verification. Do not switch branches or rebind on your own.
|
|
31
|
+
|
|
30
32
|
**Idempotency**: All verify checks are safe to repeat. If `verify_result` is already `pass`, verification is complete and archive should continue; keep `branch_status: pending` until archive changes are committed and final branch handling finishes. If `verify_result` is `pending`, start verification from the beginning.
|
|
31
33
|
|
|
32
34
|
### 1. Scale Assessment
|
|
@@ -1,281 +1,28 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: comet
|
|
3
|
-
description: "
|
|
3
|
+
description: "当用户调用 /comet 或需要恢复 active Comet change 时,按项目配置路由到永久的 Comet Native 或 Comet Classic 入口。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Comet
|
|
6
|
+
# Comet 入口
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
`/comet` 只负责选择入口,不包含任何一种工作流的执行方法。
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
OpenSpec 负责 WHAT — 大纲、提案、spec 生命周期、归档
|
|
12
|
-
Superpowers 负责 HOW — 技术设计、计划、执行、收尾
|
|
13
|
-
```
|
|
10
|
+
1. 先在当前项目尝试 PATH 中安装的 Comet CLI:
|
|
14
11
|
|
|
15
|
-
|
|
12
|
+
```text
|
|
13
|
+
comet workflow resolve . --json
|
|
14
|
+
```
|
|
16
15
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
## 决策核心(Decision Core)
|
|
20
|
-
|
|
21
|
-
agent 做决策只需读本节,参考附录按需查阅。
|
|
22
|
-
|
|
23
|
-
### 输出语言规则
|
|
24
|
-
|
|
25
|
-
所有 OpenSpec 和 Superpowers 产物都必须使用 Comet 配置的产物语言。配置值是规范化语言 ID,`en` 或 `zh-CN`。已有 change 优先通过 `comet state get <name> language` 读取 `openspec/changes/<name>/.comet.yaml` 中的 `language`;`.comet.yaml` 尚不存在时依次读取项目 `.comet/config.yaml` 和全局 `~/.comet/config.yaml` 的 `language`;都不存在时才回退到当前用户请求语言。调用外部 OpenSpec/Superpowers skill 时,必须把解析后的语言显式写入 prompt 或 ARGUMENTS。
|
|
26
|
-
|
|
27
|
-
### 阶段自动检测
|
|
28
|
-
|
|
29
|
-
**Step 0: 活跃 Change 发现与意图判定**
|
|
30
|
-
|
|
31
|
-
1. 先按 `comet/reference/scripts.md` 完成脚本定位,确保 `$COMET_INTENT` 可用。
|
|
32
|
-
2. 运行 `openspec list --json` 获取所有活跃 change。
|
|
33
|
-
3. 根据用户请求、active change 列表和必要仓库状态填写 `CometIntentFrame`。
|
|
34
|
-
4. 优先用 `node "$COMET_INTENT" route --stdin` 传入 frame JSON,获取 runtime 规范化路由。`CometIntentFrame + runtime scorer` 是事实源;本节自然语言规则只用于意图识别槽位提取。
|
|
35
|
-
5. 按 runtime route 处理:
|
|
36
|
-
- `hotfix` → 直接调用 `/comet-hotfix`
|
|
37
|
-
- `tweak` → 直接调用 `/comet-tweak`
|
|
38
|
-
- `full` → 按活跃 change 表决定 `/comet-open` 或用户确认
|
|
39
|
-
- `resume` → 进入 Step 1 读取对应 change 的 `.comet.yaml`
|
|
40
|
-
- `ask_user` → 按 `comet/reference/decision-point.md` 暂停并等待用户选择
|
|
41
|
-
- `out_of_scope` → 说明本次输入不是 Comet workflow 启动/恢复请求,不初始化 change
|
|
42
|
-
|
|
43
|
-
当 runtime route、Ambient Resume 或用户选择已经解析出明确 change 后,进入对应阶段 Skill 前必须先绑定当前执行上下文:
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
comet state select <change-name>
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
多个 active change 且用户尚未明确选择时,不得提前绑定;继续按 `ask_user` 决策点等待选择。
|
|
50
|
-
|
|
51
|
-
### Comet Ambient Resume
|
|
52
|
-
|
|
53
|
-
当用户未显式输入 `/comet`,但当前仓库可能已有 active Comet change 时,开始处理需要改动或调查的任务前先运行只读探针:
|
|
54
|
-
|
|
55
|
-
```bash
|
|
56
|
-
node "$COMET_RESUME_PROBE" probe --stdin
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
探针只读仓库状态,不修改文件。按返回值处理:
|
|
60
|
-
|
|
61
|
-
- `auto_resume`:输出一行 `[COMET] 检测到 active change <name>,按 <nextCommand> 恢复。`,然后进入 `nextCommand`。
|
|
62
|
-
- `ask_user`:只问一个短问题并等待用户回复。
|
|
63
|
-
- `out_of_scope` 或 `none`:不要进入 Comet workflow。
|
|
64
|
-
|
|
65
|
-
原则:不把无关任务挂到 active Comet change,尤其不能只因为存在 `.comet.yaml` 就这样做。
|
|
66
|
-
|
|
67
|
-
**CometIntentFrame 最小骨架**:
|
|
68
|
-
|
|
69
|
-
```json
|
|
70
|
-
{
|
|
71
|
-
"schema_version": "comet.intent.v1",
|
|
72
|
-
"utterance": "<用户原话>",
|
|
73
|
-
"intent": { "name": "start_change", "confidence": 0.8 },
|
|
74
|
-
"slots": {
|
|
75
|
-
"requested_action": "start",
|
|
76
|
-
"workflow_candidate": "full",
|
|
77
|
-
"user_explicit_workflow": null,
|
|
78
|
-
"change_id": null,
|
|
79
|
-
"existing_behavior": null,
|
|
80
|
-
"new_capability": null,
|
|
81
|
-
"public_api_change": null,
|
|
82
|
-
"schema_change": null,
|
|
83
|
-
"cross_module_change": null
|
|
84
|
-
},
|
|
85
|
-
"context": {
|
|
86
|
-
"active_changes_count": 0,
|
|
87
|
-
"active_change_names": []
|
|
88
|
-
},
|
|
89
|
-
"evidence": [],
|
|
90
|
-
"proposed_route": {
|
|
91
|
-
"name": "ask_user",
|
|
92
|
-
"confidence": 0.5
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**意图识别槽位提取**:
|
|
98
|
-
字段完整含义见 `comet/reference/intent-frame.md`;正常路由只需按上方最小骨架填写。
|
|
99
|
-
|
|
100
|
-
- `fix_bug` + `existing_behavior: true` + 无新增 capability/public API/schema/cross-module 信号 → 倾向 `hotfix`
|
|
101
|
-
- 用户明确描述为可收敛为单一 OpenSpec change 的轻量/中等变更,需通过 OpenSpec apply 执行,且不需要完整 `/comet` 深度设计/plan → 倾向 `tweak`
|
|
102
|
-
- 文案、配置、文档、prompt 或单一 OpenSpec change 的轻中量修改 → 倾向 `tweak`
|
|
103
|
-
- 新增 capability、public API、schema 变更、跨模块协调或架构调整 → 倾向 `full`
|
|
104
|
-
- 多个 active change 且用户未明确 change → `ask_user`
|
|
105
|
-
- 置信度不足、关键 evidence 缺失或用户显式 workflow 与风险信号冲突 → `ask_user`
|
|
106
|
-
|
|
107
|
-
| 活跃 change | 用户输入 | 行为 |
|
|
108
|
-
|-------------|---------|------|
|
|
109
|
-
| 无 | `full` 路由 | → 调用 `/comet-open` |
|
|
110
|
-
| 恰好 1 个 | `/comet <描述>` | → **询问**:继续该变更 or 创建新变更 |
|
|
111
|
-
| 多个 | `/comet <描述>` | → **询问**:继续现有变更 or 创建新变更;若选继续 → 列出清单让用户选择 |
|
|
112
|
-
| 恰好 1 个 | `/comet`(无描述) | → 自动选中,进入 Step 1 |
|
|
113
|
-
| 多个 | `/comet`(无描述) | → 列出清单让用户选择 |
|
|
114
|
-
|
|
115
|
-
<IMPORTANT>
|
|
116
|
-
当用户选择「创建新变更」时,**必须调用 `/comet-open`**(禁止直接调用 `/opsx:new`)。
|
|
117
|
-
`/comet-open` 负责完整双初始化:OpenSpec artifacts(由内部 `/opsx:new` 创建)+ `.comet.yaml` 状态文件。
|
|
118
|
-
直接调用 `/opsx:new` 会缺失 `.comet.yaml`,导致后续阶段判定失败。
|
|
119
|
-
</IMPORTANT>
|
|
120
|
-
|
|
121
|
-
**Step 1: 读取 `.comet.yaml` 状态元数据**
|
|
122
|
-
|
|
123
|
-
优先读取 `openspec/changes/<name>/.comet.yaml`。不存在时回退到 `openspec status --change "<name>" --json`、`tasks.md` 和 `docs/superpowers/` 文件检查。
|
|
124
|
-
|
|
125
|
-
**断点恢复规则**:
|
|
126
|
-
- 每次恢复上下文时,先重新执行 Step 0 和 Step 1,不依赖对话历史判断阶段
|
|
127
|
-
- 只要存在 active change 且工作区有未提交改动,必须按 `comet/reference/dirty-worktree.md` 协议处理。该协议定义了检查步骤、归因分类和禁令,本文件不重复
|
|
128
|
-
- 若 `phase: build`,先检查 `build_pause`、`plan`、`isolation`、`build_mode`、`tdd_mode` 和 `review_mode`(详见下方):
|
|
129
|
-
- 若 `build_pause: plan-ready` 但 `isolation`、`build_mode`、`tdd_mode` 和 `review_mode` 都已经设置,则视为 stale pause:先输出 `[COMET] 检测到 stale pause(build_pause=plan-ready 但 isolation/build_mode/tdd_mode/review_mode 已设置),自动清除并继续`,再运行 `comet state set <name> build_pause null`,然后读取 tasks.md 的下一个未勾选任务并按 `build_mode` 恢复执行
|
|
130
|
-
- 若 `build_pause: plan-ready` 且 plan 文件存在,但 `isolation`、`build_mode`、`tdd_mode` 或 `review_mode` 尚未设置,回到 `/comet-build` 的 plan-ready 恢复点,提示用户继续补齐/确认工作区隔离、执行方式、TDD 模式和代码审查模式,不重新生成 plan
|
|
131
|
-
- 若 `build_pause: plan-ready` 但 plan 文件缺失,回到 `/comet-build` 处理状态损坏或重新生成 plan
|
|
132
|
-
- 若 `isolation`、`build_mode`、`tdd_mode` 或 `review_mode` 未设置,回到 `/comet-build` 对应步骤补充后再执行
|
|
133
|
-
- 若均已设置,读取 tasks.md 的下一个未勾选任务,并按 `build_mode` 恢复执行:
|
|
134
|
-
- 若 `build_mode: subagent-driven-development`,不得在主窗口直接执行任务;必须回到 `/comet-build` 的后台 subagent 调度规则,由主窗口只做协调
|
|
135
|
-
- 其他执行方式按 `/comet-build` 的对应规则继续
|
|
136
|
-
- 若 `verify_result: fail`,读取 `verify_failures`:未超过 3 次时直接调用 `/comet-build` 继续已记录的修复循环,不重复询问;超过自动修复上限时回到 `/comet-verify` 的例外决策点。只有接受 WARNING/SUGGESTION 偏差或超限后的继续/停止策略需要用户选择
|
|
137
|
-
- 若 `phase: open` 但 OpenSpec `applyRequires` 已完整,先运行 `comet guard <change-name> open --apply` 修正状态,再继续判定
|
|
138
|
-
- 若 `phase: archive`,只允许调用 `/comet-archive`;归档前先等待最终确认,归档后精确提交归档改动,再处理分支并运行 archive guard
|
|
139
|
-
|
|
140
|
-
**Step 2: 阶段判定**(按顺序,命中即停)
|
|
141
|
-
|
|
142
|
-
1. `archived: true` 或 change 已移入 archive → 流程已完成
|
|
143
|
-
2. `verify_result: pass` 且 `archived` 不是 `true` → `/comet-archive`(先进行归档前最终确认)
|
|
144
|
-
3. `verify_result: fail` → 自动调用 `/comet-build` 继续修复;若 `verify_failures` 已超过自动修复上限,则进入 `/comet-verify` 的超限策略决策点
|
|
145
|
-
4. `phase: verify` 或 tasks.md 全部勾选 → `/comet-verify`
|
|
146
|
-
5. `phase: build` 或已有 Design Doc 但计划/执行未完成 → 优先按 workflow 路由:`hotfix` → `/comet-hotfix`,`tweak` → `/comet-tweak`,`full` → `/comet-build`
|
|
147
|
-
6. `phase: design` 或有 change 但无 Design Doc → `/comet-design`
|
|
148
|
-
7. `phase: open` 或有活跃 change 但 `.comet.yaml` 缺失 → `/comet-open`
|
|
149
|
-
8. 无活跃 change → `/comet-open`
|
|
150
|
-
|
|
151
|
-
如果元数据与文件状态冲突,以文件状态为准,修正 `.comet.yaml` 后继续。
|
|
152
|
-
|
|
153
|
-
### 预设升级判定
|
|
154
|
-
|
|
155
|
-
hotfix/tweak 的范围判定采用三层分工,避免「用纯文件数当硬性升级条件」误杀正常小改动:
|
|
156
|
-
|
|
157
|
-
1. **质变信号**(agent 语义识别,命中任一即暂停交用户二选一):跨模块协调修改、需要新增 capability、数据库 schema 变更、引入新的 public API、触及深层架构问题(各预设沿用这套核心信号,并可追加自身语境的特有信号,如 tweak 的「需要拆分为多个 OpenSpec changes」)
|
|
158
|
-
2. **文件数 tripwire**(用户拍板,非自动升级):改动文件数超提示阈值时,暂停交用户决定继续预设流程还是升级 full,不自动踢
|
|
159
|
-
3. **验证级别**(scale 脚本判定):`comet state scale` 仅决定 `verify_mode`(验证轻重),不卡流程、不触发升级
|
|
160
|
-
|
|
161
|
-
**升级决策点(用户二选一)**:
|
|
162
|
-
- 继续预设轻量流程(用户确认范围可控)
|
|
163
|
-
- 升级为完整 `/comet`(使用 `comet state transition <name> preset-escalate` 合法回退到 design 阶段,同时清除预设专属的 build 配置;补 Design Doc 后重新联合选择完整工作方式)
|
|
164
|
-
|
|
165
|
-
详细判定规则见 `comet-hotfix` / `comet-tweak` 各自的「升级判定」章节。
|
|
166
|
-
|
|
167
|
-
### 错误处理速查
|
|
168
|
-
|
|
169
|
-
| 场景 | 处理方式 |
|
|
170
|
-
|------|---------|
|
|
171
|
-
| `openspec list --json` 失败 | 检查 openspec 是否已安装,提示 `openspec init` |
|
|
172
|
-
| 子 skill 不可用 | 停止流程,提示安装或启用对应 skill |
|
|
173
|
-
| `.comet.yaml` 缺失 | 进入对应 preset 的 `/comet-open` 初始化状态,再运行 `comet state select`;不得跳过初始化 |
|
|
174
|
-
| `.comet.yaml` 格式异常 | 停止并报告解析错误;从版本控制、备份或可验证产物人工修复,不能用 `comet state set` 覆盖损坏文件 |
|
|
175
|
-
| 构建/测试失败 | 返回 build 阶段修复,不进入 verify |
|
|
176
|
-
| change 目录结构不完整 | 按 `comet-open` 产物要求补齐 |
|
|
177
|
-
|
|
178
|
-
### 阶段衔接
|
|
179
|
-
|
|
180
|
-
<IMPORTANT>
|
|
181
|
-
单次 `/comet` 调用从检测到的阶段开始,退出条件满足后进入下一阶段。
|
|
182
|
-
|
|
183
|
-
流转链:open → design → build → verify → archive
|
|
184
|
-
|
|
185
|
-
**连续执行要求**:从检测到的阶段开始,agent 自动推进后续阶段。但**自动推进仅适用于没有用户决策的衔接点**。遇到用户决策点时,**必须使用当前平台可用的用户输入/确认机制暂停并等待用户明确回复**,不得用推荐规则、默认值或历史偏好代替用户确认,也不得仅输出文字提示后继续执行。
|
|
186
|
-
|
|
187
|
-
**阶段推进与自动衔接的区分**:每个子 skill 退出前都会运行阶段守卫 `--apply` 推进 `.comet.yaml` 的 `phase` 字段——这一步**始终发生**,与 `auto_transition` 无关。之后子 skill 运行 `comet state next <name>` 解析下一步:`auto_transition` 不为 `false` 时输出 `NEXT: auto`(自动调用下一 skill),为 `false` 时输出 `NEXT: manual`(不调用下一 skill,按 `HINT` 交还控制权)。`NEXT: manual` 不是用户决策点,不得再询问“是否继续”。因此 `auto_transition` **只控制是否自动调用下一个 skill,不影响 phase 推进**。无论 `auto_transition` 取何值,下方真正的用户决策点都必须阻塞等待。
|
|
188
|
-
|
|
189
|
-
**决策点是阻塞点**:只要到达下列任一节点,当前 `/comet` 调用必须停住,并按 `comet/reference/decision-point.md` 的协议获取用户明确选择。用户明确选择后才能写入对应状态字段、执行对应操作,随后再继续自动流转。
|
|
190
|
-
|
|
191
|
-
需要用户参与的节点(仅在这些节点暂停):
|
|
192
|
-
1. workflow 目标选择:多个 active changes、继续现有 change/创建新 change、或批量拆分完成后选择先启动哪一个
|
|
193
|
-
2. open 阶段 proposal/design/tasks 最终审视确认(同时确认 change 名称与范围;清晰请求不做前置摘要/命名确认)
|
|
194
|
-
3. brainstorming 确认设计方案
|
|
195
|
-
4. build 阶段一次性联合选择 plan-ready 暂停或完整工作方式(可用的工作区隔离 + 执行方式 + TDD 模式 + 代码审查模式;选择 branch 时同时确认分支名)
|
|
196
|
-
5. verify 阶段接受 WARNING/SUGGESTION 偏差、处理 Spec 漂移,或第 4 次失败后选择继续修复/停止;前 3 次明确可修复失败自动闭环
|
|
197
|
-
6. archive 阶段执行归档脚本前的最终确认
|
|
198
|
-
7. 归档改动精确提交后选择 finishing-branch 分支处理方式
|
|
199
|
-
8. 遇到升级判定信号(hotfix/tweak → 用户二选一:继续预设流程 / 升级完整流程)
|
|
200
|
-
9. build 阶段范围扩张需重新设计或拆分新 change
|
|
201
|
-
10. open 阶段大型 PRD 是否拆分为多个 changes
|
|
202
|
-
|
|
203
|
-
agent 不应跳过这些决策点;其他明确无歧义的阶段衔接必须自动继续推进,不得中途退出。到达决策点时,**禁止跳过用户确认或自动选择——必须通过当前平台可用的用户输入/确认机制明确获取用户选择后才能继续**。
|
|
204
|
-
|
|
205
|
-
**红旗清单** — 以下想法出现时立即停止并检查:
|
|
206
|
-
|
|
207
|
-
| Agent 心理 | 实际风险 |
|
|
208
|
-
|-----------|---------|
|
|
209
|
-
| "用户应该会同意这个方案" | 不能替用户决策,必须等待用户明确选择 |
|
|
210
|
-
| "这只是个小改动,不需要确认" | 决策点无大小之分,阻塞点必须等待 |
|
|
211
|
-
| "用户之前选过 A,这次也选 A" | 历史偏好不能替代当前确认 |
|
|
212
|
-
| "我已经解释了方案,用户没反对" | 没反对 ≠ 同意,必须用工具获取明确选择 |
|
|
213
|
-
| "流程走到这里应该没问题了" | 验证不通过 ≠ 通过,检查 verify_result |
|
|
214
|
-
</IMPORTANT>
|
|
215
|
-
|
|
216
|
-
---
|
|
217
|
-
|
|
218
|
-
## 子命令速查
|
|
219
|
-
|
|
220
|
-
| 命令 | 阶段 | 归属 | 产物 |
|
|
221
|
-
|------|------|------|------|
|
|
222
|
-
| `/comet-open` | 1. 开启 | OpenSpec | proposal.md、design.md、tasks.md |
|
|
223
|
-
| `/comet-design` | 2. 深度设计 | Superpowers | Design Doc、delta spec |
|
|
224
|
-
| `/comet-build` | 3. 计划与构建 | Superpowers | 实施计划、代码提交 |
|
|
225
|
-
| `/comet-verify` | 4. 验证 | Both | 验证报告 |
|
|
226
|
-
| `/comet-archive` | 5. 归档与收尾 | OpenSpec | delta→main spec 同步、design doc 标注、归档提交、分支处理 |
|
|
227
|
-
| `/comet-hotfix` | 预设路径 | Both | 快速修复(跳过 brainstorming) |
|
|
228
|
-
| `/comet-tweak` | 预设路径 | Both | 串联 OpenSpec 的中等改动(delta spec 为一等公民,跳过 brainstorming 和完整 plan) |
|
|
229
|
-
|
|
230
|
-
```
|
|
231
|
-
/comet
|
|
232
|
-
↓ 自动检测
|
|
233
|
-
/comet-open ──→ /comet-design ──→ /comet-build ──→ /comet-verify ──→ /comet-archive
|
|
234
|
-
(OpenSpec) (Superpowers) (Superpowers) (Both) (OpenSpec)
|
|
235
|
-
|
|
236
|
-
/comet-hotfix(预设路径,跳过 brainstorming)
|
|
237
|
-
open ──→ build ──→ verify ──→ archive
|
|
238
|
-
↑ 命中升级判定信号 → 用户二选一(继续预设流程 / 升级 full)→ 升级则 transition preset-escalate → 补 Design Doc → 回到完整流程
|
|
239
|
-
|
|
240
|
-
/comet-tweak(轻量预设路径,串联 OpenSpec,delta spec 为一等公民)
|
|
241
|
-
open ──→ build ──→ verify ──→ archive
|
|
242
|
-
↑ 命中升级判定信号 → 用户二选一(继续预设流程 / 升级 full)→ 升级则 transition preset-escalate → 补 Design Doc → 回到完整流程
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
---
|
|
246
|
-
|
|
247
|
-
## 参考附录(Reference Appendix)
|
|
248
|
-
|
|
249
|
-
> 字段说明、文件结构和自动衔接协议已提取为渐进式加载参考文档,按需查阅:
|
|
250
|
-
> - **`.comet.yaml` 完整字段表**:按 `comet/reference/comet-yaml-fields.md` 查阅(含必需字段、可选字段和完整示例)
|
|
251
|
-
> - **文件结构**:按 `comet/reference/file-structure.md` 查阅
|
|
252
|
-
> - **自动衔接协议**:按 `comet/reference/auto-transition.md` 查阅
|
|
253
|
-
> - **上下文压缩恢复**:按 `comet/reference/context-recovery.md` 查阅
|
|
254
|
-
> - **用户决策点协议**:按 `comet/reference/decision-point.md` 查阅
|
|
255
|
-
> - **异常调试协议**:按 `comet/reference/debug-gate.md` 查阅
|
|
256
|
-
|
|
257
|
-
### 状态机硬约束
|
|
258
|
-
|
|
259
|
-
- full workflow 的 `build → verify` 前,`isolation` 必须是 `branch` 或 `worktree`;hotfix/tweak 可如实使用 `current`
|
|
260
|
-
- `build → verify` 前,`build_mode` 必须已选择
|
|
261
|
-
- `build_mode: subagent-driven-development` 必须同时有 `subagent_dispatch: confirmed`
|
|
262
|
-
- full workflow 离开 build 阶段前 `tdd_mode` 必须已选择为 `tdd` 或 `direct`
|
|
263
|
-
- full workflow 离开 build 阶段前 `review_mode` 必须已选择为 `off`、`standard` 或 `thorough`
|
|
264
|
-
- `build_mode: direct` 默认只允许 `hotfix` / `tweak`;full workflow 需要 `direct_override: true`
|
|
265
|
-
- `build_pause` 不是执行方式,不得写入 `build_mode`
|
|
266
|
-
- 这些约束同时由 `comet guard <name> build --apply` 和 `comet state transition <name> build-complete` 执行
|
|
267
|
-
|
|
268
|
-
### 脚本定位
|
|
269
|
-
|
|
270
|
-
面向 workflow 的状态、守卫、handoff 和 archive 操作统一使用稳定 `comet` CLI;只有尚无公开子命令的 intent/resume probe 才按 `comet/reference/scripts.md` 定位内部 launcher。关键入口:
|
|
16
|
+
2. **只有**宿主明确报告 `command not found`、`executable not found` 或 `ENOENT`,能够证明 `comet` 不在 PATH 时,才从当前 `SKILL.md` 所在目录定位 `<comet-skill-root>`,运行自带入口 runtime:
|
|
271
17
|
|
|
272
|
-
```
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
comet state next <change-name> # NEXT: auto|manual|done + SKILL: <skill-name>
|
|
276
|
-
comet archive <change-name> # 一键完成归档
|
|
277
|
-
```
|
|
18
|
+
```text
|
|
19
|
+
node <comet-skill-root>/scripts/comet-entry-runtime.mjs . --json
|
|
20
|
+
```
|
|
278
21
|
|
|
279
|
-
|
|
22
|
+
CLI 已启动但返回非零、配置解析失败、输出不是 JSON 或字段无效,都不得使用 bundled runtime 重试;停止并原样说明错误,不要回退或猜测。
|
|
23
|
+
3. 解析 JSON。只接受 `schema: comet.workflow-resolution.v1`,且 `skill` 必须是下列两个值之一。
|
|
24
|
+
4. 只按返回的 `skill` 调用一个入口,并把用户原始请求完整交给它:
|
|
25
|
+
- `comet-native` → `/comet-native`
|
|
26
|
+
- `comet-classic` → `/comet-classic`
|
|
280
27
|
|
|
281
|
-
|
|
28
|
+
不根据任务大小、文件数量、活跃 change 或模型判断改选另一套工作流。Native 与 Classic 的 change、状态和产物始终彼此独立。
|
|
@@ -20,6 +20,7 @@ tdd_mode: tdd
|
|
|
20
20
|
review_mode: standard
|
|
21
21
|
auto_transition: true
|
|
22
22
|
isolation: branch
|
|
23
|
+
bound_branch: null
|
|
23
24
|
verify_mode: light
|
|
24
25
|
verify_result: pending
|
|
25
26
|
verify_failures: 0
|
|
@@ -36,7 +37,7 @@ archived: false
|
|
|
36
37
|
| 字段 | 含义 |
|
|
37
38
|
|------|------|
|
|
38
39
|
| `workflow` | `full`、`hotfix` 或 `tweak` |
|
|
39
|
-
| `language` | 产物语言,仅支持 `en` 或 `zh-CN`。由 `comet init` 按安装范围写入项目或全局 `.comet/config.yaml`,创建 change 时按“项目优先、全局回退”快照到 `.comet.yaml`,用于约束 OpenSpec / Superpowers 产物主语言 |
|
|
40
|
+
| `language` | 产物语言,仅支持 `en` 或 `zh-CN`。由 `comet init` 按安装范围写入项目或全局 `.comet/config.yaml` 的 `classic.language`,创建 change 时按“项目优先、全局回退”快照到 `.comet.yaml`,用于约束 OpenSpec / Superpowers 产物主语言 |
|
|
40
41
|
| `phase` | 当前阶段:`open`、`design`、`build`、`verify`、`archive`(init 统一设为 `open`,guard 负责过渡) |
|
|
41
42
|
| `design_doc` | 关联的 Superpowers Design Doc 路径,可为空 |
|
|
42
43
|
| `plan` | 关联的 Superpowers Plan 路径,可为空 |
|
|
@@ -46,7 +47,8 @@ archived: false
|
|
|
46
47
|
| `subagent_dispatch` | `null` 或 `confirmed`。仅当已确认当前平台存在真实后台 subagent / Task / multi-agent 调度能力时,`build_mode: subagent-driven-development` 才能写入并用于离开 build 阶段 |
|
|
47
48
|
| `tdd_mode` | `tdd` 或 `direct`。full workflow 离开 build 阶段前必须已选择。`tdd` 强制每个任务先写失败测试再实现;`direct` 不强制逐任务 TDD,但仍需相关测试与 bug 回归证据。hotfix/tweak 默认 `direct` |
|
|
48
49
|
| `review_mode` | `off`、`standard` 或 `thorough`。full workflow 离开 build 阶段前必须已选择;hotfix/tweak 默认 `off` |
|
|
49
|
-
| `isolation` | `current`、`branch` 或 `worktree`。full 初始化可为 `null`,离开 build
|
|
50
|
+
| `isolation` | `current`、`branch` 或 `worktree`。full 初始化可为 `null`,离开 build 前必须由用户显式选择 `current`、实际创建/选择 `branch`,或实际创建/选择 `worktree`;hotfix/tweak 在入口用户决策点后也可如实使用三种模式,不得在未创建分支时虚构为 `branch` |
|
|
51
|
+
| `bound_branch` | 工作区分支绑定记录,可为空。`isolation: current` / `branch` / `worktree` 首次设置或入口检查时记录命令执行目录所在的当前 Git 分支(worktree 模式请在对应工作区内执行 set/check/guard,否则会绑定/比对错误的分支);在不同工作区模式之间切换 `isolation` 会重新绑定到当前分支,重复设置同一模式保持原绑定。后续 `comet state select` / `comet state check` 必须确认绑定分支与当前分支一致;漂移时 `select` 直接拒绝、检查进入 `BLOCKED`,按决策点协议让用户选择切回绑定分支或明确确认后运行 `comet state rebind <change-name>`。清空 `isolation` 时会清空该字段 |
|
|
50
52
|
| `verify_mode` | `light` 或 `full`,可为空 |
|
|
51
53
|
| `auto_transition` | `true` 或 `false`。只控制阶段守卫推进 phase 后是否自动调用下一个 skill;`false` 时由 `comet-state next` 输出 `manual`,暂停下一 skill 调用,但不阻止 phase 字段更新 |
|
|
52
54
|
| `verify_result` | `pending`、`pass` 或 `fail` |
|
|
@@ -66,7 +68,7 @@ archived: false
|
|
|
66
68
|
|
|
67
69
|
## 状态机硬约束
|
|
68
70
|
|
|
69
|
-
-
|
|
71
|
+
- `build → verify` 前,`isolation` 必须是 `current`、`branch` 或 `worktree`
|
|
70
72
|
- `build → verify` 前,`build_mode` 必须已选择
|
|
71
73
|
- `build_mode: subagent-driven-development` 必须同时有 `subagent_dispatch: confirmed`
|
|
72
74
|
- full workflow 离开 build 阶段前 `tdd_mode` 必须已选择为 `tdd` 或 `direct`
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
comet state check <change-name> <phase> --recover
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
-
若检查结果显示实际 phase、workflow 或 evidence 应由其他 Skill 处理,按脚本输出和 `/comet` 路由规则切换;不要在错误阶段继续补写状态。若存在未提交改动,先按 `comet/reference/dirty-worktree.md` 归因。
|
|
15
|
+
若检查结果显示实际 phase、workflow 或 evidence 应由其他 Skill 处理,按脚本输出和 `/comet-classic` 路由规则切换;不要在错误阶段继续补写状态。若存在未提交改动,先按 `comet/reference/dirty-worktree.md` 归因。
|
|
16
16
|
|
|
17
|
-
## 未显式 `/comet` 的恢复
|
|
17
|
+
## 未显式 `/comet-classic` 的恢复
|
|
18
18
|
|
|
19
|
-
如果用户没有提 `/comet`,但本仓库可能有 active change,开始处理需要改动或调查的任务前先运行 Ambient Resume 探针。先按 `comet/reference/scripts.md` 定位脚本并确保 `$COMET_RESUME_PROBE` 可用,然后把当前用户请求从 stdin 传入:
|
|
19
|
+
如果用户没有提 `/comet-classic`,但本仓库可能有 active Classic change,开始处理需要改动或调查的任务前先运行 Ambient Resume 探针。先按 `comet/reference/scripts.md` 定位脚本并确保 `$COMET_RESUME_PROBE` 可用,然后把当前用户请求从 stdin 传入:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
node "$COMET_RESUME_PROBE" probe --stdin
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# CometIntentFrame 字段参考
|
|
2
2
|
|
|
3
|
-
本文件只在需要解释字段含义时读取。正常 `/comet` 路由只需按主 Skill 的最小骨架填写;runtime 会补齐省略字段并输出最终 `route`。
|
|
3
|
+
本文件只在需要解释字段含义时读取。正常 `/comet-classic` 路由只需按主 Skill 的最小骨架填写;runtime 会补齐省略字段并输出最终 `route`。
|
|
4
4
|
|
|
5
5
|
## 顶层字段
|
|
6
6
|
|
|
7
7
|
| 字段 | 含义 |
|
|
8
8
|
|------|------|
|
|
9
9
|
| `schema_version` | frame 版本,当前固定为 `comet.intent.v1`。 |
|
|
10
|
-
| `utterance` | 触发 `/comet` 的用户原话。 |
|
|
10
|
+
| `utterance` | 触发 `/comet-classic` 的用户原话。 |
|
|
11
11
|
| `intent` | 用户高层意图和置信度。低于 runtime 阈值时会路由到 `ask_user`。 |
|
|
12
12
|
| `slots` | 从用户原话归一化出来的路由槽位。 |
|
|
13
13
|
| `context` | 从仓库状态读取的上下文,不是用户原话抽取结果。 |
|
|
@@ -24,7 +24,7 @@ guard 的 `--apply` 在检查通过后推进状态。需要直接表达状态事
|
|
|
24
24
|
|
|
25
25
|
## 兼容、恢复与内部命令引导
|
|
26
26
|
|
|
27
|
-
以下脚本定位只用于旧版兼容、CLI 不可用时的恢复,以及 `/comet` 内部入口命令。正常公开工作流不得优先采用此方式。Comet 脚本随 Skill 包分发在 `comet/scripts/` 下;需要恢复时不要硬编码路径,而应定位一次并缓存环境变量:
|
|
27
|
+
以下脚本定位只用于旧版兼容、CLI 不可用时的恢复,以及 `/comet-classic` 内部入口命令。正常公开工作流不得优先采用此方式。Comet 脚本随 Skill 包分发在 `comet/scripts/` 下;需要恢复时不要硬编码路径,而应定位一次并缓存环境变量:
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
30
|
COMET_ENV="${COMET_ENV:-$(find . "$HOME"/.*/skills "$HOME/.config" "$HOME/.gemini" -path '*/comet/scripts/comet-env.mjs' -type f -print -quit 2>/dev/null)}"
|
|
@@ -55,7 +55,7 @@ fi
|
|
|
55
55
|
| `COMET_GUARD` | 阶段退出守卫和 `--apply` 状态推进 |
|
|
56
56
|
| `COMET_HANDOFF` | Design/Build handoff 上下文包生成 |
|
|
57
57
|
| `COMET_ARCHIVE` | 一键归档和主 spec 同步 |
|
|
58
|
-
| `COMET_INTENT` | `/comet` 入口意图识别和路由评分 |
|
|
58
|
+
| `COMET_INTENT` | `/comet-classic` 入口意图识别和路由评分 |
|
|
59
59
|
| `COMET_RESUME_PROBE` | 只读 Ambient Resume 探针,判断是否应恢复 active Comet workflow |
|
|
60
60
|
|
|
61
61
|
## 自动状态更新
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: comet-any
|
|
3
|
-
description: "仅在用户明确调用 /comet-any,或明确要求定制
|
|
3
|
+
description: "仅在用户明确调用 /comet-any,或明确要求定制 /comet-classic 五阶段流程、创建或升级由 Comet Creator 管理的 workflow Skill 时使用;不要用于一般 Skill 的编写、整理或评审。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Comet Any - Skill Creator
|
|
@@ -9,7 +9,7 @@ description: "仅在用户明确调用 /comet-any,或明确要求定制 Comet
|
|
|
9
9
|
|
|
10
10
|
普通用户第一层只看到三种起点:
|
|
11
11
|
|
|
12
|
-
- `基于
|
|
12
|
+
- `基于 /comet-classic 的五阶段定制`:覆盖 `open / design / build / verify / archive` 五阶段的 Skill 编排,但不修改 `/comet-classic` 永久入口本身。
|
|
13
13
|
- `创建全新 workflow Skill`:从目标和候选 Skills 生成新的 `workflow-kernel`。
|
|
14
14
|
- `整理已有 Skill`:读取已有 Skill,补齐 Workflow Node、Skill Binding、Output Schema、Guardrail、Handoff、eval 和 readiness。
|
|
15
15
|
|
|
@@ -30,7 +30,7 @@ description: "仅在用户明确调用 /comet-any,或明确要求定制 Comet
|
|
|
30
30
|
|
|
31
31
|
## 受保护边界
|
|
32
32
|
|
|
33
|
-
`comet-five-phase-overlay` 保留 Comet
|
|
33
|
+
`comet-five-phase-overlay` 保留 Comet Classic 五阶段主流程和 `.comet.yaml` 状态语义。普通模式下:
|
|
34
34
|
|
|
35
35
|
- `comet-five-phase-overlay` 的主状态只来自 `openspec/changes/<name>/.comet.yaml`;没有 active change 或多个 active changes 时必须阻塞并请用户选择。
|
|
36
36
|
- 不得创建 `.comet/runs/<workflow>/state.json` 作为 Comet overlay 主状态。Bundle 草稿、eval evidence 和 publish readiness 可以有自己的证据文件,但不能替代 `.comet.yaml`。
|
|
@@ -59,7 +59,7 @@ description: "仅在用户明确调用 /comet-any,或明确要求定制 Comet
|
|
|
59
59
|
|
|
60
60
|
```json
|
|
61
61
|
{
|
|
62
|
-
"goal": "基于
|
|
62
|
+
"goal": "基于 /comet-classic 的五阶段定制,要求组件库和白盒审查。",
|
|
63
63
|
"skillCreatorIntent": "customize-comet",
|
|
64
64
|
"workflow": {
|
|
65
65
|
"kind": "comet-five-phase-overlay",
|
|
@@ -63,7 +63,7 @@ Claude Code、Codex、Gemini、Copilot 等平台的 subagent 调用方式不同
|
|
|
63
63
|
- `plan.json` 中的 `goal`、`workflow.kind`、`workflow.nodes`、`engineMode`、`runnerMode`,以及规范化后的 `workflow-protocol.json`。
|
|
64
64
|
- `reference/resolved-skills.json` 或等价的真实 Skill 来源摘要。
|
|
65
65
|
- `reference/workflow-protocol.json` 或即将写入该文件的 workflow protocol。
|
|
66
|
-
- `/comet` 定制场景下的受保护边界:`open / design / build / verify / archive`、`.comet.yaml`、decision point、verify-result-transition、archive-delta-sync。
|
|
66
|
+
- `/comet-classic` 定制场景下的受保护边界:`open / design / build / verify / archive`、`.comet.yaml`、decision point、verify-result-transition、archive-delta-sync。
|
|
67
67
|
- 项目级偏好、缺失/歧义候选处理结果、偏离原因、scripts/hooks 可执行披露。
|
|
68
68
|
|
|
69
69
|
## 输出格式
|
|
@@ -21,7 +21,7 @@ reference 层承载证据,不把内部审计内容塞进用户可见 `SKILL.md
|
|
|
21
21
|
- resolved Skill 的名称、来源、description、hash、reference、rules、scripts、hooks。
|
|
22
22
|
- `sourceSummaries`,必须来自真实 `SKILL.md` 正文和直接 reference。
|
|
23
23
|
- 项目级偏好、缺失/歧义候选处理、偏离原因和可执行披露。
|
|
24
|
-
- `/comet` 定制时保留的五阶段语义。
|
|
24
|
+
- `/comet-classic` 定制时保留的五阶段语义。
|
|
25
25
|
|
|
26
26
|
使用文件交接:主会话提供路径,不粘贴大段全文。不要读取主会话历史,也不要把来源 Skill 原文整段搬进
|
|
27
27
|
reference。
|
|
@@ -22,7 +22,7 @@ factory 还会从同一份 `workflow-protocol.json` 确定性生成 `scripts/com
|
|
|
22
22
|
- `reference/workflow-protocol.json`
|
|
23
23
|
- `plan.json` 的 `workflow.kind`、`workflow.nodes`、`engineMode`、`runnerMode`,以及规范化后的 `workflow-protocol.json`
|
|
24
24
|
- `reference/resolved-skills.json`
|
|
25
|
-
- `/comet` 定制时的 `.comet.yaml` 受保护语义;`comet-five-phase-overlay` 的主状态只来自 `openspec/changes/<name>/.comet.yaml`,不得创建 `.comet/runs/<workflow>/state.json` 作为 Comet overlay 主状态
|
|
25
|
+
- `/comet-classic` 定制时的 `.comet.yaml` 受保护语义;`comet-five-phase-overlay` 的主状态只来自 `openspec/changes/<name>/.comet.yaml`,不得创建 `.comet/runs/<workflow>/state.json` 作为 Comet overlay 主状态
|
|
26
26
|
|
|
27
27
|
使用文件交接:主会话提供路径,不粘贴大段全文。不要读取主会话历史,也不要要求用户重新解释已经写入
|
|
28
28
|
artifact 的内容。
|