triflux 10.0.0 → 10.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/CLAUDE.md +171 -0
- package/README.md +32 -15
- package/bin/triflux.mjs +62 -5
- package/hooks/agent-route-guard.mjs +109 -0
- package/hooks/cross-review-tracker.mjs +122 -0
- package/hooks/error-context.mjs +148 -0
- package/hooks/hook-adaptive-collector.mjs +86 -0
- package/hooks/hook-manager.mjs +365 -0
- package/hooks/hook-orchestrator.mjs +312 -0
- package/hooks/hook-registry.json +246 -0
- package/hooks/hooks.json +89 -0
- package/hooks/keyword-rules.json +574 -0
- package/hooks/lib/resolve-root.mjs +59 -0
- package/hooks/mcp-config-watcher.mjs +80 -0
- package/hooks/pipeline-stop.mjs +76 -0
- package/hooks/safety-guard.mjs +169 -0
- package/hooks/subagent-verifier.mjs +80 -0
- package/hub/account-broker.mjs +251 -0
- package/hub/adaptive-diagnostic.mjs +323 -0
- package/hub/adaptive-inject.mjs +186 -0
- package/hub/adaptive-memory.mjs +163 -0
- package/hub/adaptive.mjs +143 -0
- package/hub/assign-callbacks.mjs +133 -0
- package/hub/bridge.mjs +799 -0
- package/hub/cli-adapter-base.mjs +280 -0
- package/hub/codex-adapter.mjs +199 -0
- package/hub/codex-compat.mjs +11 -0
- package/hub/codex-preflight.mjs +166 -0
- package/hub/delegator/contracts.mjs +37 -0
- package/hub/delegator/index.mjs +14 -0
- package/hub/delegator/schema/delegator-tools.schema.json +250 -0
- package/hub/delegator/service.mjs +307 -0
- package/hub/delegator/tool-definitions.mjs +35 -0
- package/hub/fullcycle.mjs +96 -0
- package/hub/gemini-adapter.mjs +180 -0
- package/hub/hitl.mjs +143 -0
- package/hub/intent.mjs +193 -0
- package/hub/lib/cache-guard.mjs +114 -0
- package/hub/lib/known-errors.json +72 -0
- package/hub/lib/memory-store.mjs +748 -0
- package/hub/lib/process-utils.mjs +361 -0
- package/hub/lib/ssh-command.mjs +211 -0
- package/hub/lib/ssh-retry.mjs +59 -0
- package/hub/lib/uuidv7.mjs +44 -0
- package/hub/memory-doctor.mjs +480 -0
- package/hub/middleware/request-logger.mjs +161 -0
- package/hub/paths.mjs +30 -0
- package/hub/pipe.mjs +664 -0
- package/hub/pipeline/gates/confidence.mjs +56 -0
- package/hub/pipeline/gates/consensus.mjs +94 -0
- package/hub/pipeline/gates/index.mjs +5 -0
- package/hub/pipeline/gates/selfcheck.mjs +82 -0
- package/hub/pipeline/index.mjs +318 -0
- package/hub/pipeline/state.mjs +191 -0
- package/hub/pipeline/transitions.mjs +124 -0
- package/hub/platform.mjs +225 -0
- package/hub/public/dashboard.html +355 -0
- package/hub/public/tray-icon.ico +0 -0
- package/hub/public/tray-icon.png +0 -0
- package/hub/quality/deslop.mjs +253 -0
- package/hub/reflexion.mjs +372 -0
- package/hub/research.mjs +146 -0
- package/hub/router.mjs +791 -0
- package/hub/routing/complexity.mjs +166 -0
- package/hub/routing/index.mjs +117 -0
- package/hub/routing/q-learning.mjs +336 -0
- package/hub/schema.sql +148 -0
- package/hub/server.mjs +1264 -0
- package/hub/session-fingerprint.mjs +352 -0
- package/hub/state.mjs +258 -0
- package/hub/store-adapter.mjs +118 -0
- package/hub/store.mjs +857 -0
- package/hub/team/agent-map.json +11 -0
- package/hub/team/ansi.mjs +379 -0
- package/hub/team/backend.mjs +90 -0
- package/hub/team/cli/commands/attach.mjs +37 -0
- package/hub/team/cli/commands/control.mjs +43 -0
- package/hub/team/cli/commands/debug.mjs +74 -0
- package/hub/team/cli/commands/focus.mjs +53 -0
- package/hub/team/cli/commands/interrupt.mjs +36 -0
- package/hub/team/cli/commands/kill.mjs +37 -0
- package/hub/team/cli/commands/list.mjs +24 -0
- package/hub/team/cli/commands/send.mjs +37 -0
- package/hub/team/cli/commands/start/index.mjs +106 -0
- package/hub/team/cli/commands/start/parse-args.mjs +130 -0
- package/hub/team/cli/commands/start/start-headless.mjs +109 -0
- package/hub/team/cli/commands/start/start-in-process.mjs +40 -0
- package/hub/team/cli/commands/start/start-mux.mjs +73 -0
- package/hub/team/cli/commands/start/start-wt.mjs +69 -0
- package/hub/team/cli/commands/status.mjs +87 -0
- package/hub/team/cli/commands/stop.mjs +31 -0
- package/hub/team/cli/commands/task.mjs +30 -0
- package/hub/team/cli/commands/tasks.mjs +13 -0
- package/hub/team/cli/help.mjs +42 -0
- package/hub/team/cli/index.mjs +41 -0
- package/hub/team/cli/manifest.mjs +29 -0
- package/hub/team/cli/render.mjs +30 -0
- package/hub/team/cli/services/attach-fallback.mjs +54 -0
- package/hub/team/cli/services/hub-client.mjs +227 -0
- package/hub/team/cli/services/member-selector.mjs +30 -0
- package/hub/team/cli/services/native-control.mjs +117 -0
- package/hub/team/cli/services/runtime-mode.mjs +62 -0
- package/hub/team/cli/services/state-store.mjs +48 -0
- package/hub/team/cli/services/task-model.mjs +30 -0
- package/hub/team/conductor-mesh-bridge.mjs +121 -0
- package/hub/team/conductor.mjs +671 -0
- package/hub/team/dashboard-anchor.mjs +14 -0
- package/hub/team/dashboard-layout.mjs +33 -0
- package/hub/team/dashboard-open.mjs +153 -0
- package/hub/team/dashboard.mjs +274 -0
- package/hub/team/event-log.mjs +76 -0
- package/hub/team/handoff.mjs +303 -0
- package/hub/team/headless.mjs +1156 -0
- package/hub/team/health-probe.mjs +272 -0
- package/hub/team/launcher-template.mjs +95 -0
- package/hub/team/lead-control.mjs +104 -0
- package/hub/team/native-supervisor.mjs +392 -0
- package/hub/team/native.mjs +649 -0
- package/hub/team/nativeProxy.mjs +688 -0
- package/hub/team/notify.mjs +293 -0
- package/hub/team/orchestrator.mjs +161 -0
- package/hub/team/pane.mjs +153 -0
- package/hub/team/process-cleanup.mjs +342 -0
- package/hub/team/psmux.mjs +1354 -0
- package/hub/team/remote-probe.mjs +276 -0
- package/hub/team/remote-session.mjs +299 -0
- package/hub/team/remote-watcher.mjs +478 -0
- package/hub/team/routing.mjs +223 -0
- package/hub/team/session-sync.mjs +169 -0
- package/hub/team/session.mjs +611 -0
- package/hub/team/shared.mjs +13 -0
- package/hub/team/staleState.mjs +361 -0
- package/hub/team/swarm-hypervisor.mjs +589 -0
- package/hub/team/swarm-locks.mjs +204 -0
- package/hub/team/swarm-planner.mjs +260 -0
- package/hub/team/swarm-reconciler.mjs +137 -0
- package/hub/team/tui-lite.mjs +380 -0
- package/hub/team/tui-remote-adapter.mjs +393 -0
- package/hub/team/tui-viewer.mjs +463 -0
- package/hub/team/tui.mjs +1449 -0
- package/hub/team/worktree-lifecycle.mjs +193 -0
- package/hub/team/wt-manager.mjs +407 -0
- package/hub/team/wt-templates.json +43 -0
- package/hub/team-bridge.mjs +27 -0
- package/hub/token-mode.mjs +224 -0
- package/hub/tools.mjs +636 -0
- package/hub/tray.mjs +376 -0
- package/hub/workers/claude-worker.mjs +475 -0
- package/hub/workers/codex-mcp.mjs +507 -0
- package/hub/workers/delegator-mcp.mjs +1076 -0
- package/hub/workers/factory.mjs +21 -0
- package/hub/workers/gemini-worker.mjs +374 -0
- package/hub/workers/interface.mjs +52 -0
- package/hub/workers/worker-utils.mjs +104 -0
- package/hud/colors.mjs +88 -0
- package/hud/constants.mjs +88 -0
- package/hud/context-monitor.mjs +403 -0
- package/hud/hud-qos-status.mjs +210 -0
- package/hud/providers/claude.mjs +314 -0
- package/hud/providers/codex.mjs +151 -0
- package/hud/providers/gemini.mjs +320 -0
- package/hud/renderers.mjs +442 -0
- package/hud/terminal.mjs +140 -0
- package/hud/utils.mjs +313 -0
- package/mesh/index.mjs +63 -0
- package/mesh/mesh-budget.mjs +128 -0
- package/mesh/mesh-heartbeat.mjs +100 -0
- package/mesh/mesh-protocol.mjs +96 -0
- package/mesh/mesh-queue.mjs +165 -0
- package/mesh/mesh-registry.mjs +78 -0
- package/mesh/mesh-router.mjs +76 -0
- package/package.json +8 -1
- package/references/hosts.json +33 -0
- package/scripts/__tests__/gen-skill-docs.test.mjs +87 -0
- package/scripts/__tests__/keyword-detector.test.mjs +234 -0
- package/scripts/__tests__/mcp-guard-engine.test.mjs +118 -0
- package/scripts/__tests__/remote-spawn-transfer.test.mjs +117 -0
- package/scripts/__tests__/remote-spawn.test.mjs +92 -0
- package/scripts/__tests__/skill-template.test.mjs +193 -0
- package/scripts/__tests__/smoke.test.mjs +34 -0
- package/scripts/cache-buildup.mjs +30 -0
- package/scripts/cache-doctor.mjs +149 -0
- package/scripts/cache-warmup.mjs +557 -0
- package/scripts/claudemd-sync.mjs +148 -0
- package/scripts/cli-route.sh +3 -0
- package/scripts/completions/tfx.bash +47 -0
- package/scripts/completions/tfx.fish +44 -0
- package/scripts/completions/tfx.zsh +83 -0
- package/scripts/cross-review-gate.mjs +126 -0
- package/scripts/cross-review-tracker.mjs +238 -0
- package/scripts/gen-skill-docs.mjs +111 -0
- package/scripts/headless-guard-fast.sh +21 -0
- package/scripts/headless-guard.mjs +360 -0
- package/scripts/hub-ensure.mjs +120 -0
- package/scripts/keyword-detector.mjs +272 -0
- package/scripts/keyword-rules-expander.mjs +521 -0
- package/scripts/lib/claudemd-scanner.mjs +218 -0
- package/scripts/lib/context.mjs +67 -0
- package/scripts/lib/cross-review-utils.mjs +51 -0
- package/scripts/lib/env-probe.mjs +241 -0
- package/scripts/lib/gemini-profiles.mjs +85 -0
- package/scripts/lib/handoff.mjs +171 -0
- package/scripts/lib/hook-utils.mjs +14 -0
- package/scripts/lib/keyword-rules.mjs +166 -0
- package/scripts/lib/logger.mjs +105 -0
- package/scripts/lib/mcp-filter.mjs +739 -0
- package/scripts/lib/mcp-guard-engine.mjs +954 -0
- package/scripts/lib/mcp-manifest.mjs +79 -0
- package/scripts/lib/mcp-server-catalog.mjs +118 -0
- package/scripts/lib/psmux-info.mjs +119 -0
- package/scripts/lib/remote-spawn-transfer.mjs +196 -0
- package/scripts/lib/skill-template.mjs +326 -0
- package/scripts/mcp-check.mjs +237 -0
- package/scripts/mcp-cleanup.ps1 +17 -0
- package/scripts/mcp-gateway-config.mjs +207 -0
- package/scripts/mcp-gateway-ensure.mjs +85 -0
- package/scripts/mcp-gateway-integration-test.mjs +228 -0
- package/scripts/mcp-gateway-start.mjs +226 -0
- package/scripts/mcp-gateway-start.ps1 +141 -0
- package/scripts/mcp-gateway-verify.mjs +77 -0
- package/scripts/mcp-safety-guard.mjs +44 -0
- package/scripts/notion-read.mjs +556 -0
- package/scripts/pack.mjs +295 -0
- package/scripts/preflight-cache.mjs +69 -0
- package/scripts/preinstall.mjs +96 -0
- package/scripts/remote-spawn.mjs +1376 -0
- package/scripts/run.cjs +79 -0
- package/scripts/session-spawn-helper.mjs +185 -0
- package/scripts/setup.mjs +1178 -0
- package/scripts/test-lock.mjs +71 -0
- package/scripts/test-tfx-route-no-claude-native.mjs +57 -0
- package/scripts/tfx-batch-stats.mjs +96 -0
- package/scripts/tfx-gate-activate.mjs +89 -0
- package/scripts/tfx-route-post.mjs +505 -0
- package/scripts/tfx-route-worker.mjs +223 -0
- package/scripts/tfx-route.sh +2014 -0
- package/scripts/tmp-cleanup.mjs +103 -0
- package/scripts/token-snapshot.mjs +575 -0
- package/skills/tfx-auto/SKILL.md.tmpl +2 -3
- package/skills/tfx-autoresearch/SKILL.md +6 -5
- package/skills/tfx-codex/SKILL.md.tmpl +2 -3
- package/skills/tfx-codex-swarm-workspace/iteration-1/benchmark.json +33 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/eval_metadata.json +42 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/grading.json +11 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/analysis.md +87 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/classification.md +35 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/commands.sh +275 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/routing.md +56 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/timing.json +5 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/grading.json +11 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/analysis.md +92 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/classification.md +71 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/commands.sh +264 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/routing.md +113 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/timing.json +5 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/eval_metadata.json +32 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/grading.json +9 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/analysis.md +96 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/classification.md +38 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/commands.sh +151 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/routing.md +51 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/timing.json +5 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/grading.json +9 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/analysis.md +127 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/classification.md +57 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/commands.sh +129 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/routing.md +84 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/timing.json +5 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/eval_metadata.json +27 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/grading.json +8 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/analysis.md +98 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/classification.md +65 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/commands.sh +123 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/routing.md +66 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/timing.json +5 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/grading.json +8 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/analysis.md +88 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/classification.md +40 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/commands.sh +130 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/routing.md +61 -0
- package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/timing.json +5 -0
- package/skills/tfx-deep-interview/SKILL.md +1 -2
- package/skills/tfx-plan/SKILL.md.tmpl +2 -3
- package/skills/tfx-psmux-rules/SKILL.md +11 -2
- package/skills/tfx-qa/SKILL.md.tmpl +2 -3
- package/skills/tfx-remote-spawn/SKILL.md +8 -11
- package/skills/tfx-research/SKILL.md.tmpl +2 -3
- package/skills/tfx-review/SKILL.md.tmpl +2 -3
- package/skills/tfx-workspace/async-tests/run-tests.sh +203 -0
- package/skills/tfx-workspace/evals/evals.json +79 -0
- package/skills/tfx-workspace/iteration-1/benchmark.json +162 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/eval_metadata.json +11 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/old_skill/grading.json +9 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/old_skill/outputs/analysis.md +154 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/with_skill/grading.json +9 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/with_skill/outputs/analysis.md +126 -0
- package/skills/tfx-workspace/iteration-1/codex-gemini-remap/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/eval_metadata.json +11 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/old_skill/grading.json +9 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/old_skill/outputs/analysis.md +119 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/with_skill/grading.json +9 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/with_skill/outputs/analysis.md +115 -0
- package/skills/tfx-workspace/iteration-1/doctor-diagnosis/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/eval_metadata.json +10 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/old_skill/grading.json +8 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/old_skill/outputs/analysis.md +86 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/with_skill/grading.json +8 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/with_skill/outputs/analysis.md +81 -0
- package/skills/tfx-workspace/iteration-1/hub-start-sequence/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/eval_metadata.json +12 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/old_skill/grading.json +10 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/old_skill/outputs/analysis.md +316 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/with_skill/grading.json +10 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/with_skill/outputs/analysis.md +352 -0
- package/skills/tfx-workspace/iteration-1/multi-team-creation/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/review.html +1325 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/eval_metadata.json +12 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/old_skill/grading.json +10 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/old_skill/outputs/analysis.md +97 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/with_skill/grading.json +10 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/with_skill/outputs/analysis.md +94 -0
- package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/eval_metadata.json +12 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/old_skill/grading.json +10 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/old_skill/outputs/analysis.md +209 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/with_skill/grading.json +10 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/with_skill/outputs/analysis.md +193 -0
- package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-2/benchmark.json +62 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/eval_metadata.json +13 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/old_skill/grading.json +11 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/old_skill/outputs/analysis.md +382 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/old_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/with_skill/grading.json +11 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/with_skill/outputs/analysis.md +333 -0
- package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/with_skill/timing.json +5 -0
- package/skills/tfx-workspace/iteration-2/review.html +1325 -0
- package/skills/tfx-workspace/skill-snapshot/tfx-auto/SKILL.md +217 -0
- package/skills/{tfx-auto-codex/SKILL.md.tmpl → tfx-workspace/skill-snapshot/tfx-auto-codex/SKILL.md} +3 -31
- package/skills/tfx-workspace/skill-snapshot/tfx-codex/SKILL.md +65 -0
- package/skills/tfx-workspace/skill-snapshot/tfx-doctor/SKILL.md +94 -0
- package/skills/{tfx-gemini/SKILL.md.tmpl → tfx-workspace/skill-snapshot/tfx-gemini/SKILL.md} +6 -14
- package/skills/tfx-workspace/skill-snapshot/tfx-hub/SKILL.md +133 -0
- package/skills/tfx-workspace/skill-snapshot/tfx-multi/SKILL.md +426 -0
- package/skills/tfx-workspace/skill-snapshot/tfx-setup/SKILL.md +101 -0
- package/skills/merge-worktree/SKILL.md.tmpl +0 -144
- package/skills/shared/arguments-processing.md +0 -2
- package/skills/shared/mandatory-rules.md +0 -6
- package/skills/shared/telemetry-segment.md +0 -6
- package/skills/star-prompt/SKILL.md.tmpl +0 -122
- package/skills/tfx-analysis/SKILL.md.tmpl +0 -106
- package/skills/tfx-analysis/skill.json +0 -11
- package/skills/tfx-auto/skill.json +0 -26
- package/skills/tfx-auto-codex/skill.json +0 -8
- package/skills/tfx-autopilot/SKILL.md.tmpl +0 -115
- package/skills/tfx-autopilot/skill.json +0 -10
- package/skills/tfx-autoresearch/SKILL.md.tmpl +0 -135
- package/skills/tfx-autoresearch/skill.json +0 -14
- package/skills/tfx-autoroute/SKILL.md.tmpl +0 -188
- package/skills/tfx-autoroute/skill.json +0 -12
- package/skills/tfx-codex/skill.json +0 -8
- package/skills/tfx-codex-swarm/SKILL.md.tmpl +0 -16
- package/skills/tfx-codex-swarm/skill.json +0 -5
- package/skills/tfx-consensus/SKILL.md.tmpl +0 -145
- package/skills/tfx-consensus/skill.json +0 -8
- package/skills/tfx-debate/SKILL.md.tmpl +0 -191
- package/skills/tfx-debate/skill.json +0 -12
- package/skills/tfx-deep-analysis/SKILL.md.tmpl +0 -227
- package/skills/tfx-deep-analysis/skill.json +0 -10
- package/skills/tfx-deep-interview/SKILL.md.tmpl +0 -203
- package/skills/tfx-deep-interview/skill.json +0 -12
- package/skills/tfx-deep-plan/SKILL.md.tmpl +0 -281
- package/skills/tfx-deep-plan/skill.json +0 -13
- package/skills/tfx-deep-qa/SKILL.md.tmpl +0 -164
- package/skills/tfx-deep-qa/skill.json +0 -11
- package/skills/tfx-deep-research/SKILL.md.tmpl +0 -216
- package/skills/tfx-deep-research/skill.json +0 -14
- package/skills/tfx-deep-review/SKILL.md.tmpl +0 -178
- package/skills/tfx-deep-review/skill.json +0 -12
- package/skills/tfx-doctor/SKILL.md.tmpl +0 -172
- package/skills/tfx-doctor/skill.json +0 -8
- package/skills/tfx-find/skill.json +0 -12
- package/skills/tfx-forge/SKILL.md.tmpl +0 -187
- package/skills/tfx-forge/skill.json +0 -12
- package/skills/tfx-fullcycle/SKILL.md.tmpl +0 -285
- package/skills/tfx-fullcycle/skill.json +0 -11
- package/skills/tfx-gemini/skill.json +0 -8
- package/skills/tfx-hooks/SKILL.md.tmpl +0 -216
- package/skills/tfx-hooks/skill.json +0 -8
- package/skills/tfx-hub/SKILL.md.tmpl +0 -212
- package/skills/tfx-hub/skill.json +0 -8
- package/skills/tfx-index/skill.json +0 -11
- package/skills/tfx-interview/SKILL.md.tmpl +0 -284
- package/skills/tfx-interview/skill.json +0 -12
- package/skills/tfx-multi/SKILL.md.tmpl +0 -183
- package/skills/tfx-multi/skill.json +0 -8
- package/skills/tfx-panel/SKILL.md.tmpl +0 -188
- package/skills/tfx-panel/skill.json +0 -12
- package/skills/tfx-persist/SKILL.md.tmpl +0 -269
- package/skills/tfx-persist/skill.json +0 -12
- package/skills/tfx-plan/skill.json +0 -11
- package/skills/tfx-profile/SKILL.md.tmpl +0 -239
- package/skills/tfx-profile/skill.json +0 -8
- package/skills/tfx-prune/SKILL.md.tmpl +0 -199
- package/skills/tfx-prune/skill.json +0 -12
- package/skills/tfx-psmux-rules/SKILL.md.tmpl +0 -317
- package/skills/tfx-psmux-rules/skill.json +0 -8
- package/skills/tfx-qa/skill.json +0 -11
- package/skills/tfx-ralph/SKILL.md.tmpl +0 -27
- package/skills/tfx-ralph/skill.json +0 -8
- package/skills/tfx-remote-setup/SKILL.md.tmpl +0 -576
- package/skills/tfx-remote-setup/skill.json +0 -8
- package/skills/tfx-remote-spawn/SKILL.md.tmpl +0 -263
- package/skills/tfx-remote-spawn/skill.json +0 -9
- package/skills/tfx-research/skill.json +0 -13
- package/skills/tfx-review/skill.json +0 -11
- package/skills/tfx-setup/SKILL.md.tmpl +0 -380
- package/skills/tfx-setup/skill.json +0 -8
- package/skills/tfx-swarm/SKILL.md.tmpl +0 -154
- package/skills/tfx-swarm/skill.json +0 -5
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# Codex Swarm Analysis — Full 7-PRD Execution Plan
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
- **Source**: 7 PRD files in `.omx/plans/`
|
|
6
|
+
- **Issues**: #24, #25, #26, #27, #28, #29, #30
|
|
7
|
+
- **Classification**: 5 implement, 2 investigate
|
|
8
|
+
- **User directive**: implement -> `$plan` -> `$autopilot`, investigate -> `$plan` only
|
|
9
|
+
- **Execution**: Codex CLI in `--full-auto` mode, one psmux session per PRD, all in one WT window as tabs
|
|
10
|
+
|
|
11
|
+
## What Was Generated
|
|
12
|
+
|
|
13
|
+
| File | Purpose |
|
|
14
|
+
|------|---------|
|
|
15
|
+
| `classification.md` | PRD-by-PRD type classification with rationale |
|
|
16
|
+
| `routing.md` | Codex profile routing (model, effort level) per PRD |
|
|
17
|
+
| `commands.sh` | Full executable script: worktrees, prompts, psmux, codex, WT tabs |
|
|
18
|
+
| `analysis.md` | This summary |
|
|
19
|
+
|
|
20
|
+
## Execution Pipeline
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
Phase 1: git worktree add (7 isolated worktrees)
|
|
24
|
+
Phase 2: Copy PRD files into worktrees
|
|
25
|
+
Phase 3: Generate per-task prompt files with OMX skill instructions
|
|
26
|
+
Phase 4: psmux new-session + codex send-keys (7 sessions)
|
|
27
|
+
Phase 5: psmux attach --wt-tab (1 WT window, 7 tabs)
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Session Map
|
|
31
|
+
|
|
32
|
+
| Tab | Session | Issue | Type | Model | Skill Flow |
|
|
33
|
+
|-----|---------|-------|------|-------|------------|
|
|
34
|
+
| 1 | codex-swarm-24 | file-transfer | implement | gpt-5.3-codex (high) | $plan -> $autopilot |
|
|
35
|
+
| 2 | codex-swarm-25 | resize-blank | investigate | gpt-5.4 (high) | $plan only |
|
|
36
|
+
| 3 | codex-swarm-26 | session-cleanup | implement | gpt-5.3-codex (high) | $plan -> $autopilot |
|
|
37
|
+
| 4 | codex-swarm-27 | dashboard-anchor | implement | gpt-5.3-codex (high) | $plan -> $autopilot |
|
|
38
|
+
| 5 | codex-swarm-28 | guard-deadlock | implement | gpt-5.3-codex (high) | $plan -> $autopilot |
|
|
39
|
+
| 6 | codex-swarm-29 | cwd-propagation | implement | gpt-5.3-codex (high) | $plan -> $autopilot |
|
|
40
|
+
| 7 | codex-swarm-30 | terminal-minimize | investigate | gpt-5.4 (high) | $plan only |
|
|
41
|
+
|
|
42
|
+
## Isolation Strategy
|
|
43
|
+
|
|
44
|
+
Each session runs in its own git worktree under `.codex-swarm/wt-issue-{N}` on branch `codex/issue-{N}`. This prevents file conflicts between parallel Codex sessions. PRD files are copied into each worktree so the Codex agent can read them locally.
|
|
45
|
+
|
|
46
|
+
## Key Design Decisions
|
|
47
|
+
|
|
48
|
+
### 1. Model Selection
|
|
49
|
+
- **Implement tasks** (5): `gpt-5.3-codex` with high reasoning effort. Codex-optimized model for code generation.
|
|
50
|
+
- **Investigate tasks** (2): `gpt-5.4` with high reasoning effort. General model better suited for analysis and investigation planning.
|
|
51
|
+
- All 7 PRDs sized as L (standard) based on line count (69-76 lines) and affected file counts (2-5 files).
|
|
52
|
+
|
|
53
|
+
### 2. OMX Skill Routing
|
|
54
|
+
- User explicitly requested: implement -> autopilot, investigate -> plan only.
|
|
55
|
+
- Implement prompts instruct: `$plan` first, then `$autopilot` for autonomous execution.
|
|
56
|
+
- Investigate prompts instruct: `$plan` only, explicitly stating "do not implement".
|
|
57
|
+
|
|
58
|
+
### 3. WT Layout
|
|
59
|
+
- User requested "one WT with tabs" -- all 7 sessions are tabs in a single WT window.
|
|
60
|
+
- First session uses `--wt-new-window`, remaining 6 use `--wt-tab`.
|
|
61
|
+
- wt.exe fallback is provided as a commented-out alternative.
|
|
62
|
+
|
|
63
|
+
### 4. No Execution
|
|
64
|
+
- Per instructions, commands are generated but NOT executed.
|
|
65
|
+
- The `commands.sh` script is ready to run when the user decides to launch.
|
|
66
|
+
|
|
67
|
+
## Monitoring Commands
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
# Check status of all sessions
|
|
71
|
+
for N in 24 25 26 27 28 29 30; do
|
|
72
|
+
echo "=== Issue #$N ==="
|
|
73
|
+
psmux capture-pane --session "codex-swarm-$N" --lines 5
|
|
74
|
+
done
|
|
75
|
+
|
|
76
|
+
# List active sessions
|
|
77
|
+
psmux list-sessions | grep codex-swarm
|
|
78
|
+
|
|
79
|
+
# Kill all swarm sessions (cleanup)
|
|
80
|
+
for N in 24 25 26 27 28 29 30; do
|
|
81
|
+
psmux kill-session --name "codex-swarm-$N"
|
|
82
|
+
done
|
|
83
|
+
git worktree prune
|
|
84
|
+
rm -rf .codex-swarm/
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Risk Notes
|
|
88
|
+
|
|
89
|
+
- **Issue #25 and #30** (investigate): These have "evidence insufficient" validity verdicts. The investigation plans may conclude that no code fix is needed. Using `$plan` only is appropriate.
|
|
90
|
+
- **Issue #28** (partially valid): The deadlock claim is overstated per validity review, but the UX improvement is still warranted. Autopilot should handle the bounded scope.
|
|
91
|
+
- **Issue #29**: Touches the most files (5 across CLI parse, headless, and backend layers). Most likely to need careful cross-file coordination.
|
|
92
|
+
- **Parallel execution**: 7 simultaneous Codex sessions will consume significant API quota. All are routed to high-effort profiles.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# PRD Classification — 7 PRDs in .omx/plans/
|
|
2
|
+
|
|
3
|
+
## Classification Criteria
|
|
4
|
+
|
|
5
|
+
Based on PRD content analysis against SKILL.md Step 3 rules:
|
|
6
|
+
- **implement**: keywords "구현", "implement", "추가", "변경", "fix", actionable code changes
|
|
7
|
+
- **investigate**: keywords "조사", "investigation", "재현", "reproduce", runtime-only evidence needed
|
|
8
|
+
|
|
9
|
+
User override: implement -> `$plan` -> `$autopilot`, investigate -> `$plan` only.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## PRD-by-PRD Classification
|
|
14
|
+
|
|
15
|
+
### 1. prd-issue-24-remote-spawn-file-transfer.md
|
|
16
|
+
- **Type**: implement
|
|
17
|
+
- **Rationale**: "Add an explicit file-transfer phase before remote Claude launch", "Copy transferred files", "rewrite the prompt". Clear implementation deliverable with bounded code changes in `scripts/remote-spawn.mjs`.
|
|
18
|
+
- **Validity verdict**: mostly valid
|
|
19
|
+
- **OMX skill**: `$plan` -> `$autopilot`
|
|
20
|
+
|
|
21
|
+
### 2. prd-issue-25-remote-spawn-resize-blank-screen.md
|
|
22
|
+
- **Type**: investigate
|
|
23
|
+
- **Rationale**: "Produce a deterministic reproduction procedure", "investigation checklist", "instrumentation-first workflow". Explicitly framed as investigation, not implementation. Verdict was "evidence insufficient".
|
|
24
|
+
- **Validity verdict**: evidence insufficient
|
|
25
|
+
- **OMX skill**: `$plan` (investigation mode)
|
|
26
|
+
|
|
27
|
+
### 3. prd-issue-26-remote-spawn-session-cleanup.md
|
|
28
|
+
- **Type**: implement
|
|
29
|
+
- **Rationale**: "Add a normal-exit watcher", "trigger killPsmuxSession(sessionName)". Clear implementation target: add cleanup logic to spawn lifecycle.
|
|
30
|
+
- **Validity verdict**: valid
|
|
31
|
+
- **OMX skill**: `$plan` -> `$autopilot`
|
|
32
|
+
|
|
33
|
+
### 4. prd-issue-27-hud-dashboard-anchor.md
|
|
34
|
+
- **Type**: implement
|
|
35
|
+
- **Rationale**: "Replace focus-relative split behavior with a dedicated dashboard target strategy", "Remove or narrow mf up focus manipulation". Concrete implementation changes to `hub/team/headless.mjs`.
|
|
36
|
+
- **Validity verdict**: valid
|
|
37
|
+
- **OMX skill**: `$plan` -> `$autopilot`
|
|
38
|
+
|
|
39
|
+
### 5. prd-issue-28-headless-guard-spawn-deadlock.md
|
|
40
|
+
- **Type**: implement
|
|
41
|
+
- **Rationale**: "Make the denial message action-oriented and specific", "Add regression tests around the guard decision matrix". Implementation + test additions to `scripts/headless-guard.mjs`.
|
|
42
|
+
- **Validity verdict**: partially valid
|
|
43
|
+
- **OMX skill**: `$plan` -> `$autopilot`
|
|
44
|
+
|
|
45
|
+
### 6. prd-issue-29-headless-cwd-propagation.md
|
|
46
|
+
- **Type**: implement
|
|
47
|
+
- **Rationale**: "Add a cwd or equivalent field to the headless start argument parsing", "Propagate that field through start-headless.mjs". Multi-file implementation across CLI parse, headless, backend layers.
|
|
48
|
+
- **Validity verdict**: valid
|
|
49
|
+
- **OMX skill**: `$plan` -> `$autopilot`
|
|
50
|
+
|
|
51
|
+
### 7. prd-issue-30-remote-spawn-terminal-minimize.md
|
|
52
|
+
- **Type**: investigate
|
|
53
|
+
- **Rationale**: "Reproduce the symptom reliably", "Build a minimal repro script", "Collect terminal state evidence". Explicitly an investigation PRD. Verdict was "evidence insufficient".
|
|
54
|
+
- **Validity verdict**: evidence insufficient
|
|
55
|
+
- **OMX skill**: `$plan` (investigation mode)
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Summary Table
|
|
60
|
+
|
|
61
|
+
| # | PRD file | Type | OMX Skill | Validity |
|
|
62
|
+
|---|----------|------|-----------|----------|
|
|
63
|
+
| 24 | prd-issue-24-remote-spawn-file-transfer | implement | `$plan` -> `$autopilot` | mostly valid |
|
|
64
|
+
| 25 | prd-issue-25-remote-spawn-resize-blank-screen | investigate | `$plan` only | evidence insufficient |
|
|
65
|
+
| 26 | prd-issue-26-remote-spawn-session-cleanup | implement | `$plan` -> `$autopilot` | valid |
|
|
66
|
+
| 27 | prd-issue-27-hud-dashboard-anchor | implement | `$plan` -> `$autopilot` | valid |
|
|
67
|
+
| 28 | prd-issue-28-headless-guard-spawn-deadlock | implement | `$plan` -> `$autopilot` | partially valid |
|
|
68
|
+
| 29 | prd-issue-29-headless-cwd-propagation | implement | `$plan` -> `$autopilot` | valid |
|
|
69
|
+
| 30 | prd-issue-30-remote-spawn-terminal-minimize | investigate | `$plan` only | evidence insufficient |
|
|
70
|
+
|
|
71
|
+
**Totals**: 5 implement, 2 investigate
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# =============================================================================
|
|
3
|
+
# Codex Swarm — 7 PRDs from .omx/plans/
|
|
4
|
+
# Generated for: triflux @ C:/Users/SSAFY/Desktop/Projects/cli/triflux
|
|
5
|
+
# 5 implement ($plan -> $autopilot), 2 investigate ($plan only)
|
|
6
|
+
# All sessions in one WT window with tabs
|
|
7
|
+
# =============================================================================
|
|
8
|
+
|
|
9
|
+
set -euo pipefail
|
|
10
|
+
|
|
11
|
+
PROJECT_ROOT="C:/Users/SSAFY/Desktop/Projects/cli/triflux"
|
|
12
|
+
SWARM_DIR="$PROJECT_ROOT/.codex-swarm"
|
|
13
|
+
PROMPTS_DIR="$SWARM_DIR/prompts"
|
|
14
|
+
BASH_EXE='C:\Program Files\Git\bin\bash.exe'
|
|
15
|
+
|
|
16
|
+
# ─── Phase 1: Worktree Creation ─────────────────────────────────────────────
|
|
17
|
+
|
|
18
|
+
echo "=== Phase 1: Creating worktrees ==="
|
|
19
|
+
|
|
20
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-24" -b codex/issue-24 2>/dev/null || \
|
|
21
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-24" codex/issue-24
|
|
22
|
+
|
|
23
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-25" -b codex/issue-25 2>/dev/null || \
|
|
24
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-25" codex/issue-25
|
|
25
|
+
|
|
26
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-26" -b codex/issue-26 2>/dev/null || \
|
|
27
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-26" codex/issue-26
|
|
28
|
+
|
|
29
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-27" -b codex/issue-27 2>/dev/null || \
|
|
30
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-27" codex/issue-27
|
|
31
|
+
|
|
32
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-28" -b codex/issue-28 2>/dev/null || \
|
|
33
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-28" codex/issue-28
|
|
34
|
+
|
|
35
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-29" -b codex/issue-29 2>/dev/null || \
|
|
36
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-29" codex/issue-29
|
|
37
|
+
|
|
38
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-30" -b codex/issue-30 2>/dev/null || \
|
|
39
|
+
git -C "$PROJECT_ROOT" worktree add "$SWARM_DIR/wt-issue-30" codex/issue-30
|
|
40
|
+
|
|
41
|
+
echo " 7 worktrees created under $SWARM_DIR/"
|
|
42
|
+
|
|
43
|
+
# ─── Phase 2: Copy PRD files into worktrees ──────────────────────────────────
|
|
44
|
+
|
|
45
|
+
echo "=== Phase 2: Staging PRD files ==="
|
|
46
|
+
|
|
47
|
+
for N in 24 25 26 27 28 29 30; do
|
|
48
|
+
mkdir -p "$SWARM_DIR/wt-issue-$N/.omx/plans"
|
|
49
|
+
cp "$PROJECT_ROOT/.omx/plans/prd-issue-$N-"*.md "$SWARM_DIR/wt-issue-$N/.omx/plans/" 2>/dev/null || true
|
|
50
|
+
done
|
|
51
|
+
|
|
52
|
+
echo " PRD files staged into worktrees"
|
|
53
|
+
|
|
54
|
+
# ─── Phase 3: Generate prompt files ─────────────────────────────────────────
|
|
55
|
+
|
|
56
|
+
echo "=== Phase 3: Generating prompts ==="
|
|
57
|
+
|
|
58
|
+
mkdir -p "$PROMPTS_DIR"
|
|
59
|
+
|
|
60
|
+
# --- Issue #24: implement -> $plan -> $autopilot ---
|
|
61
|
+
cat > "$PROMPTS_DIR/prompt-24.md" << 'PROMPT_EOF'
|
|
62
|
+
triflux 프로젝트의 태스크를 구현해야 합니다.
|
|
63
|
+
|
|
64
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-24-remote-spawn-file-transfer.md
|
|
65
|
+
|
|
66
|
+
작업 순서:
|
|
67
|
+
1. 태스크 파일을 읽고 요구사항을 파악하세요
|
|
68
|
+
2. $plan 스킬을 사용하여 구현 계획을 수립하세요
|
|
69
|
+
3. 계획이 완성되면 $autopilot 스킬로 자율 구현을 진행하세요
|
|
70
|
+
4. Acceptance Criteria를 모두 충족하는지 검증하세요
|
|
71
|
+
|
|
72
|
+
프로젝트 정보:
|
|
73
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
74
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
75
|
+
- 주요 수정 대상: scripts/remote-spawn.mjs
|
|
76
|
+
PROMPT_EOF
|
|
77
|
+
|
|
78
|
+
# --- Issue #25: investigate -> $plan only ---
|
|
79
|
+
cat > "$PROMPTS_DIR/prompt-25.md" << 'PROMPT_EOF'
|
|
80
|
+
triflux 프로젝트의 이슈를 조사해야 합니다.
|
|
81
|
+
|
|
82
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-25-remote-spawn-resize-blank-screen.md
|
|
83
|
+
|
|
84
|
+
작업 순서:
|
|
85
|
+
1. 태스크 파일을 읽고 조사 요구사항을 파악하세요
|
|
86
|
+
2. $plan 스킬을 사용하여 조사 계획을 수립하세요
|
|
87
|
+
3. 재현 절차, 계측 방법, 원인 분류 기준을 포함하세요
|
|
88
|
+
4. 구현은 하지 마세요 — 조사 계획 수립까지만 진행하세요
|
|
89
|
+
|
|
90
|
+
프로젝트 정보:
|
|
91
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
92
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
93
|
+
- 조사 대상: SSH PTY resize, psmux pane capture, WT alternate screen
|
|
94
|
+
PROMPT_EOF
|
|
95
|
+
|
|
96
|
+
# --- Issue #26: implement -> $plan -> $autopilot ---
|
|
97
|
+
cat > "$PROMPTS_DIR/prompt-26.md" << 'PROMPT_EOF'
|
|
98
|
+
triflux 프로젝트의 태스크를 구현해야 합니다.
|
|
99
|
+
|
|
100
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-26-remote-spawn-session-cleanup.md
|
|
101
|
+
|
|
102
|
+
작업 순서:
|
|
103
|
+
1. 태스크 파일을 읽고 요구사항을 파악하세요
|
|
104
|
+
2. $plan 스킬을 사용하여 구현 계획을 수립하세요
|
|
105
|
+
3. 계획이 완성되면 $autopilot 스킬로 자율 구현을 진행하세요
|
|
106
|
+
4. Acceptance Criteria를 모두 충족하는지 검증하세요
|
|
107
|
+
|
|
108
|
+
프로젝트 정보:
|
|
109
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
110
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
111
|
+
- 주요 수정 대상: scripts/remote-spawn.mjs, hub/server.mjs
|
|
112
|
+
PROMPT_EOF
|
|
113
|
+
|
|
114
|
+
# --- Issue #27: implement -> $plan -> $autopilot ---
|
|
115
|
+
cat > "$PROMPTS_DIR/prompt-27.md" << 'PROMPT_EOF'
|
|
116
|
+
triflux 프로젝트의 태스크를 구현해야 합니다.
|
|
117
|
+
|
|
118
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-27-hud-dashboard-anchor.md
|
|
119
|
+
|
|
120
|
+
작업 순서:
|
|
121
|
+
1. 태스크 파일을 읽고 요구사항을 파악하세요
|
|
122
|
+
2. $plan 스킬을 사용하여 구현 계획을 수립하세요
|
|
123
|
+
3. 계획이 완성되면 $autopilot 스킬로 자율 구현을 진행하세요
|
|
124
|
+
4. Acceptance Criteria를 모두 충족하는지 검증하세요
|
|
125
|
+
|
|
126
|
+
프로젝트 정보:
|
|
127
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
128
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
129
|
+
- 주요 수정 대상: hub/team/headless.mjs (dashboard attach path)
|
|
130
|
+
PROMPT_EOF
|
|
131
|
+
|
|
132
|
+
# --- Issue #28: implement -> $plan -> $autopilot ---
|
|
133
|
+
cat > "$PROMPTS_DIR/prompt-28.md" << 'PROMPT_EOF'
|
|
134
|
+
triflux 프로젝트의 태스크를 구현해야 합니다.
|
|
135
|
+
|
|
136
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-28-headless-guard-spawn-deadlock.md
|
|
137
|
+
|
|
138
|
+
작업 순서:
|
|
139
|
+
1. 태스크 파일을 읽고 요구사항을 파악하세요
|
|
140
|
+
2. $plan 스킬을 사용하여 구현 계획을 수립하세요
|
|
141
|
+
3. 계획이 완성되면 $autopilot 스킬로 자율 구현을 진행하세요
|
|
142
|
+
4. Acceptance Criteria를 모두 충족하는지 검증하세요
|
|
143
|
+
|
|
144
|
+
프로젝트 정보:
|
|
145
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
146
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
147
|
+
- 주요 수정 대상: scripts/headless-guard.mjs, tests/unit/headless-guard.test.mjs
|
|
148
|
+
PROMPT_EOF
|
|
149
|
+
|
|
150
|
+
# --- Issue #29: implement -> $plan -> $autopilot ---
|
|
151
|
+
cat > "$PROMPTS_DIR/prompt-29.md" << 'PROMPT_EOF'
|
|
152
|
+
triflux 프로젝트의 태스크를 구현해야 합니다.
|
|
153
|
+
|
|
154
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-29-headless-cwd-propagation.md
|
|
155
|
+
|
|
156
|
+
작업 순서:
|
|
157
|
+
1. 태스크 파일을 읽고 요구사항을 파악하세요
|
|
158
|
+
2. $plan 스킬을 사용하여 구현 계획을 수립하세요
|
|
159
|
+
3. 계획이 완성되면 $autopilot 스킬로 자율 구현을 진행하세요
|
|
160
|
+
4. Acceptance Criteria를 모두 충족하는지 검증하세요
|
|
161
|
+
|
|
162
|
+
프로젝트 정보:
|
|
163
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
164
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
165
|
+
- 주요 수정 대상: hub/team/cli/commands/start/parse-args.mjs, start-headless.mjs, hub/team/headless.mjs, hub/team/backend.mjs
|
|
166
|
+
PROMPT_EOF
|
|
167
|
+
|
|
168
|
+
# --- Issue #30: investigate -> $plan only ---
|
|
169
|
+
cat > "$PROMPTS_DIR/prompt-30.md" << 'PROMPT_EOF'
|
|
170
|
+
triflux 프로젝트의 이슈를 조사해야 합니다.
|
|
171
|
+
|
|
172
|
+
태스크 파일을 먼저 읽으세요: .omx/plans/prd-issue-30-remote-spawn-terminal-minimize.md
|
|
173
|
+
|
|
174
|
+
작업 순서:
|
|
175
|
+
1. 태스크 파일을 읽고 조사 요구사항을 파악하세요
|
|
176
|
+
2. $plan 스킬을 사용하여 조사 계획을 수립하세요
|
|
177
|
+
3. 재현 스크립트, 터미널 상태 캡처 방법, 판별 기준을 포함하세요
|
|
178
|
+
4. 구현은 하지 마세요 — 조사 계획 수립까지만 진행하세요
|
|
179
|
+
|
|
180
|
+
프로젝트 정보:
|
|
181
|
+
- triflux: Claude Code용 멀티모델 CLI 오케스트레이터
|
|
182
|
+
- 언어: JavaScript/ESM (Node.js), 테스트: npm test
|
|
183
|
+
- 조사 대상: remote-spawn.mjs WT tab/pane creation, headless.mjs focus manipulation
|
|
184
|
+
PROMPT_EOF
|
|
185
|
+
|
|
186
|
+
echo " 7 prompt files generated in $PROMPTS_DIR/"
|
|
187
|
+
|
|
188
|
+
# ─── Phase 4: psmux Session Creation + Codex Launch ─────────────────────────
|
|
189
|
+
|
|
190
|
+
echo "=== Phase 4: Creating psmux sessions and launching Codex ==="
|
|
191
|
+
|
|
192
|
+
# --- Issue #24: implement, codex53_high ---
|
|
193
|
+
psmux new-session --name "codex-swarm-24" --dir "$SWARM_DIR/wt-issue-24"
|
|
194
|
+
psmux send-keys --target "codex-swarm-24:0" \
|
|
195
|
+
"codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-24.md)\"" Enter
|
|
196
|
+
|
|
197
|
+
# --- Issue #25: investigate, gpt54_high ---
|
|
198
|
+
psmux new-session --name "codex-swarm-25" --dir "$SWARM_DIR/wt-issue-25"
|
|
199
|
+
psmux send-keys --target "codex-swarm-25:0" \
|
|
200
|
+
"codex -c 'model=\"gpt-5.4\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-25.md)\"" Enter
|
|
201
|
+
|
|
202
|
+
# --- Issue #26: implement, codex53_high ---
|
|
203
|
+
psmux new-session --name "codex-swarm-26" --dir "$SWARM_DIR/wt-issue-26"
|
|
204
|
+
psmux send-keys --target "codex-swarm-26:0" \
|
|
205
|
+
"codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-26.md)\"" Enter
|
|
206
|
+
|
|
207
|
+
# --- Issue #27: implement, codex53_high ---
|
|
208
|
+
psmux new-session --name "codex-swarm-27" --dir "$SWARM_DIR/wt-issue-27"
|
|
209
|
+
psmux send-keys --target "codex-swarm-27:0" \
|
|
210
|
+
"codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-27.md)\"" Enter
|
|
211
|
+
|
|
212
|
+
# --- Issue #28: implement, codex53_high ---
|
|
213
|
+
psmux new-session --name "codex-swarm-28" --dir "$SWARM_DIR/wt-issue-28"
|
|
214
|
+
psmux send-keys --target "codex-swarm-28:0" \
|
|
215
|
+
"codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-28.md)\"" Enter
|
|
216
|
+
|
|
217
|
+
# --- Issue #29: implement, codex53_high ---
|
|
218
|
+
psmux new-session --name "codex-swarm-29" --dir "$SWARM_DIR/wt-issue-29"
|
|
219
|
+
psmux send-keys --target "codex-swarm-29:0" \
|
|
220
|
+
"codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-29.md)\"" Enter
|
|
221
|
+
|
|
222
|
+
# --- Issue #30: investigate, gpt54_high ---
|
|
223
|
+
psmux new-session --name "codex-swarm-30" --dir "$SWARM_DIR/wt-issue-30"
|
|
224
|
+
psmux send-keys --target "codex-swarm-30:0" \
|
|
225
|
+
"codex -c 'model=\"gpt-5.4\"' -c 'model_reasoning_effort=\"high\"' --full-auto \"\$(cat $PROMPTS_DIR/prompt-30.md)\"" Enter
|
|
226
|
+
|
|
227
|
+
echo " 7 psmux sessions created, Codex launched in each"
|
|
228
|
+
|
|
229
|
+
# ─── Phase 5: WT Tab Attach — All sessions in one window ────────────────────
|
|
230
|
+
|
|
231
|
+
echo "=== Phase 5: Attaching all sessions to one WT window ==="
|
|
232
|
+
|
|
233
|
+
# First session opens a new WT window
|
|
234
|
+
psmux attach --session "codex-swarm-24" --wt-new-window
|
|
235
|
+
|
|
236
|
+
# Remaining 6 sessions attach as tabs in the same window
|
|
237
|
+
psmux attach --session "codex-swarm-25" --wt-tab
|
|
238
|
+
psmux attach --session "codex-swarm-26" --wt-tab
|
|
239
|
+
psmux attach --session "codex-swarm-27" --wt-tab
|
|
240
|
+
psmux attach --session "codex-swarm-28" --wt-tab
|
|
241
|
+
psmux attach --session "codex-swarm-29" --wt-tab
|
|
242
|
+
psmux attach --session "codex-swarm-30" --wt-tab
|
|
243
|
+
|
|
244
|
+
echo " All 7 sessions attached as tabs in one WT window"
|
|
245
|
+
|
|
246
|
+
# ─── Fallback: wt.exe direct (if psmux attach --wt-tab unavailable) ─────────
|
|
247
|
+
|
|
248
|
+
# Uncomment below if psmux attach --wt-tab is not available:
|
|
249
|
+
#
|
|
250
|
+
# PSMUX_WIN=$(command -v psmux.exe || echo "psmux")
|
|
251
|
+
# wt.exe -w new \
|
|
252
|
+
# --title "swarm-24 file-transfer" -d "$SWARM_DIR/wt-issue-24" "$BASH_EXE" -c "psmux attach codex-swarm-24" \; \
|
|
253
|
+
# new-tab --title "swarm-25 resize-blank" -d "$SWARM_DIR/wt-issue-25" "$BASH_EXE" -c "psmux attach codex-swarm-25" \; \
|
|
254
|
+
# new-tab --title "swarm-26 session-cleanup" -d "$SWARM_DIR/wt-issue-26" "$BASH_EXE" -c "psmux attach codex-swarm-26" \; \
|
|
255
|
+
# new-tab --title "swarm-27 dashboard-anchor" -d "$SWARM_DIR/wt-issue-27" "$BASH_EXE" -c "psmux attach codex-swarm-27" \; \
|
|
256
|
+
# new-tab --title "swarm-28 guard-deadlock" -d "$SWARM_DIR/wt-issue-28" "$BASH_EXE" -c "psmux attach codex-swarm-28" \; \
|
|
257
|
+
# new-tab --title "swarm-29 cwd-propagation" -d "$SWARM_DIR/wt-issue-29" "$BASH_EXE" -c "psmux attach codex-swarm-29" \; \
|
|
258
|
+
# new-tab --title "swarm-30 terminal-minimize" -d "$SWARM_DIR/wt-issue-30" "$BASH_EXE" -c "psmux attach codex-swarm-30"
|
|
259
|
+
|
|
260
|
+
echo ""
|
|
261
|
+
echo "=== Codex Swarm Complete ==="
|
|
262
|
+
echo " Sessions: 7 (5 implement + 2 investigate)"
|
|
263
|
+
echo " Window: 1 WT window, 7 tabs"
|
|
264
|
+
echo " Monitor: psmux capture-pane --session codex-swarm-{N} --lines 5"
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# Codex Profile Routing — 7 PRDs
|
|
2
|
+
|
|
3
|
+
## Routing Method
|
|
4
|
+
|
|
5
|
+
Following SKILL.md Step 4 profile routing tables.
|
|
6
|
+
|
|
7
|
+
### Size Estimation Signals
|
|
8
|
+
|
|
9
|
+
| Signal | Method |
|
|
10
|
+
|--------|--------|
|
|
11
|
+
| PRD length | line count |
|
|
12
|
+
| Affected files | file paths mentioned in PRD |
|
|
13
|
+
| High-cost keywords | "architecture", "migration", "refactoring" |
|
|
14
|
+
| Dependency depth | references to other issues/PRDs |
|
|
15
|
+
|
|
16
|
+
### Size Thresholds
|
|
17
|
+
|
|
18
|
+
| Size | PRD lines | Affected files | High-cost keywords |
|
|
19
|
+
|------|-----------|----------------|--------------------|
|
|
20
|
+
| XL | 80+ | 6+ | 2+ |
|
|
21
|
+
| L | 40-80 | 3-5 | 0-1 |
|
|
22
|
+
| M | 20-40 | 1-2 | 0 |
|
|
23
|
+
| S | <20 | 1 | 0 |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Per-PRD Routing
|
|
28
|
+
|
|
29
|
+
### Issue #24 — remote-spawn file transfer
|
|
30
|
+
- **Lines**: 73
|
|
31
|
+
- **Affected files**: `scripts/remote-spawn.mjs` (primary), prompt pipeline, scp path (~3 files)
|
|
32
|
+
- **High-cost keywords**: 0
|
|
33
|
+
- **Size**: L (standard)
|
|
34
|
+
- **Type**: implement
|
|
35
|
+
- **Profile**: `codex53_high`
|
|
36
|
+
- **Flags**: `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'`
|
|
37
|
+
|
|
38
|
+
### Issue #25 — resize blank-screen investigation
|
|
39
|
+
- **Lines**: 76
|
|
40
|
+
- **Affected files**: `scripts/remote-spawn.mjs`, psmux pane capture, SSH PTY (~4 files)
|
|
41
|
+
- **High-cost keywords**: 0
|
|
42
|
+
- **Size**: L (standard)
|
|
43
|
+
- **Type**: investigate
|
|
44
|
+
- **Profile**: `gpt54_high`
|
|
45
|
+
- **Flags**: `-c 'model="gpt-5.4"' -c 'model_reasoning_effort="high"'`
|
|
46
|
+
|
|
47
|
+
### Issue #26 — session cleanup
|
|
48
|
+
- **Lines**: 70
|
|
49
|
+
- **Affected files**: `scripts/remote-spawn.mjs`, `hub/server.mjs` (~2-3 files)
|
|
50
|
+
- **High-cost keywords**: 0
|
|
51
|
+
- **Size**: L (standard)
|
|
52
|
+
- **Type**: implement
|
|
53
|
+
- **Profile**: `codex53_high`
|
|
54
|
+
- **Flags**: `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'`
|
|
55
|
+
|
|
56
|
+
### Issue #27 — HUD dashboard anchor
|
|
57
|
+
- **Lines**: 73
|
|
58
|
+
- **Affected files**: `hub/team/headless.mjs` (primary), WT config (~2 files)
|
|
59
|
+
- **High-cost keywords**: 0
|
|
60
|
+
- **Size**: L (standard)
|
|
61
|
+
- **Type**: implement
|
|
62
|
+
- **Profile**: `codex53_high`
|
|
63
|
+
- **Flags**: `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'`
|
|
64
|
+
|
|
65
|
+
### Issue #28 — headless-guard spawn deadlock
|
|
66
|
+
- **Lines**: 69
|
|
67
|
+
- **Affected files**: `scripts/headless-guard.mjs`, `tests/unit/headless-guard.test.mjs` (~2 files)
|
|
68
|
+
- **High-cost keywords**: 0
|
|
69
|
+
- **Size**: L (standard)
|
|
70
|
+
- **Type**: implement
|
|
71
|
+
- **Profile**: `codex53_high`
|
|
72
|
+
- **Flags**: `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'`
|
|
73
|
+
|
|
74
|
+
### Issue #29 — headless cwd propagation
|
|
75
|
+
- **Lines**: 70
|
|
76
|
+
- **Affected files**: `hub/team/cli/commands/start/parse-args.mjs`, `hub/team/cli/commands/start/start-headless.mjs`, `hub/team/headless.mjs`, `hub/team/backend.mjs`, `scripts/tfx-route.sh` (~5 files)
|
|
77
|
+
- **High-cost keywords**: 0
|
|
78
|
+
- **Size**: L (standard)
|
|
79
|
+
- **Type**: implement
|
|
80
|
+
- **Profile**: `codex53_high`
|
|
81
|
+
- **Flags**: `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'`
|
|
82
|
+
|
|
83
|
+
### Issue #30 — terminal minimize investigation
|
|
84
|
+
- **Lines**: 70
|
|
85
|
+
- **Affected files**: `scripts/remote-spawn.mjs`, `hub/team/headless.mjs`, WT focus (~3 files)
|
|
86
|
+
- **High-cost keywords**: 0
|
|
87
|
+
- **Size**: L (standard)
|
|
88
|
+
- **Type**: investigate
|
|
89
|
+
- **Profile**: `gpt54_high`
|
|
90
|
+
- **Flags**: `-c 'model="gpt-5.4"' -c 'model_reasoning_effort="high"'`
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Routing Summary Table
|
|
95
|
+
|
|
96
|
+
| # | Task | Size | Type | Profile | Model | Effort |
|
|
97
|
+
|---|------|------|------|---------|-------|--------|
|
|
98
|
+
| 24 | file-transfer | L | implement | `codex53_high` | gpt-5.3-codex | high |
|
|
99
|
+
| 25 | resize-blank | L | investigate | `gpt54_high` | gpt-5.4 | high |
|
|
100
|
+
| 26 | session-cleanup | L | implement | `codex53_high` | gpt-5.3-codex | high |
|
|
101
|
+
| 27 | dashboard-anchor | L | implement | `codex53_high` | gpt-5.3-codex | high |
|
|
102
|
+
| 28 | guard-deadlock | L | implement | `codex53_high` | gpt-5.3-codex | high |
|
|
103
|
+
| 29 | cwd-propagation | L | implement | `codex53_high` | gpt-5.3-codex | high |
|
|
104
|
+
| 30 | terminal-minimize | L | investigate | `gpt54_high` | gpt-5.4 | high |
|
|
105
|
+
|
|
106
|
+
## Execution Config
|
|
107
|
+
|
|
108
|
+
| Setting | Value | Notes |
|
|
109
|
+
|---------|-------|-------|
|
|
110
|
+
| Execution mode | `--full-auto` | sandbox auto-approve |
|
|
111
|
+
| Worktree | enabled | per-session isolated worktree |
|
|
112
|
+
| psmux | enabled | session management |
|
|
113
|
+
| WT layout | single window, 7 tabs | user requested tabs |
|
package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/eval_metadata.json
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"eval_id": 3,
|
|
3
|
+
"eval_name": "implicit-swarm-no-keywords",
|
|
4
|
+
"prompt": "이 PRD 3개 파일을 각각 독립적으로 코덱스한테 맡겨서 병렬로 구현해줘. docs/prd/auth-refactor.md, docs/prd/api-v2.md, docs/prd/cache-layer.md",
|
|
5
|
+
"assertions": [
|
|
6
|
+
{
|
|
7
|
+
"name": "3-paths-recognized",
|
|
8
|
+
"description": "사용자 제공 3개 파일 경로 인식",
|
|
9
|
+
"check": "classification.md에 auth-refactor, api-v2, cache-layer 모두 등장"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"name": "filename-classification",
|
|
13
|
+
"description": "파일명 기반 유형 분류 시도",
|
|
14
|
+
"check": "auth-refactor를 리팩터링으로, api-v2/cache-layer를 구현으로 분류"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"name": "profile-routing-applied",
|
|
18
|
+
"description": "자동 프로파일 라우팅 적용",
|
|
19
|
+
"check": "routing.md에 프로파일 매핑 존재 (codex53 또는 gpt54)"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "worktree-isolation",
|
|
23
|
+
"description": "3개 독립 worktree 생성",
|
|
24
|
+
"check": "commands.sh에 git worktree add가 3개"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "psmux-and-wt",
|
|
28
|
+
"description": "psmux 세션 + WT 탭 명령 생성",
|
|
29
|
+
"check": "commands.sh에 psmux + wt 명령 존재"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
{
|
|
2
|
+
"expectations": [
|
|
3
|
+
{"text": "3-paths-recognized", "passed": true, "evidence": "auth-refactor, api-v2, cache-layer 모두 classification.md에 등장"},
|
|
4
|
+
{"text": "filename-classification", "passed": true, "evidence": "auth-refactor=리팩터링, api-v2=구현, cache-layer=구현"},
|
|
5
|
+
{"text": "profile-routing-applied", "passed": true, "evidence": "모두 codex53_high 라우팅"},
|
|
6
|
+
{"text": "worktree-isolation", "passed": true, "evidence": "3개 git worktree add 명령"},
|
|
7
|
+
{"text": "psmux-and-wt", "passed": true, "evidence": "psmux 세션 + WT 탭 명령 존재"}
|
|
8
|
+
]
|
|
9
|
+
}
|