zero-workspace 0.0.2
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/CHANGELOG.md +18 -0
- package/README.md +187 -0
- package/config/component-versions.json +16 -0
- package/config/scenarioCapabilities.json +29 -0
- package/config/version-notes.yaml +244 -0
- package/dist/adapters/OutputAdapter.d.ts +79 -0
- package/dist/adapters/OutputAdapter.d.ts.map +1 -0
- package/dist/adapters/OutputAdapter.js +124 -0
- package/dist/adapters/OutputAdapter.js.map +1 -0
- package/dist/cli/check-node-version.d.ts +3 -0
- package/dist/cli/check-node-version.d.ts.map +1 -0
- package/dist/cli/check-node-version.js +153 -0
- package/dist/cli/check-node-version.js.map +1 -0
- package/dist/cli/plugins.d.ts +41 -0
- package/dist/cli/plugins.d.ts.map +1 -0
- package/dist/cli/plugins.js +742 -0
- package/dist/cli/plugins.js.map +1 -0
- package/dist/cli/rebuild.d.ts +63 -0
- package/dist/cli/rebuild.d.ts.map +1 -0
- package/dist/cli/rebuild.js +989 -0
- package/dist/cli/rebuild.js.map +1 -0
- package/dist/cli/repair.d.ts +7 -0
- package/dist/cli/repair.d.ts.map +1 -0
- package/dist/cli/repair.js +925 -0
- package/dist/cli/repair.js.map +1 -0
- package/dist/cli/setup.d.ts +7 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +452 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/cli/update.d.ts +10 -0
- package/dist/cli/update.d.ts.map +1 -0
- package/dist/cli/update.js +426 -0
- package/dist/cli/update.js.map +1 -0
- package/dist/cli/webui.d.ts +6 -0
- package/dist/cli/webui.d.ts.map +1 -0
- package/dist/cli/webui.js +210 -0
- package/dist/cli/webui.js.map +1 -0
- package/dist/http/index.d.ts +3 -0
- package/dist/http/index.d.ts.map +1 -0
- package/dist/http/index.js +15 -0
- package/dist/http/index.js.map +1 -0
- package/dist/http/middleware/errorHandler.d.ts +16 -0
- package/dist/http/middleware/errorHandler.d.ts.map +1 -0
- package/dist/http/middleware/errorHandler.js +79 -0
- package/dist/http/middleware/errorHandler.js.map +1 -0
- package/dist/http/routes/admin.d.ts +3 -0
- package/dist/http/routes/admin.d.ts.map +1 -0
- package/dist/http/routes/admin.js +730 -0
- package/dist/http/routes/admin.js.map +1 -0
- package/dist/http/routes/backup.d.ts +3 -0
- package/dist/http/routes/backup.d.ts.map +1 -0
- package/dist/http/routes/backup.js +172 -0
- package/dist/http/routes/backup.js.map +1 -0
- package/dist/http/routes/config.d.ts +3 -0
- package/dist/http/routes/config.d.ts.map +1 -0
- package/dist/http/routes/config.js +157 -0
- package/dist/http/routes/config.js.map +1 -0
- package/dist/http/routes/context.d.ts +3 -0
- package/dist/http/routes/context.d.ts.map +1 -0
- package/dist/http/routes/context.js +82 -0
- package/dist/http/routes/context.js.map +1 -0
- package/dist/http/routes/log.d.ts +3 -0
- package/dist/http/routes/log.d.ts.map +1 -0
- package/dist/http/routes/log.js +105 -0
- package/dist/http/routes/log.js.map +1 -0
- package/dist/http/routes/memo.d.ts +6 -0
- package/dist/http/routes/memo.d.ts.map +1 -0
- package/dist/http/routes/memo.js +29 -0
- package/dist/http/routes/memo.js.map +1 -0
- package/dist/http/routes/node.d.ts +3 -0
- package/dist/http/routes/node.d.ts.map +1 -0
- package/dist/http/routes/node.js +251 -0
- package/dist/http/routes/node.js.map +1 -0
- package/dist/http/routes/state.d.ts +3 -0
- package/dist/http/routes/state.d.ts.map +1 -0
- package/dist/http/routes/state.js +48 -0
- package/dist/http/routes/state.js.map +1 -0
- package/dist/http/routes/workspace.d.ts +3 -0
- package/dist/http/routes/workspace.d.ts.map +1 -0
- package/dist/http/routes/workspace.js +249 -0
- package/dist/http/routes/workspace.js.map +1 -0
- package/dist/http/server.d.ts +10 -0
- package/dist/http/server.d.ts.map +1 -0
- package/dist/http/server.js +284 -0
- package/dist/http/server.js.map +1 -0
- package/dist/http/services.d.ts +93 -0
- package/dist/http/services.d.ts.map +1 -0
- package/dist/http/services.js +297 -0
- package/dist/http/services.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1073 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/guidanceContent.d.ts +18 -0
- package/dist/prompts/guidanceContent.d.ts.map +1 -0
- package/dist/prompts/guidanceContent.js +814 -0
- package/dist/prompts/guidanceContent.js.map +1 -0
- package/dist/prompts/index.d.ts +2 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +4 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/instructions.d.ts +56 -0
- package/dist/prompts/instructions.d.ts.map +1 -0
- package/dist/prompts/instructions.js +1343 -0
- package/dist/prompts/instructions.js.map +1 -0
- package/dist/services/BackupService.d.ts +104 -0
- package/dist/services/BackupService.d.ts.map +1 -0
- package/dist/services/BackupService.js +549 -0
- package/dist/services/BackupService.js.map +1 -0
- package/dist/services/CapabilityService.d.ts +38 -0
- package/dist/services/CapabilityService.d.ts.map +1 -0
- package/dist/services/CapabilityService.js +256 -0
- package/dist/services/CapabilityService.js.map +1 -0
- package/dist/services/ConfigService.d.ts +35 -0
- package/dist/services/ConfigService.d.ts.map +1 -0
- package/dist/services/ConfigService.js +105 -0
- package/dist/services/ConfigService.js.map +1 -0
- package/dist/services/ContextService.d.ts +65 -0
- package/dist/services/ContextService.d.ts.map +1 -0
- package/dist/services/ContextService.js +503 -0
- package/dist/services/ContextService.js.map +1 -0
- package/dist/services/DetectionService.d.ts +76 -0
- package/dist/services/DetectionService.d.ts.map +1 -0
- package/dist/services/DetectionService.js +262 -0
- package/dist/services/DetectionService.js.map +1 -0
- package/dist/services/DispatchService.d.ts +267 -0
- package/dist/services/DispatchService.d.ts.map +1 -0
- package/dist/services/DispatchService.js +1357 -0
- package/dist/services/DispatchService.js.map +1 -0
- package/dist/services/EventService.d.ts +81 -0
- package/dist/services/EventService.d.ts.map +1 -0
- package/dist/services/EventService.js +187 -0
- package/dist/services/EventService.js.map +1 -0
- package/dist/services/GuidanceService.d.ts +64 -0
- package/dist/services/GuidanceService.d.ts.map +1 -0
- package/dist/services/GuidanceService.js +259 -0
- package/dist/services/GuidanceService.js.map +1 -0
- package/dist/services/HealthService.d.ts +43 -0
- package/dist/services/HealthService.d.ts.map +1 -0
- package/dist/services/HealthService.js +276 -0
- package/dist/services/HealthService.js.map +1 -0
- package/dist/services/InstallationService.d.ts +62 -0
- package/dist/services/InstallationService.d.ts.map +1 -0
- package/dist/services/InstallationService.js +204 -0
- package/dist/services/InstallationService.js.map +1 -0
- package/dist/services/LogService.d.ts +35 -0
- package/dist/services/LogService.d.ts.map +1 -0
- package/dist/services/LogService.js +189 -0
- package/dist/services/LogService.js.map +1 -0
- package/dist/services/MemoService.d.ts +39 -0
- package/dist/services/MemoService.d.ts.map +1 -0
- package/dist/services/MemoService.js +288 -0
- package/dist/services/MemoService.js.map +1 -0
- package/dist/services/NodeService.d.ts +90 -0
- package/dist/services/NodeService.d.ts.map +1 -0
- package/dist/services/NodeService.js +958 -0
- package/dist/services/NodeService.js.map +1 -0
- package/dist/services/OpenSpecParser.d.ts +43 -0
- package/dist/services/OpenSpecParser.d.ts.map +1 -0
- package/dist/services/OpenSpecParser.js +191 -0
- package/dist/services/OpenSpecParser.js.map +1 -0
- package/dist/services/ReferenceService.d.ts +35 -0
- package/dist/services/ReferenceService.d.ts.map +1 -0
- package/dist/services/ReferenceService.js +195 -0
- package/dist/services/ReferenceService.js.map +1 -0
- package/dist/services/RepairService.d.ts +36 -0
- package/dist/services/RepairService.d.ts.map +1 -0
- package/dist/services/RepairService.js +429 -0
- package/dist/services/RepairService.js.map +1 -0
- package/dist/services/SearchService.d.ts +34 -0
- package/dist/services/SearchService.d.ts.map +1 -0
- package/dist/services/SearchService.js +293 -0
- package/dist/services/SearchService.js.map +1 -0
- package/dist/services/SessionService.d.ts +136 -0
- package/dist/services/SessionService.d.ts.map +1 -0
- package/dist/services/SessionService.js +297 -0
- package/dist/services/SessionService.js.map +1 -0
- package/dist/services/StateService.d.ts +97 -0
- package/dist/services/StateService.d.ts.map +1 -0
- package/dist/services/StateService.js +846 -0
- package/dist/services/StateService.js.map +1 -0
- package/dist/services/TutorialService.d.ts +114 -0
- package/dist/services/TutorialService.d.ts.map +1 -0
- package/dist/services/TutorialService.js +1262 -0
- package/dist/services/TutorialService.js.map +1 -0
- package/dist/services/WorkspaceService.d.ts +273 -0
- package/dist/services/WorkspaceService.d.ts.map +1 -0
- package/dist/services/WorkspaceService.js +1764 -0
- package/dist/services/WorkspaceService.js.map +1 -0
- package/dist/services/index.d.ts +15 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +14 -0
- package/dist/services/index.js.map +1 -0
- package/dist/storage/FileSystemAdapter.d.ts +223 -0
- package/dist/storage/FileSystemAdapter.d.ts.map +1 -0
- package/dist/storage/FileSystemAdapter.js +384 -0
- package/dist/storage/FileSystemAdapter.js.map +1 -0
- package/dist/storage/JsonStorage.d.ts +158 -0
- package/dist/storage/JsonStorage.d.ts.map +1 -0
- package/dist/storage/JsonStorage.js +613 -0
- package/dist/storage/JsonStorage.js.map +1 -0
- package/dist/storage/MarkdownStorage.d.ts +178 -0
- package/dist/storage/MarkdownStorage.d.ts.map +1 -0
- package/dist/storage/MarkdownStorage.js +918 -0
- package/dist/storage/MarkdownStorage.js.map +1 -0
- package/dist/storage/SessionBindingStorage.d.ts +69 -0
- package/dist/storage/SessionBindingStorage.d.ts.map +1 -0
- package/dist/storage/SessionBindingStorage.js +131 -0
- package/dist/storage/SessionBindingStorage.js.map +1 -0
- package/dist/storage/index.d.ts +6 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +6 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/tools/capability.d.ts +18 -0
- package/dist/tools/capability.d.ts.map +1 -0
- package/dist/tools/capability.js +73 -0
- package/dist/tools/capability.js.map +1 -0
- package/dist/tools/config.d.ts +14 -0
- package/dist/tools/config.d.ts.map +1 -0
- package/dist/tools/config.js +61 -0
- package/dist/tools/config.js.map +1 -0
- package/dist/tools/context.d.ts +22 -0
- package/dist/tools/context.d.ts.map +1 -0
- package/dist/tools/context.js +139 -0
- package/dist/tools/context.js.map +1 -0
- package/dist/tools/dispatch.d.ts +41 -0
- package/dist/tools/dispatch.d.ts.map +1 -0
- package/dist/tools/dispatch.js +380 -0
- package/dist/tools/dispatch.js.map +1 -0
- package/dist/tools/help.d.ts +44 -0
- package/dist/tools/help.d.ts.map +1 -0
- package/dist/tools/help.js +227 -0
- package/dist/tools/help.js.map +1 -0
- package/dist/tools/import.d.ts +17 -0
- package/dist/tools/import.d.ts.map +1 -0
- package/dist/tools/import.js +96 -0
- package/dist/tools/import.js.map +1 -0
- package/dist/tools/index.d.ts +12 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +13 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/log.d.ts +21 -0
- package/dist/tools/log.d.ts.map +1 -0
- package/dist/tools/log.js +93 -0
- package/dist/tools/log.js.map +1 -0
- package/dist/tools/memo.d.ts +26 -0
- package/dist/tools/memo.d.ts.map +1 -0
- package/dist/tools/memo.js +188 -0
- package/dist/tools/memo.js.map +1 -0
- package/dist/tools/node.d.ts +34 -0
- package/dist/tools/node.d.ts.map +1 -0
- package/dist/tools/node.js +328 -0
- package/dist/tools/node.js.map +1 -0
- package/dist/tools/search.d.ts +14 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +95 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/session.d.ts +22 -0
- package/dist/tools/session.d.ts.map +1 -0
- package/dist/tools/session.js +127 -0
- package/dist/tools/session.js.map +1 -0
- package/dist/tools/state.d.ts +10 -0
- package/dist/tools/state.d.ts.map +1 -0
- package/dist/tools/state.js +79 -0
- package/dist/tools/state.js.map +1 -0
- package/dist/tools/workspace.d.ts +38 -0
- package/dist/tools/workspace.d.ts.map +1 -0
- package/dist/tools/workspace.js +240 -0
- package/dist/tools/workspace.js.map +1 -0
- package/dist/types/capability.d.ts +36 -0
- package/dist/types/capability.d.ts.map +1 -0
- package/dist/types/capability.js +3 -0
- package/dist/types/capability.js.map +1 -0
- package/dist/types/confirmation.d.ts +35 -0
- package/dist/types/confirmation.d.ts.map +1 -0
- package/dist/types/confirmation.js +3 -0
- package/dist/types/confirmation.js.map +1 -0
- package/dist/types/context.d.ts +174 -0
- package/dist/types/context.d.ts.map +1 -0
- package/dist/types/context.js +3 -0
- package/dist/types/context.js.map +1 -0
- package/dist/types/errors.d.ts +81 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +154 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/guidance.d.ts +162 -0
- package/dist/types/guidance.d.ts.map +1 -0
- package/dist/types/guidance.js +4 -0
- package/dist/types/guidance.js.map +1 -0
- package/dist/types/health.d.ts +61 -0
- package/dist/types/health.d.ts.map +1 -0
- package/dist/types/health.js +3 -0
- package/dist/types/health.js.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +11 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/memo.d.ts +132 -0
- package/dist/types/memo.d.ts.map +1 -0
- package/dist/types/memo.js +3 -0
- package/dist/types/memo.js.map +1 -0
- package/dist/types/node.d.ts +316 -0
- package/dist/types/node.d.ts.map +1 -0
- package/dist/types/node.js +3 -0
- package/dist/types/node.js.map +1 -0
- package/dist/types/repair.d.ts +62 -0
- package/dist/types/repair.d.ts.map +1 -0
- package/dist/types/repair.js +4 -0
- package/dist/types/repair.js.map +1 -0
- package/dist/types/search.d.ts +58 -0
- package/dist/types/search.d.ts.map +1 -0
- package/dist/types/search.js +3 -0
- package/dist/types/search.js.map +1 -0
- package/dist/types/settings.d.ts +109 -0
- package/dist/types/settings.d.ts.map +1 -0
- package/dist/types/settings.js +30 -0
- package/dist/types/settings.js.map +1 -0
- package/dist/types/workspace.d.ts +357 -0
- package/dist/types/workspace.d.ts.map +1 -0
- package/dist/types/workspace.js +3 -0
- package/dist/types/workspace.js.map +1 -0
- package/dist/utils/contentValidation.d.ts +47 -0
- package/dist/utils/contentValidation.d.ts.map +1 -0
- package/dist/utils/contentValidation.js +93 -0
- package/dist/utils/contentValidation.js.map +1 -0
- package/dist/utils/devLog.d.ts +43 -0
- package/dist/utils/devLog.d.ts.map +1 -0
- package/dist/utils/devLog.js +94 -0
- package/dist/utils/devLog.js.map +1 -0
- package/dist/utils/errorLogger.d.ts +27 -0
- package/dist/utils/errorLogger.d.ts.map +1 -0
- package/dist/utils/errorLogger.js +105 -0
- package/dist/utils/errorLogger.js.map +1 -0
- package/dist/utils/git.d.ts +123 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.js +400 -0
- package/dist/utils/git.js.map +1 -0
- package/dist/utils/hash.d.ts +32 -0
- package/dist/utils/hash.d.ts.map +1 -0
- package/dist/utils/hash.js +37 -0
- package/dist/utils/hash.js.map +1 -0
- package/dist/utils/id.d.ts +54 -0
- package/dist/utils/id.d.ts.map +1 -0
- package/dist/utils/id.js +96 -0
- package/dist/utils/id.js.map +1 -0
- package/dist/utils/index.d.ts +8 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +42 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +228 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/manualChangeFormatter.d.ts +8 -0
- package/dist/utils/manualChangeFormatter.d.ts.map +1 -0
- package/dist/utils/manualChangeFormatter.js +21 -0
- package/dist/utils/manualChangeFormatter.js.map +1 -0
- package/dist/utils/paramValidator.d.ts +35 -0
- package/dist/utils/paramValidator.d.ts.map +1 -0
- package/dist/utils/paramValidator.js +214 -0
- package/dist/utils/paramValidator.js.map +1 -0
- package/dist/utils/port.d.ts +7 -0
- package/dist/utils/port.d.ts.map +1 -0
- package/dist/utils/port.js +28 -0
- package/dist/utils/port.js.map +1 -0
- package/dist/utils/processManager.d.ts +53 -0
- package/dist/utils/processManager.d.ts.map +1 -0
- package/dist/utils/processManager.js +267 -0
- package/dist/utils/processManager.js.map +1 -0
- package/dist/utils/sessionLogger.d.ts +28 -0
- package/dist/utils/sessionLogger.d.ts.map +1 -0
- package/dist/utils/sessionLogger.js +142 -0
- package/dist/utils/sessionLogger.js.map +1 -0
- package/dist/utils/time.d.ts +15 -0
- package/dist/utils/time.d.ts.map +1 -0
- package/dist/utils/time.js +32 -0
- package/dist/utils/time.js.map +1 -0
- package/dist/utils/validation.d.ts +23 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +88 -0
- package/dist/utils/validation.js.map +1 -0
- package/docs//346/227/245/345/277/227/347/263/273/347/273/237.md +389 -0
- package/docs//347/224/250/346/210/267/346/211/213/345/206/214.md +1446 -0
- package/docs//347/224/250/346/210/267/346/211/213/345/206/214/344/270/216/346/212/200/346/234/257/346/214/207/345/215/227.md +873 -0
- package/package.json +94 -0
- package/plugin/README.md +141 -0
- package/plugin/agents/zero-executor.md +114 -0
- package/plugin/agents/zero-reviewer.md +133 -0
- package/plugin/docs/diagnostic-guide.md +128 -0
- package/plugin/hooks/hooks.json.deprecated +70 -0
- package/plugin/scripts/cursor-hook-entry.cjs +217 -0
- package/plugin/scripts/hook-entry.cjs +663 -0
- package/plugin/scripts/openspec-import.cjs +714 -0
- package/plugin/scripts/shared/binding.cjs +98 -0
- package/plugin/scripts/shared/config.cjs +65 -0
- package/plugin/scripts/shared/context.cjs +120 -0
- package/plugin/scripts/shared/index.cjs +34 -0
- package/plugin/scripts/shared/logger.cjs +196 -0
- package/plugin/scripts/shared/reminder.cjs +261 -0
- package/plugin/scripts/shared/utils.cjs +62 -0
- package/plugin/scripts/shared/workspace.cjs +322 -0
- package/plugin/skills/aligning-intent/SKILL.md +275 -0
- package/plugin/skills/analyzing-measurements/SKILL.md +223 -0
- package/plugin/skills/bootstrapping-workspace/SKILL.md +260 -0
- package/plugin/skills/designing-solutions/SKILL.md +363 -0
- package/plugin/skills/diagnosing-issues/SKILL.md +219 -0
- package/plugin/skills/discovering-context/SKILL.md +283 -0
- package/plugin/skills/dispatching-parent/SKILL.md +399 -0
- package/plugin/skills/executing-task/SKILL.md +340 -0
- package/plugin/skills/memo-create/SKILL.md +222 -0
- package/plugin/skills/planning-verification/SKILL.md +245 -0
- package/plugin/skills/preparing-dispatch/SKILL.md +299 -0
- package/plugin/skills/researching-tech/SKILL.md +223 -0
- package/plugin/skills/reviewing-quality/SKILL.md +354 -0
- package/plugin/skills/reviewing-spec/SKILL.md +333 -0
- package/plugin/skills/starting-info-flow/SKILL.md +196 -0
- package/web/README.md +5 -0
- package/web/dist/assets/DocsView-Bls_Vjsr.css +1 -0
- package/web/dist/assets/DocsView-Cxc0B63r.js +1447 -0
- package/web/dist/assets/HomeView-C7df9thb.js +9 -0
- package/web/dist/assets/HomeView-ufUdnfHk.css +1 -0
- package/web/dist/assets/MarkdownContent-DXp6CtSP.js +308 -0
- package/web/dist/assets/MarkdownContent-NFqiOBLH.css +1 -0
- package/web/dist/assets/NotFoundView-BYX1oZAn.css +1 -0
- package/web/dist/assets/NotFoundView-zrc0lT9q.js +1 -0
- package/web/dist/assets/WorkspaceView-BckqgNcX.js +27 -0
- package/web/dist/assets/WorkspaceView-J1dgpYMx.css +1 -0
- package/web/dist/assets/WsConfirmDialog-C1CvL4my.css +1 -0
- package/web/dist/assets/WsConfirmDialog-gLEP7uBD.js +4 -0
- package/web/dist/assets/arc-DPkKTkUT.js +1 -0
- package/web/dist/assets/architectureDiagram-VXUJARFQ-CEGpqUlZ.js +36 -0
- package/web/dist/assets/blockDiagram-VD42YOAC-Bv-mqdQH.js +122 -0
- package/web/dist/assets/c4Diagram-YG6GDRKO-DRyPatZ_.js +10 -0
- package/web/dist/assets/channel-B84mKLDZ.js +1 -0
- package/web/dist/assets/chunk-4BX2VUAB-c7DivX0u.js +1 -0
- package/web/dist/assets/chunk-55IACEB6-CGKTaLlo.js +1 -0
- package/web/dist/assets/chunk-B4BG7PRW-Czhx5Q_P.js +165 -0
- package/web/dist/assets/chunk-DI55MBZ5-CQVA7hcZ.js +220 -0
- package/web/dist/assets/chunk-FMBD7UC4-hEiPmi7V.js +15 -0
- package/web/dist/assets/chunk-QN33PNHL-rL6yYI-E.js +1 -0
- package/web/dist/assets/chunk-QZHKN3VN-BRyHBBzq.js +1 -0
- package/web/dist/assets/chunk-TZMSLE5B-D4PXmTz9.js +1 -0
- package/web/dist/assets/classDiagram-2ON5EDUG-CNn53ohi.js +1 -0
- package/web/dist/assets/classDiagram-v2-WZHVMYZB-CNn53ohi.js +1 -0
- package/web/dist/assets/cose-bilkent-S5V4N54A-BAREnRga.js +1 -0
- package/web/dist/assets/cytoscape.esm-BnkdMOzK.js +321 -0
- package/web/dist/assets/dagre-6UL2VRFP-DaYzb3MT.js +4 -0
- package/web/dist/assets/defaultLocale-C4B-KCzX.js +1 -0
- package/web/dist/assets/diagram-PSM6KHXK-BFltDqvd.js +24 -0
- package/web/dist/assets/diagram-QEK2KX5R-CR4VU2La.js +43 -0
- package/web/dist/assets/diagram-S2PKOQOG-0UfIeT-1.js +24 -0
- package/web/dist/assets/erDiagram-Q2GNP2WA-Bo17Xmng.js +60 -0
- package/web/dist/assets/flowDiagram-NV44I4VS-CzqhQp8s.js +162 -0
- package/web/dist/assets/ganttDiagram-JELNMOA3-TXwXtUcq.js +267 -0
- package/web/dist/assets/gitGraphDiagram-NY62KEGX-CoFQTy9O.js +65 -0
- package/web/dist/assets/graph-CIQcRIVd.js +1 -0
- package/web/dist/assets/index-BgLd_o_M.css +1 -0
- package/web/dist/assets/index-Cd_J3fZn.js +30 -0
- package/web/dist/assets/infoDiagram-WHAUD3N6-Dq0xXfVu.js +2 -0
- package/web/dist/assets/init-Gi6I4Gst.js +1 -0
- package/web/dist/assets/journeyDiagram-XKPGCS4Q-jIg5BOfC.js +139 -0
- package/web/dist/assets/kanban-definition-3W4ZIXB7-D2giu6aZ.js +89 -0
- package/web/dist/assets/katex-XbL3y5x-.js +261 -0
- package/web/dist/assets/layout-Bm-XCM-8.js +1 -0
- package/web/dist/assets/linear-FbekP9OZ.js +1 -0
- package/web/dist/assets/min-BrRCpYmF.js +1 -0
- package/web/dist/assets/mindmap-definition-VGOIOE7T-o-4ubbY9.js +68 -0
- package/web/dist/assets/noto-emoji-0-400-normal-BTQbhB77.woff +0 -0
- package/web/dist/assets/noto-emoji-0-400-normal-DHdy6Uhy.woff2 +0 -0
- package/web/dist/assets/noto-emoji-1-400-normal-0IvkdXBB.woff +0 -0
- package/web/dist/assets/noto-emoji-1-400-normal-BY9OovbM.woff2 +0 -0
- package/web/dist/assets/noto-emoji-10-400-normal-D9w4QCof.woff2 +0 -0
- package/web/dist/assets/noto-emoji-10-400-normal-DtCumcZR.woff +0 -0
- package/web/dist/assets/noto-emoji-11-400-normal-BboTlyvx.woff +0 -0
- package/web/dist/assets/noto-emoji-12-400-normal-BB5pgBKj.woff2 +0 -0
- package/web/dist/assets/noto-emoji-12-400-normal-g186qhiA.woff +0 -0
- package/web/dist/assets/noto-emoji-2-400-normal-BKCR1azW.woff2 +0 -0
- package/web/dist/assets/noto-emoji-2-400-normal-BYH0KhDr.woff +0 -0
- package/web/dist/assets/noto-emoji-3-400-normal-CnPTUeEK.woff +0 -0
- package/web/dist/assets/noto-emoji-3-400-normal-TrTb2VQM.woff2 +0 -0
- package/web/dist/assets/noto-emoji-4-400-normal-BxD0KVdj.woff +0 -0
- package/web/dist/assets/noto-emoji-4-400-normal-s_n9EyG1.woff2 +0 -0
- package/web/dist/assets/noto-emoji-5-400-normal-C190AIxR.woff +0 -0
- package/web/dist/assets/noto-emoji-5-400-normal-Ctfx4xc6.woff2 +0 -0
- package/web/dist/assets/noto-emoji-6-400-normal-DlXlXWt7.woff +0 -0
- package/web/dist/assets/noto-emoji-6-400-normal-NzsjD754.woff2 +0 -0
- package/web/dist/assets/noto-emoji-7-400-normal-BHP8KeA6.woff2 +0 -0
- package/web/dist/assets/noto-emoji-7-400-normal-CtuKhtAZ.woff +0 -0
- package/web/dist/assets/noto-emoji-8-400-normal-DR49ZFe7.woff +0 -0
- package/web/dist/assets/noto-emoji-8-400-normal-Dvmkf6b2.woff2 +0 -0
- package/web/dist/assets/noto-emoji-9-400-normal-BeHJQ2iK.woff2 +0 -0
- package/web/dist/assets/noto-emoji-9-400-normal-BlXmCgeQ.woff +0 -0
- package/web/dist/assets/ordinal-Cboi1Yqb.js +1 -0
- package/web/dist/assets/pieDiagram-ADFJNKIX-C45wSpld.js +30 -0
- package/web/dist/assets/quadrantDiagram-AYHSOK5B-tv-_fe-W.js +7 -0
- package/web/dist/assets/reduce-CoLNNlNb.js +1 -0
- package/web/dist/assets/requirementDiagram-UZGBJVZJ-Dn6PDfkL.js +64 -0
- package/web/dist/assets/sankeyDiagram-TZEHDZUN-CbXTZAsG.js +10 -0
- package/web/dist/assets/sequenceDiagram-WL72ISMW-B-o1CUJ5.js +145 -0
- package/web/dist/assets/stateDiagram-FKZM4ZOC-hzrupXQi.js +1 -0
- package/web/dist/assets/stateDiagram-v2-4FDKWEC3-DN-c2M96.js +1 -0
- package/web/dist/assets/timeline-definition-IT6M3QCI-R5SP9GDo.js +61 -0
- package/web/dist/assets/treemap-KMMF4GRG-Pg9KlUOt.js +128 -0
- package/web/dist/assets/xychartDiagram-PRI3JC2R-C3vbJhd1.js +7 -0
- package/web/dist/favicon.svg +13 -0
- package/web/dist/index.html +17 -0
- package//351/205/215/347/275/256/346/226/271/345/274/217.md +330 -0
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dispatching-parent
|
|
3
|
+
description: Use when your node has been upgraded to a dispatch parent via dispatch_node. Coordinates dispatch execution flow as a parent orchestrator.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Dispatching Parent
|
|
7
|
+
|
|
8
|
+
## Announcement (MANDATORY)
|
|
9
|
+
|
|
10
|
+
Before executing this skill, you MUST announce to the user:
|
|
11
|
+
|
|
12
|
+
「我将使用 **派发协调** 技能来协调子代理执行、分析结果、做出决策。」
|
|
13
|
+
|
|
14
|
+
This creates a commitment checkpoint. Proceed only after announcing.
|
|
15
|
+
|
|
16
|
+
## ⚠️ CRITICAL: Complete the Full Flow
|
|
17
|
+
|
|
18
|
+
**YOU MUST COMPLETE THE ENTIRE DISPATCH FLOW:**
|
|
19
|
+
1. Dispatch exec node → Wait for result
|
|
20
|
+
2. **Dispatch spec node** → Wait for result (DO NOT SKIP!)
|
|
21
|
+
3. (Optional) Dispatch quality node
|
|
22
|
+
4. Complete parent node
|
|
23
|
+
|
|
24
|
+
**NEVER stop after exec completes. ALWAYS dispatch spec for verification.**
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Core Thinking
|
|
29
|
+
|
|
30
|
+
**Orchestrate** - You are no longer an executor. You coordinate subagents, analyze results, and make decisions based on their outcomes.
|
|
31
|
+
|
|
32
|
+
## Role Transition
|
|
33
|
+
|
|
34
|
+
When `dispatch_node` upgrades your node:
|
|
35
|
+
- **Before**: execution node (do the work yourself)
|
|
36
|
+
- **After**: planning node (orchestrate subagents to do the work)
|
|
37
|
+
|
|
38
|
+
Your responsibilities shift from implementation to:
|
|
39
|
+
- Preparing clear requirements for subagents
|
|
40
|
+
- Dispatching tasks via Task tool
|
|
41
|
+
- Analyzing execution results
|
|
42
|
+
- Handling failures with context enrichment
|
|
43
|
+
- Summarizing outcomes for the parent node
|
|
44
|
+
|
|
45
|
+
## Dispatch Flow Overview
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
dispatch_node (upgrade)
|
|
49
|
+
|
|
|
50
|
+
v
|
|
51
|
+
dispatch_create (create children: exec + spec + [quality])
|
|
52
|
+
|
|
|
53
|
+
v
|
|
54
|
+
Dispatch exec node (Task tool + zero-executor)
|
|
55
|
+
|
|
|
56
|
+
v
|
|
57
|
+
Handle exec result
|
|
58
|
+
|-- Success --> Dispatch spec node (Task tool + zero-reviewer)
|
|
59
|
+
|-- Failure --> Analyze, enrich context, retry or escalate
|
|
60
|
+
|
|
|
61
|
+
v
|
|
62
|
+
Handle spec result
|
|
63
|
+
|-- Pass --> (Optional) Dispatch quality node
|
|
64
|
+
|-- Fail --> Analyze, fix requirements, re-dispatch exec
|
|
65
|
+
|
|
|
66
|
+
v
|
|
67
|
+
(Optional) Handle quality result
|
|
68
|
+
|
|
|
69
|
+
v
|
|
70
|
+
Summarize all results --> Complete parent node
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## SOP
|
|
74
|
+
|
|
75
|
+
### 1. Prepare Dispatch Children
|
|
76
|
+
|
|
77
|
+
**Goal**: Create well-defined child nodes for execution and review.
|
|
78
|
+
|
|
79
|
+
**Call dispatch_create**:
|
|
80
|
+
```typescript
|
|
81
|
+
dispatch_create({
|
|
82
|
+
workspaceId: "...",
|
|
83
|
+
parentId: "[current-node-id]", // Your node ID
|
|
84
|
+
exec: {
|
|
85
|
+
requirement: "[Clear, specific task description]",
|
|
86
|
+
acceptanceCriteria: [
|
|
87
|
+
{ when: "[condition]", then: "[expected result]" },
|
|
88
|
+
// ... more criteria
|
|
89
|
+
]
|
|
90
|
+
},
|
|
91
|
+
includeQuality: true // Optional, default true
|
|
92
|
+
})
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**Requirement writing principles**:
|
|
96
|
+
- Be specific about WHAT to change
|
|
97
|
+
- List affected files explicitly
|
|
98
|
+
- Define technical approach if constrained
|
|
99
|
+
- State what NOT to do (constraints)
|
|
100
|
+
|
|
101
|
+
**Acceptance criteria principles**:
|
|
102
|
+
- Each criterion must be independently verifiable
|
|
103
|
+
- Cover main functionality
|
|
104
|
+
- Include edge cases and error scenarios
|
|
105
|
+
- Use WHEN/THEN format
|
|
106
|
+
|
|
107
|
+
**Output**: Created child nodes (execId, specId, qualityId)
|
|
108
|
+
|
|
109
|
+
### 2. Dispatch Exec Node
|
|
110
|
+
|
|
111
|
+
**Goal**: Execute the implementation task via subagent.
|
|
112
|
+
|
|
113
|
+
**Use Task tool**:
|
|
114
|
+
```typescript
|
|
115
|
+
Task({
|
|
116
|
+
subagent_type: "zero-executor",
|
|
117
|
+
description: "执行派发任务",
|
|
118
|
+
prompt: actionRequired.data.execPrompt // 完整复制 dispatch_create 返回的 execPrompt
|
|
119
|
+
})
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Important**:
|
|
123
|
+
- Pass the COMPLETE prompt from `actionRequired.data.execPrompt`
|
|
124
|
+
- Do NOT modify or simplify the prompt
|
|
125
|
+
- Wait for Task completion before proceeding
|
|
126
|
+
|
|
127
|
+
**Output**: Exec node execution result (success/failure with conclusion)
|
|
128
|
+
|
|
129
|
+
### 3. Handle Exec Result
|
|
130
|
+
|
|
131
|
+
**Goal**: Process execution outcome and determine next steps.
|
|
132
|
+
|
|
133
|
+
**On Success**:
|
|
134
|
+
- Log success: "exec node completed successfully"
|
|
135
|
+
- Proceed to dispatch spec node
|
|
136
|
+
|
|
137
|
+
**On Failure**:
|
|
138
|
+
- Analyze the failure reason from conclusion
|
|
139
|
+
- Categorize failure type:
|
|
140
|
+
- `info_insufficient`: Missing information
|
|
141
|
+
- `scope_too_large`: Task needs splitting
|
|
142
|
+
- `execution_error`: Technical error
|
|
143
|
+
- `blocked`: External dependency
|
|
144
|
+
|
|
145
|
+
**Failure handling strategies**:
|
|
146
|
+
|
|
147
|
+
| Failure Type | Action |
|
|
148
|
+
|--------------|--------|
|
|
149
|
+
| `info_insufficient` | Enrich requirement, add references, retry |
|
|
150
|
+
| `scope_too_large` | Split into smaller tasks (recreate children) |
|
|
151
|
+
| `execution_error` | Analyze root cause, adjust approach, retry |
|
|
152
|
+
| `blocked` | Escalate to user for resolution |
|
|
153
|
+
|
|
154
|
+
**Retry logic**:
|
|
155
|
+
- Maximum 3 attempts per exec node
|
|
156
|
+
- Each retry should ADD context, not replace
|
|
157
|
+
- Log what was added for each retry
|
|
158
|
+
|
|
159
|
+
**Output**: Decision to proceed or retry/escalate
|
|
160
|
+
|
|
161
|
+
### 4. Dispatch Spec Node
|
|
162
|
+
|
|
163
|
+
**Goal**: Verify execution meets requirements.
|
|
164
|
+
|
|
165
|
+
**Use Task tool**:
|
|
166
|
+
```typescript
|
|
167
|
+
Task({
|
|
168
|
+
subagent_type: "zero-reviewer",
|
|
169
|
+
description: "规格审查",
|
|
170
|
+
prompt: actionRequired.data.specPrompt // 完整复制 dispatch_create 返回的 specPrompt
|
|
171
|
+
})
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
**Important**:
|
|
175
|
+
- Pass the COMPLETE prompt from `actionRequired.data.specPrompt`
|
|
176
|
+
- Spec prompt 已包含 role、acceptance criteria 和完整指令
|
|
177
|
+
- Do NOT modify or simplify the prompt
|
|
178
|
+
|
|
179
|
+
**Key points**:
|
|
180
|
+
- Spec review is INDEPENDENT verification
|
|
181
|
+
- Spec does NOT trust exec's conclusion
|
|
182
|
+
- Spec verifies against original requirements
|
|
183
|
+
|
|
184
|
+
**Output**: Spec review result (pass/fail with findings)
|
|
185
|
+
|
|
186
|
+
### 5. Handle Spec Result
|
|
187
|
+
|
|
188
|
+
**Goal**: Process review outcome.
|
|
189
|
+
|
|
190
|
+
**On Pass**:
|
|
191
|
+
- Log success
|
|
192
|
+
- Decide whether to dispatch quality review
|
|
193
|
+
- If no quality review needed, proceed to completion
|
|
194
|
+
|
|
195
|
+
**On Fail**:
|
|
196
|
+
- Analyze spec findings
|
|
197
|
+
- Identify what was missed/wrong
|
|
198
|
+
- Update requirements with clarifications
|
|
199
|
+
- Re-dispatch exec node
|
|
200
|
+
- Do NOT simply retry with same requirements
|
|
201
|
+
|
|
202
|
+
**Output**: Decision to proceed, retry exec, or escalate
|
|
203
|
+
|
|
204
|
+
### 6. Dispatch Quality Node (Optional)
|
|
205
|
+
|
|
206
|
+
**Goal**: Verify code quality and best practices.
|
|
207
|
+
|
|
208
|
+
**When to include**:
|
|
209
|
+
- Complex implementations
|
|
210
|
+
- Critical code paths
|
|
211
|
+
- New patterns being introduced
|
|
212
|
+
- User explicitly requested
|
|
213
|
+
|
|
214
|
+
**When to skip**:
|
|
215
|
+
- Simple bug fixes
|
|
216
|
+
- Configuration changes
|
|
217
|
+
- Documentation updates
|
|
218
|
+
|
|
219
|
+
**Use Task tool**:
|
|
220
|
+
```typescript
|
|
221
|
+
Task({
|
|
222
|
+
subagent_type: "zero-reviewer",
|
|
223
|
+
description: "质量审查",
|
|
224
|
+
prompt: actionRequired.data.qualityPrompt // 完整复制 dispatch_create 返回的 qualityPrompt
|
|
225
|
+
})
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
**Important**:
|
|
229
|
+
- Pass the COMPLETE prompt from `actionRequired.data.qualityPrompt`
|
|
230
|
+
- Quality prompt 已包含 role 和完整指令
|
|
231
|
+
- 如果 `qualityPrompt` 为空(includeQuality=false),跳过此步
|
|
232
|
+
|
|
233
|
+
**Output**: Quality review result
|
|
234
|
+
|
|
235
|
+
### 7. Complete Parent Node
|
|
236
|
+
|
|
237
|
+
**Goal**: Summarize all outcomes and finalize.
|
|
238
|
+
|
|
239
|
+
**Compile conclusion**:
|
|
240
|
+
```
|
|
241
|
+
## Dispatch Summary
|
|
242
|
+
|
|
243
|
+
**Exec**: [execId] - [status]
|
|
244
|
+
**Spec**: [specId] - [status]
|
|
245
|
+
**Quality**: [qualityId] - [status] (if applicable)
|
|
246
|
+
|
|
247
|
+
## What Was Done
|
|
248
|
+
- [Summary of implementation]
|
|
249
|
+
|
|
250
|
+
## Files Changed
|
|
251
|
+
- [List of files modified]
|
|
252
|
+
|
|
253
|
+
## Verification
|
|
254
|
+
- Spec Review: [PASS/FAIL]
|
|
255
|
+
- Quality Review: [PASS/FAIL/SKIPPED]
|
|
256
|
+
|
|
257
|
+
## Notes
|
|
258
|
+
- [Any observations for parent node]
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
**Call node_transition**:
|
|
262
|
+
```typescript
|
|
263
|
+
node_transition({
|
|
264
|
+
workspaceId: "...",
|
|
265
|
+
nodeId: "[your-node-id]",
|
|
266
|
+
action: "complete",
|
|
267
|
+
conclusion: "[compiled conclusion]"
|
|
268
|
+
})
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
## Checklist
|
|
272
|
+
|
|
273
|
+
### Preparation
|
|
274
|
+
- [ ] Requirements are clear and specific
|
|
275
|
+
- [ ] Acceptance criteria cover key scenarios
|
|
276
|
+
- [ ] dispatch_create called successfully
|
|
277
|
+
- [ ] All child node IDs recorded
|
|
278
|
+
|
|
279
|
+
### Execution
|
|
280
|
+
- [ ] Exec node dispatched with complete prompt
|
|
281
|
+
- [ ] Exec result analyzed
|
|
282
|
+
- [ ] Failures handled appropriately
|
|
283
|
+
|
|
284
|
+
### Verification
|
|
285
|
+
- [ ] Spec node dispatched
|
|
286
|
+
- [ ] Spec result analyzed
|
|
287
|
+
- [ ] Quality node dispatched (if needed)
|
|
288
|
+
|
|
289
|
+
### Completion
|
|
290
|
+
- [ ] All child nodes processed
|
|
291
|
+
- [ ] Conclusion compiled
|
|
292
|
+
- [ ] Parent node completed
|
|
293
|
+
|
|
294
|
+
## Failure Handling Decision Tree
|
|
295
|
+
|
|
296
|
+
```
|
|
297
|
+
Failure received
|
|
298
|
+
|
|
|
299
|
+
├── Is it info_insufficient?
|
|
300
|
+
| Yes --> Can you provide more context?
|
|
301
|
+
| Yes --> Add context, retry
|
|
302
|
+
| No --> Escalate to user
|
|
303
|
+
|
|
|
304
|
+
├── Is it scope_too_large?
|
|
305
|
+
| Yes --> Can you split the task?
|
|
306
|
+
| Yes --> Create new smaller children
|
|
307
|
+
| No --> Escalate to user
|
|
308
|
+
|
|
|
309
|
+
├── Is it execution_error?
|
|
310
|
+
| Yes --> Is root cause understood?
|
|
311
|
+
| Yes --> Adjust approach, retry
|
|
312
|
+
| No --> Escalate to user
|
|
313
|
+
|
|
|
314
|
+
└── Is it blocked?
|
|
315
|
+
Yes --> Escalate to user immediately
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
## Context Enrichment Strategies
|
|
319
|
+
|
|
320
|
+
When retrying after failure:
|
|
321
|
+
|
|
322
|
+
1. **Add missing references**
|
|
323
|
+
```typescript
|
|
324
|
+
node_reference({
|
|
325
|
+
nodeId: "[exec-node-id]",
|
|
326
|
+
targetPath: "[relevant-file]",
|
|
327
|
+
action: "add",
|
|
328
|
+
description: "[why this helps]"
|
|
329
|
+
})
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
2. **Update requirement with clarifications**
|
|
333
|
+
```typescript
|
|
334
|
+
node_update({
|
|
335
|
+
workspaceId: "...",
|
|
336
|
+
nodeId: "[exec-node-id]",
|
|
337
|
+
requirement: "[original requirement]\n\n## Additional Context\n[new info]"
|
|
338
|
+
})
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
3. **Add note for specific guidance**
|
|
342
|
+
```typescript
|
|
343
|
+
node_update({
|
|
344
|
+
workspaceId: "...",
|
|
345
|
+
nodeId: "[exec-node-id]",
|
|
346
|
+
note: "[specific hints for the executor]"
|
|
347
|
+
})
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
## Recording to Workspace
|
|
351
|
+
|
|
352
|
+
**Principle**: Log decisions and state transitions for traceability.
|
|
353
|
+
|
|
354
|
+
### What to Log
|
|
355
|
+
|
|
356
|
+
| Event | Log Entry |
|
|
357
|
+
|-------|-----------|
|
|
358
|
+
| Children created | "Created dispatch children: exec=[id], spec=[id], quality=[id]" |
|
|
359
|
+
| Dispatch started | "Dispatching exec node [id]" |
|
|
360
|
+
| Result received | "Exec result: [success/failure] - [brief reason]" |
|
|
361
|
+
| Retry decision | "Retry #[n]: adding [what context]" |
|
|
362
|
+
| Spec result | "Spec review: [PASS/FAIL]" |
|
|
363
|
+
| Completion | "All children complete, summarizing" |
|
|
364
|
+
|
|
365
|
+
---
|
|
366
|
+
|
|
367
|
+
## Red Flags
|
|
368
|
+
|
|
369
|
+
1. **Blind retry** - Retrying without adding context
|
|
370
|
+
2. **Skipping spec** - Completing without spec verification
|
|
371
|
+
3. **Vague requirements** - Dispatching with unclear tasks
|
|
372
|
+
4. **Lost context** - Not passing full prompt to Task tool
|
|
373
|
+
|
|
374
|
+
## Mandatory Rules
|
|
375
|
+
|
|
376
|
+
1. **MUST complete full flow** - NEVER stop after exec, ALWAYS dispatch spec
|
|
377
|
+
2. **MUST pass complete prompt** - Modifying/simplifying prompt breaks context
|
|
378
|
+
3. **MUST add context on retry** - Same params on retry = same failure
|
|
379
|
+
4. **MUST limit retries to 3** - After 3 failures, escalate to user
|
|
380
|
+
5. **NEVER skip spec verification** - Exec success alone is not enough
|
|
381
|
+
|
|
382
|
+
## Anti-Patterns
|
|
383
|
+
|
|
384
|
+
| Pattern | Wrong | Right |
|
|
385
|
+
|---------|-------|-------|
|
|
386
|
+
| **Impatient dispatch** | Skip requirement refinement | Invest time in clear requirements |
|
|
387
|
+
| **Retry without learning** | Same params on retry | Add context based on failure |
|
|
388
|
+
| **Trust exec blindly** | Skip spec on exec success | Always run spec verification |
|
|
389
|
+
| **Infinite retry** | Keep retrying indefinitely | Max 3 attempts, then escalate |
|
|
390
|
+
|
|
391
|
+
## Common Rationalizations
|
|
392
|
+
|
|
393
|
+
| Excuse | Why Wrong | Correct Action |
|
|
394
|
+
|--------|-----------|----------------|
|
|
395
|
+
| "Exec succeeded, we're done" | Exec success != verified correctness | ALWAYS dispatch spec verification |
|
|
396
|
+
| "Same retry should eventually work" | Same input = same output | Add context to change outcome |
|
|
397
|
+
| "Just one more retry" | Infinite retries waste resources | Max 3, then escalate |
|
|
398
|
+
| "I'll simplify the prompt to be clearer" | Simplification loses critical context | Pass COMPLETE prompt |
|
|
399
|
+
| "Spec review slows us down" | Skipping verification = shipping bugs | Verification is non-negotiable |
|