sneakoscope 2.0.13 → 2.0.15

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.
Files changed (504) hide show
  1. package/README.md +6 -3
  2. package/crates/sks-core/Cargo.lock +1 -1
  3. package/crates/sks-core/Cargo.toml +1 -1
  4. package/crates/sks-core/src/main.rs +1 -1
  5. package/dist/.sks-build-stamp.json +4 -4
  6. package/dist/bin/sks.js +1 -1
  7. package/dist/cli/command-registry.js +1 -0
  8. package/dist/commands/mad-db.js +5 -0
  9. package/dist/commands/zellij-slot-pane.js +3 -1
  10. package/dist/core/agents/agent-orchestrator.js +11 -4
  11. package/dist/core/agents/agent-output-validator.js +1 -1
  12. package/dist/core/agents/agent-plan.js +3 -2
  13. package/dist/core/agents/native-cli-session-swarm.js +118 -0
  14. package/dist/core/agents/native-cli-worker.js +85 -0
  15. package/dist/core/codex-control/codex-fake-sdk-adapter.js +3 -3
  16. package/dist/core/codex-control/gpt-final-review-schema.js +61 -14
  17. package/dist/core/commands/basic-cli.js +1 -1
  18. package/dist/core/commands/command-suggestions.js +1 -1
  19. package/dist/core/commands/mad-db-command.js +106 -0
  20. package/dist/core/commands/mad-sks-command.js +50 -13
  21. package/dist/core/commands/naruto-command.js +82 -1
  22. package/dist/core/commands/research-command.js +83 -17
  23. package/dist/core/commands/team-command.js +25 -1
  24. package/dist/core/db-safety.js +26 -0
  25. package/dist/core/fsx.js +1 -1
  26. package/dist/core/mad-db/mad-db-capability.js +84 -0
  27. package/dist/core/mad-db/mad-db-ledger.js +17 -0
  28. package/dist/core/mad-db/mad-db-policy-resolver.js +46 -0
  29. package/dist/core/naruto/naruto-real-worker-child.js +11 -3
  30. package/dist/core/naruto/naruto-real-worker-runtime.js +4 -0
  31. package/dist/core/pipeline/final-gpt-patch-stage.js +20 -3
  32. package/dist/core/pipeline-internals/runtime-core.js +74 -8
  33. package/dist/core/pipeline-internals/runtime-gates.js +44 -0
  34. package/dist/core/proof/route-proof-gate.js +5 -3
  35. package/dist/core/proof/route-proof-policy.js +9 -1
  36. package/dist/core/release/release-gate-affected-selector.js +113 -0
  37. package/dist/core/release/release-gate-batch-runner.js +67 -0
  38. package/dist/core/release/release-gate-dag.js +22 -3
  39. package/dist/core/release/release-gate-resource-governor.js +23 -11
  40. package/dist/core/research/implementation-blueprint-densifier.js +124 -0
  41. package/dist/core/research/implementation-blueprint-markdown.js +1 -1
  42. package/dist/core/research/implementation-blueprint.js +68 -7
  43. package/dist/core/research/research-claim-builder.js +114 -0
  44. package/dist/core/research/research-cycle-runner.js +115 -11
  45. package/dist/core/research/research-final-reviewer.js +181 -1
  46. package/dist/core/research/research-handoff.js +69 -5
  47. package/dist/core/research/research-realistic-report.js +162 -0
  48. package/dist/core/research/research-repetition-detector.js +75 -0
  49. package/dist/core/research/research-report-quality.js +27 -5
  50. package/dist/core/research/research-source-ledger-merge.js +186 -0
  51. package/dist/core/research/research-source-shards.js +176 -0
  52. package/dist/core/research/research-stage-runner.js +537 -11
  53. package/dist/core/research/research-synthesis-prompt.js +52 -0
  54. package/dist/core/research/research-synthesis-writer.js +208 -0
  55. package/dist/core/research/research-work-graph.js +114 -23
  56. package/dist/core/research.js +72 -48
  57. package/dist/core/routes.js +23 -19
  58. package/dist/core/update/update-notice.js +120 -0
  59. package/dist/core/version.js +1 -1
  60. package/dist/core/zellij/zellij-dashboard-renderer.js +2 -0
  61. package/dist/core/zellij/zellij-slot-column-anchor.js +35 -1
  62. package/dist/core/zellij/zellij-slot-pane-renderer.js +57 -0
  63. package/dist/core/zellij/zellij-slot-telemetry.js +182 -0
  64. package/dist/scripts/release-gate-dag-runner.js +5 -0
  65. package/dist/scripts/release-speed-summary.js +25 -0
  66. package/package.json +67 -5
  67. package/schemas/codex/agent-result.schema.json +1 -1
  68. package/schemas/mad-db/mad-db-capability.schema.json +31 -0
  69. package/schemas/mad-db/mad-db-ledger.schema.json +14 -0
  70. package/schemas/research/implementation-blueprint.schema.json +6 -1
  71. package/schemas/research/research-final-review.schema.json +10 -0
  72. package/schemas/research/research-source-shard.schema.json +46 -0
  73. package/schemas/research/research-synthesis-output.schema.json +62 -0
  74. package/schemas/update/update-notice.schema.json +19 -0
  75. package/schemas/zellij/zellij-slot-telemetry.schema.json +89 -0
  76. package/dist/build-manifest.json +0 -1184
  77. package/dist/scripts/agent-ast-aware-work-graph-check.js +0 -25
  78. package/dist/scripts/agent-backfill-replenishment-check.js +0 -13
  79. package/dist/scripts/agent-backfill-route-blackbox.js +0 -5
  80. package/dist/scripts/agent-background-terminals-check.js +0 -16
  81. package/dist/scripts/agent-cleanup-command-ux-check.js +0 -12
  82. package/dist/scripts/agent-cleanup-executor-check.js +0 -53
  83. package/dist/scripts/agent-cleanup-executor-v2-check.js +0 -39
  84. package/dist/scripts/agent-cli-options-to-task-graph-check.js +0 -5
  85. package/dist/scripts/agent-codex-app-cockpit-check.js +0 -91
  86. package/dist/scripts/agent-codex-child-overlap-check.js +0 -21
  87. package/dist/scripts/agent-dynamic-cockpit-check.js +0 -10
  88. package/dist/scripts/agent-dynamic-pool-check.js +0 -13
  89. package/dist/scripts/agent-dynamic-pool-route-blackbox.js +0 -5
  90. package/dist/scripts/agent-fast-mode-default-check.js +0 -62
  91. package/dist/scripts/agent-fast-mode-worker-propagation-check.js +0 -7
  92. package/dist/scripts/agent-follow-up-work-schema-check.js +0 -80
  93. package/dist/scripts/agent-goal-mode-propagation-check.js +0 -9
  94. package/dist/scripts/agent-intelligent-work-graph-check.js +0 -25
  95. package/dist/scripts/agent-janitor-check.js +0 -76
  96. package/dist/scripts/agent-main-no-scout-check.js +0 -11
  97. package/dist/scripts/agent-model-authored-patch-envelope-check.js +0 -15
  98. package/dist/scripts/agent-multi-project-isolation-check.js +0 -86
  99. package/dist/scripts/agent-native-cli-session-proof-check.js +0 -7
  100. package/dist/scripts/agent-native-cli-session-swarm-10-check.js +0 -7
  101. package/dist/scripts/agent-native-cli-session-swarm-20-check.js +0 -7
  102. package/dist/scripts/agent-native-cli-session-swarm-check.js +0 -7
  103. package/dist/scripts/agent-no-subagent-scaling-check.js +0 -7
  104. package/dist/scripts/agent-parallel-write-blackbox.js +0 -56
  105. package/dist/scripts/agent-parallel-write-kernel-check.js +0 -103
  106. package/dist/scripts/agent-patch-conflict-rebase-check.js +0 -198
  107. package/dist/scripts/agent-patch-envelope-extraction-check.js +0 -17
  108. package/dist/scripts/agent-patch-proof-check.js +0 -41
  109. package/dist/scripts/agent-patch-proof-runtime-check.js +0 -63
  110. package/dist/scripts/agent-patch-queue-runtime-check.js +0 -36
  111. package/dist/scripts/agent-patch-rollback-check.js +0 -38
  112. package/dist/scripts/agent-patch-rollback-dag-check.js +0 -14
  113. package/dist/scripts/agent-patch-swarm-route-blackbox.js +0 -10
  114. package/dist/scripts/agent-patch-swarm-runtime-check.js +0 -10
  115. package/dist/scripts/agent-patch-swarm-runtime-truth-check.js +0 -76
  116. package/dist/scripts/agent-patch-transaction-journal-check.js +0 -57
  117. package/dist/scripts/agent-patch-verification-dag-check.js +0 -14
  118. package/dist/scripts/agent-proof-contract-reconciled-check.js +0 -5
  119. package/dist/scripts/agent-real-codex-dynamic-smoke-check.js +0 -166
  120. package/dist/scripts/agent-real-codex-dynamic-smoke-v2-check.js +0 -14
  121. package/dist/scripts/agent-real-codex-in-zellij-worker-pane-check.js +0 -229
  122. package/dist/scripts/agent-real-codex-parallel-workers-10-check.js +0 -5
  123. package/dist/scripts/agent-real-codex-parallel-workers-20-check.js +0 -5
  124. package/dist/scripts/agent-real-codex-parallel-workers-5-check.js +0 -5
  125. package/dist/scripts/agent-real-codex-parallel-workers-check.js +0 -5
  126. package/dist/scripts/agent-role-config-repair-check.js +0 -33
  127. package/dist/scripts/agent-rollback-command-check.js +0 -86
  128. package/dist/scripts/agent-route-truth-backfill-check.js +0 -5
  129. package/dist/scripts/agent-scheduler-proof-check.js +0 -13
  130. package/dist/scripts/agent-scheduler-proof-hardening-check.js +0 -22
  131. package/dist/scripts/agent-session-generation-check.js +0 -21
  132. package/dist/scripts/agent-slot-pane-binding-proof-check.js +0 -64
  133. package/dist/scripts/agent-source-intelligence-propagation-check.js +0 -9
  134. package/dist/scripts/agent-strategy-to-lease-wiring-check.js +0 -32
  135. package/dist/scripts/agent-strategy-to-patch-strict-check.js +0 -54
  136. package/dist/scripts/agent-task-graph-expansion-check.js +0 -14
  137. package/dist/scripts/agent-terminal-generations-check.js +0 -23
  138. package/dist/scripts/agent-visual-consistency-check.js +0 -9
  139. package/dist/scripts/agent-wiki-context-proof-check.js +0 -62
  140. package/dist/scripts/agent-worker-backend-router-check.js +0 -63
  141. package/dist/scripts/agent-worker-scout-limited-check.js +0 -17
  142. package/dist/scripts/agent-zellij-dynamic-backfill-panes-check.js +0 -34
  143. package/dist/scripts/agent-zellij-runtime-check.js +0 -84
  144. package/dist/scripts/all-feature-deep-completion-check.js +0 -31
  145. package/dist/scripts/appshots-capability-check.js +0 -18
  146. package/dist/scripts/appshots-evidence-check.js +0 -48
  147. package/dist/scripts/appshots-operator-policy-check.js +0 -25
  148. package/dist/scripts/appshots-privacy-safety-check.js +0 -48
  149. package/dist/scripts/appshots-source-intelligence-check.js +0 -53
  150. package/dist/scripts/appshots-thread-attachment-discovery-check.js +0 -87
  151. package/dist/scripts/appshots-triwiki-voxel-check.js +0 -46
  152. package/dist/scripts/architecture-guard-check.js +0 -55
  153. package/dist/scripts/changelog-check.js +0 -47
  154. package/dist/scripts/codex-0-133-official-compat-report.js +0 -53
  155. package/dist/scripts/codex-0-134-official-compat-report.js +0 -110
  156. package/dist/scripts/codex-0-134-runner-truth-check.js +0 -66
  157. package/dist/scripts/codex-0-135-compat-check.js +0 -57
  158. package/dist/scripts/codex-0-136-compat-check.js +0 -30
  159. package/dist/scripts/codex-0-137-compat-check.js +0 -27
  160. package/dist/scripts/codex-app-fast-ui-preservation-check.js +0 -32
  161. package/dist/scripts/codex-app-provider-badge-check.js +0 -37
  162. package/dist/scripts/codex-app-ui-clobber-guard-check.js +0 -22
  163. package/dist/scripts/codex-app-ui-preservation-check.js +0 -96
  164. package/dist/scripts/codex-control-all-pipelines-check.js +0 -36
  165. package/dist/scripts/codex-control-capability-check.js +0 -10
  166. package/dist/scripts/codex-control-empty-result-retry-check.js +0 -43
  167. package/dist/scripts/codex-control-event-stream-ledger-check.js +0 -10
  168. package/dist/scripts/codex-control-keepalive-no-cot-leak-check.js +0 -14
  169. package/dist/scripts/codex-control-no-legacy-fallback-check.js +0 -31
  170. package/dist/scripts/codex-control-side-effect-scope-check.js +0 -26
  171. package/dist/scripts/codex-control-stream-idle-watchdog-check.js +0 -18
  172. package/dist/scripts/codex-control-structured-output-check.js +0 -11
  173. package/dist/scripts/codex-control-thread-registry-check.js +0 -11
  174. package/dist/scripts/codex-control-tool-call-sequence-repair-check.js +0 -14
  175. package/dist/scripts/codex-environment-scoped-approvals-check.js +0 -10
  176. package/dist/scripts/codex-exec-output-schema-actual-syntax-check.js +0 -33
  177. package/dist/scripts/codex-fast-mode-profile-propagation-check.js +0 -12
  178. package/dist/scripts/codex-history-search-check.js +0 -19
  179. package/dist/scripts/codex-hook-semantic-check.js +0 -15
  180. package/dist/scripts/codex-hook-strict-subset-check.js +0 -61
  181. package/dist/scripts/codex-lb-config-toml-safety-check.js +0 -85
  182. package/dist/scripts/codex-lb-persistence-truth-check.js +0 -96
  183. package/dist/scripts/codex-lb-setup-fixture-check.js +0 -91
  184. package/dist/scripts/codex-lb-setup-truthfulness-check.js +0 -84
  185. package/dist/scripts/codex-legacy-profile-consumers-removed-check.js +0 -24
  186. package/dist/scripts/codex-managed-proxy-env-check.js +0 -17
  187. package/dist/scripts/codex-output-schema-fixture-check.js +0 -25
  188. package/dist/scripts/codex-permission-profiles-check.js +0 -36
  189. package/dist/scripts/codex-plugin-list-json-check.js +0 -8
  190. package/dist/scripts/codex-profile-primary-check.js +0 -13
  191. package/dist/scripts/codex-project-config-policy-splitter-check.js +0 -51
  192. package/dist/scripts/codex-resume-cwd-truth-check.js +0 -17
  193. package/dist/scripts/codex-sdk-all-pipelines-check.js +0 -32
  194. package/dist/scripts/codex-sdk-backend-router-check.js +0 -65
  195. package/dist/scripts/codex-sdk-capability-check.js +0 -11
  196. package/dist/scripts/codex-sdk-core-skill-pipeline-check.js +0 -9
  197. package/dist/scripts/codex-sdk-dfix-pipeline-check.js +0 -9
  198. package/dist/scripts/codex-sdk-event-stream-ledger-check.js +0 -9
  199. package/dist/scripts/codex-sdk-no-legacy-fallback-check.js +0 -33
  200. package/dist/scripts/codex-sdk-qa-pipeline-check.js +0 -8
  201. package/dist/scripts/codex-sdk-real-smoke-check.js +0 -39
  202. package/dist/scripts/codex-sdk-release-review-pipeline-check.js +0 -13
  203. package/dist/scripts/codex-sdk-research-pipeline-check.js +0 -15
  204. package/dist/scripts/codex-sdk-sandbox-policy-check.js +0 -21
  205. package/dist/scripts/codex-sdk-structured-output-check.js +0 -10
  206. package/dist/scripts/codex-sdk-team-naruto-agent-pipeline-check.js +0 -12
  207. package/dist/scripts/codex-sdk-thread-registry-check.js +0 -11
  208. package/dist/scripts/codex-sdk-ux-ppt-review-pipeline-check.js +0 -9
  209. package/dist/scripts/codex-sdk-zellij-pane-binding-check.js +0 -13
  210. package/dist/scripts/codex-thread-runtime-choice-check.js +0 -10
  211. package/dist/scripts/codex-web-adapter-check.js +0 -12
  212. package/dist/scripts/computer-use-live-evidence-check.js +0 -55
  213. package/dist/scripts/computer-use-live-optional-check.js +0 -32
  214. package/dist/scripts/computer-use-policy-check.js +0 -69
  215. package/dist/scripts/computer-use-visual-route-fixture-check.js +0 -37
  216. package/dist/scripts/core-skill-card-schema-check.js +0 -61
  217. package/dist/scripts/core-skill-deployment-snapshot-check.js +0 -54
  218. package/dist/scripts/core-skill-heldout-validation-check.js +0 -49
  219. package/dist/scripts/core-skill-no-inference-optimizer-check.js +0 -75
  220. package/dist/scripts/core-skill-patch-check.js +0 -79
  221. package/dist/scripts/core-skill-promotion-side-effect-ledger-check.js +0 -64
  222. package/dist/scripts/core-skill-rollout-scoring-check.js +0 -72
  223. package/dist/scripts/core-skill-route-runtime-integration-check.js +0 -49
  224. package/dist/scripts/dfix-fast-blackbox-check.js +0 -37
  225. package/dist/scripts/dfix-fast-kernel-check.js +0 -26
  226. package/dist/scripts/dfix-fixture-check.js +0 -6
  227. package/dist/scripts/dfix-parallel-write-blackbox.js +0 -48
  228. package/dist/scripts/dfix-patch-handoff-check.js +0 -13
  229. package/dist/scripts/dfix-patch-swarm-route-blackbox.js +0 -10
  230. package/dist/scripts/dfix-performance-check.js +0 -15
  231. package/dist/scripts/dfix-verification-check.js +0 -9
  232. package/dist/scripts/dfix-verification-recommendation-check.js +0 -15
  233. package/dist/scripts/docs-truthfulness-check.js +0 -61
  234. package/dist/scripts/doctor-codex-doctor-parity-check.js +0 -17
  235. package/dist/scripts/doctor-fix-proves-codex-read-check.js +0 -64
  236. package/dist/scripts/doctor-fix-recovers-corrupted-config-check.js +0 -122
  237. package/dist/scripts/doctor-fixes-codex-app-fast-ui-check.js +0 -39
  238. package/dist/scripts/evidence-fixture-check.js +0 -26
  239. package/dist/scripts/evidence-flagship-coverage-check.js +0 -55
  240. package/dist/scripts/fake-real-proof-policy-v2-check.js +0 -27
  241. package/dist/scripts/fake-vs-real-proof-policy-check.js +0 -14
  242. package/dist/scripts/fast-codex-service-tier-proof-check.js +0 -42
  243. package/dist/scripts/flagship-proof-graph-v2-check.js +0 -48
  244. package/dist/scripts/flagship-proof-graph-v3-check.js +0 -67
  245. package/dist/scripts/flagship-proof-graph-v4-check.js +0 -61
  246. package/dist/scripts/git-precommit-fixture-check.js +0 -41
  247. package/dist/scripts/git-worktree-cache-performance-check.js +0 -25
  248. package/dist/scripts/git-worktree-capability-check.js +0 -27
  249. package/dist/scripts/git-worktree-checkpoint-check.js +0 -20
  250. package/dist/scripts/git-worktree-cleanup-check.js +0 -27
  251. package/dist/scripts/git-worktree-cross-rebase-check.js +0 -39
  252. package/dist/scripts/git-worktree-diff-envelope-check.js +0 -17
  253. package/dist/scripts/git-worktree-diff-export-check.js +0 -43
  254. package/dist/scripts/git-worktree-dirty-lock-check.js +0 -17
  255. package/dist/scripts/git-worktree-dirty-main-detection-check.js +0 -14
  256. package/dist/scripts/git-worktree-integration-primary-check.js +0 -24
  257. package/dist/scripts/git-worktree-integration-primary-runtime-check.js +0 -20
  258. package/dist/scripts/git-worktree-manager-check.js +0 -37
  259. package/dist/scripts/git-worktree-manifest-append-check.js +0 -18
  260. package/dist/scripts/git-worktree-merge-queue-check.js +0 -31
  261. package/dist/scripts/git-worktree-pool-performance-check.js +0 -20
  262. package/dist/scripts/git-worktree-untracked-diff-check.js +0 -18
  263. package/dist/scripts/goal-mode-official-default-check.js +0 -12
  264. package/dist/scripts/gpt-final-arbiter-check.js +0 -63
  265. package/dist/scripts/gpt-final-arbiter-performance-check.js +0 -36
  266. package/dist/scripts/gpt-image-2-request-validator-check.js +0 -35
  267. package/dist/scripts/hooks-0.134-context-parity-check.js +0 -20
  268. package/dist/scripts/hooks-actual-parity-check.js +0 -17
  269. package/dist/scripts/hooks-actual-parity-v2-check.js +0 -21
  270. package/dist/scripts/hooks-latest-schema-check.js +0 -20
  271. package/dist/scripts/hooks-managed-install-fixture-check.js +0 -21
  272. package/dist/scripts/hooks-official-hash-oracle-check.js +0 -35
  273. package/dist/scripts/hooks-official-hash-parity-check.js +0 -17
  274. package/dist/scripts/hooks-subagent-events-check.js +0 -17
  275. package/dist/scripts/hooks-trust-state-check.js +0 -14
  276. package/dist/scripts/image-fidelity-fixture-check.js +0 -24
  277. package/dist/scripts/imagegen-capability-check.js +0 -30
  278. package/dist/scripts/imagegen-real-smoke-check.js +0 -155
  279. package/dist/scripts/install-update-preserves-config-check.js +0 -87
  280. package/dist/scripts/json-schema-recursive-check.js +0 -78
  281. package/dist/scripts/legacy-multiagent-removal-check.js +0 -85
  282. package/dist/scripts/legacy-upgrade-matrix-check.js +0 -300
  283. package/dist/scripts/local-collab-all-pipelines-final-gpt-check.js +0 -21
  284. package/dist/scripts/local-collab-gpt-final-availability-check.js +0 -58
  285. package/dist/scripts/local-collab-no-local-only-final-check.js +0 -27
  286. package/dist/scripts/local-collab-policy-check.js +0 -17
  287. package/dist/scripts/local-collab-worktree-gpt-final-apply-policy-check.js +0 -63
  288. package/dist/scripts/local-llm-all-pipelines-check.js +0 -11
  289. package/dist/scripts/local-llm-cache-performance-check.js +0 -10
  290. package/dist/scripts/local-llm-capability-check.js +0 -14
  291. package/dist/scripts/local-llm-smoke-check.js +0 -23
  292. package/dist/scripts/local-llm-structured-output-check.js +0 -11
  293. package/dist/scripts/local-llm-throughput-check.js +0 -10
  294. package/dist/scripts/local-llm-tool-call-repair-check.js +0 -10
  295. package/dist/scripts/local-llm-warmup-check.js +0 -11
  296. package/dist/scripts/loop-blocker-check.js +0 -15
  297. package/dist/scripts/mad-preflight-blocks-unreadable-config-check.js +0 -35
  298. package/dist/scripts/mad-sks-actual-executor-blackbox.js +0 -5
  299. package/dist/scripts/mad-sks-app-ui-no-mutation-check.js +0 -92
  300. package/dist/scripts/mad-sks-audit-proof-check.js +0 -34
  301. package/dist/scripts/mad-sks-db-executor-check.js +0 -5
  302. package/dist/scripts/mad-sks-executor-proof-graph-check.js +0 -5
  303. package/dist/scripts/mad-sks-fast-mode-propagation-check.js +0 -24
  304. package/dist/scripts/mad-sks-file-write-executor-check.js +0 -5
  305. package/dist/scripts/mad-sks-immutable-harness-check.js +0 -36
  306. package/dist/scripts/mad-sks-no-harness-modification-check.js +0 -25
  307. package/dist/scripts/mad-sks-package-executor-check.js +0 -5
  308. package/dist/scripts/mad-sks-permission-model-check.js +0 -22
  309. package/dist/scripts/mad-sks-rollback-apply-check.js +0 -5
  310. package/dist/scripts/mad-sks-service-executor-check.js +0 -5
  311. package/dist/scripts/mad-sks-shell-executor-check.js +0 -5
  312. package/dist/scripts/mad-sks-write-guard-check.js +0 -28
  313. package/dist/scripts/mad-sks-zellij-default-pane-worker-check.js +0 -37
  314. package/dist/scripts/mad-sks-zellij-launch-check.js +0 -102
  315. package/dist/scripts/mcp-0-134-modernization-check.js +0 -55
  316. package/dist/scripts/mcp-readonly-concurrency-check.js +0 -17
  317. package/dist/scripts/mcp-readonly-runtime-scheduler-check.js +0 -20
  318. package/dist/scripts/mcp-tool-naming-parity-check.js +0 -16
  319. package/dist/scripts/memory-summary-rebuild-check.js +0 -22
  320. package/dist/scripts/mutation-callsite-coverage-check.js +0 -180
  321. package/dist/scripts/naruto-active-pool-check.js +0 -39
  322. package/dist/scripts/naruto-actual-worker-control-plane-check.js +0 -56
  323. package/dist/scripts/naruto-allocation-policy-check.js +0 -33
  324. package/dist/scripts/naruto-allocation-runtime-wiring-check.js +0 -92
  325. package/dist/scripts/naruto-concurrency-governor-check.js +0 -53
  326. package/dist/scripts/naruto-extreme-parallelism-check.js +0 -22
  327. package/dist/scripts/naruto-extreme-parallelism-real-check.js +0 -43
  328. package/dist/scripts/naruto-gpt-final-pack-check.js +0 -34
  329. package/dist/scripts/naruto-orchestrator-runtime-source-check.js +0 -70
  330. package/dist/scripts/naruto-parallel-patch-apply-check.js +0 -41
  331. package/dist/scripts/naruto-readonly-routing-check.js +0 -116
  332. package/dist/scripts/naruto-real-active-pool-check.js +0 -39
  333. package/dist/scripts/naruto-real-active-pool-runtime-check.js +0 -55
  334. package/dist/scripts/naruto-rebalance-policy-check.js +0 -41
  335. package/dist/scripts/naruto-role-distribution-check.js +0 -23
  336. package/dist/scripts/naruto-shadow-clone-swarm-check.js +0 -153
  337. package/dist/scripts/naruto-verification-pool-check.js +0 -36
  338. package/dist/scripts/naruto-work-graph-check.js +0 -24
  339. package/dist/scripts/naruto-worktree-coding-blackbox.js +0 -29
  340. package/dist/scripts/naruto-worktree-coding-check.js +0 -44
  341. package/dist/scripts/naruto-worktree-gpt-final-check.js +0 -45
  342. package/dist/scripts/naruto-worktree-zellij-ui-check.js +0 -28
  343. package/dist/scripts/naruto-zellij-dynamic-right-column-check.js +0 -48
  344. package/dist/scripts/naruto-zellij-massive-ui-check.js +0 -23
  345. package/dist/scripts/non-recursive-pipeline-check.js +0 -68
  346. package/dist/scripts/npm-publish-performance-check.js +0 -65
  347. package/dist/scripts/official-docs-compat-report.js +0 -304
  348. package/dist/scripts/packlist-performance-check.js +0 -83
  349. package/dist/scripts/parallel-verification-engine-check.js +0 -85
  350. package/dist/scripts/postinstall-safe-side-effects-check.js +0 -65
  351. package/dist/scripts/ppt-full-e2e-artifact-graph-check.js +0 -40
  352. package/dist/scripts/ppt-full-e2e-blackbox-check.js +0 -109
  353. package/dist/scripts/ppt-image-voxel-relations-check.js +0 -9
  354. package/dist/scripts/ppt-imagegen-blackbox-check.js +0 -46
  355. package/dist/scripts/ppt-imagegen-review-fixture-check.js +0 -6
  356. package/dist/scripts/ppt-issue-extraction-fixture-check.js +0 -7
  357. package/dist/scripts/ppt-no-mock-as-real-check.js +0 -8
  358. package/dist/scripts/ppt-no-text-fallback-check.js +0 -7
  359. package/dist/scripts/ppt-proof-trust-fixture-check.js +0 -10
  360. package/dist/scripts/ppt-real-export-adapter-check.js +0 -13
  361. package/dist/scripts/ppt-real-imagegen-smoke-check.js +0 -42
  362. package/dist/scripts/ppt-real-imagegen-wiring-check.js +0 -16
  363. package/dist/scripts/ppt-reexport-rereview-check.js +0 -19
  364. package/dist/scripts/ppt-slide-export-fixture-check.js +0 -7
  365. package/dist/scripts/prepublish-fast-check.js +0 -128
  366. package/dist/scripts/priority-full-closure-check.js +0 -12
  367. package/dist/scripts/product-design-auto-install-check.js +0 -119
  368. package/dist/scripts/product-design-plugin-routing-check.js +0 -101
  369. package/dist/scripts/prompt-placeholder-guard-check.js +0 -33
  370. package/dist/scripts/provider-badge-context-check.js +0 -26
  371. package/dist/scripts/provider-context-config-toml-check.js +0 -63
  372. package/dist/scripts/python-codex-sdk-all-pipelines-check.js +0 -47
  373. package/dist/scripts/python-codex-sdk-capability-check.js +0 -75
  374. package/dist/scripts/python-codex-sdk-sandbox-policy-check.js +0 -10
  375. package/dist/scripts/python-codex-sdk-stream-bridge-check.js +0 -12
  376. package/dist/scripts/python-tools-smoke-check.js +0 -71
  377. package/dist/scripts/qa-actual-route-backfill-check.js +0 -5
  378. package/dist/scripts/qa-backfill-route-blackbox.js +0 -5
  379. package/dist/scripts/qa-patch-swarm-route-blackbox.js +0 -10
  380. package/dist/scripts/readme-architecture-imagegen-official-check.js +0 -448
  381. package/dist/scripts/release-cache-glob-hashing-check.js +0 -42
  382. package/dist/scripts/release-dag-full-coverage-check.js +0 -53
  383. package/dist/scripts/release-dist-freshness-check.js +0 -8
  384. package/dist/scripts/release-dynamic-performance-check.js +0 -103
  385. package/dist/scripts/release-gate-budget-check.js +0 -36
  386. package/dist/scripts/release-gate-dag-runner-check.js +0 -17
  387. package/dist/scripts/release-metadata-1-11-check.js +0 -37
  388. package/dist/scripts/release-metadata-1-12-check.js +0 -48
  389. package/dist/scripts/release-metadata-1-13-check.js +0 -53
  390. package/dist/scripts/release-metadata-1-14-check.js +0 -63
  391. package/dist/scripts/release-metadata-1-16-check.js +0 -81
  392. package/dist/scripts/release-metadata-1-17-check.js +0 -51
  393. package/dist/scripts/release-metadata-1-19-check.js +0 -371
  394. package/dist/scripts/release-metadata-check.js +0 -7
  395. package/dist/scripts/release-native-agent-fixture-check.js +0 -41
  396. package/dist/scripts/release-parallel-check.js +0 -374
  397. package/dist/scripts/release-parallel-full-coverage-check.js +0 -13
  398. package/dist/scripts/release-parallel-speed-budget-check.js +0 -79
  399. package/dist/scripts/release-provenance-check.js +0 -150
  400. package/dist/scripts/release-readiness-report.js +0 -1146
  401. package/dist/scripts/release-real-check.js +0 -330
  402. package/dist/scripts/release-registry-check.js +0 -344
  403. package/dist/scripts/release-runtime-truth-matrix-check.js +0 -47
  404. package/dist/scripts/release-stability-report-check.js +0 -99
  405. package/dist/scripts/release-version-truth-check.js +0 -134
  406. package/dist/scripts/research-actual-route-backfill-check.js +0 -5
  407. package/dist/scripts/research-backfill-route-blackbox.js +0 -5
  408. package/dist/scripts/research-quality-gate-check.js +0 -86
  409. package/dist/scripts/responses-retry-policy-centralized-check.js +0 -19
  410. package/dist/scripts/retention-cleanup-safety-check.js +0 -155
  411. package/dist/scripts/route-blackbox-realism-check.js +0 -21
  412. package/dist/scripts/route-proof-artifact-structure-check.js +0 -145
  413. package/dist/scripts/runtime-dist-parity-check.js +0 -78
  414. package/dist/scripts/runtime-no-mjs-scripts-check.js +0 -45
  415. package/dist/scripts/runtime-no-src-mjs-check.js +0 -32
  416. package/dist/scripts/runtime-no-tmux-check.js +0 -113
  417. package/dist/scripts/runtime-ts-python-boundary-check.js +0 -59
  418. package/dist/scripts/runtime-ts-rust-boundary-check.js +0 -74
  419. package/dist/scripts/runtime-ts-source-of-truth-check.js +0 -55
  420. package/dist/scripts/safety-check.js +0 -23
  421. package/dist/scripts/shared-memory-fixture-check.js +0 -27
  422. package/dist/scripts/side-effect-runtime-report-check.js +0 -19
  423. package/dist/scripts/side-effect-zero-gate-check.js +0 -226
  424. package/dist/scripts/sks-1-11-fixture-check.js +0 -130
  425. package/dist/scripts/source-intelligence-all-modes-check.js +0 -32
  426. package/dist/scripts/source-intelligence-policy-check.js +0 -13
  427. package/dist/scripts/strategy-adhd-orchestrating-gate-check.js +0 -22
  428. package/dist/scripts/strategy-file-ownership-plan-check.js +0 -18
  429. package/dist/scripts/strategy-parallel-modification-plan-check.js +0 -19
  430. package/dist/scripts/strategy-verification-rollback-dag-check.js +0 -19
  431. package/dist/scripts/team-actual-route-backfill-check.js +0 -5
  432. package/dist/scripts/team-backfill-route-blackbox.js +0 -5
  433. package/dist/scripts/team-parallel-write-blackbox.js +0 -55
  434. package/dist/scripts/team-patch-swarm-route-blackbox.js +0 -10
  435. package/dist/scripts/terminal-keyboard-enhancement-safety-check.js +0 -12
  436. package/dist/scripts/terminal-tui-output-stability-check.js +0 -35
  437. package/dist/scripts/test-no-orphan-dist-imports-check.js +0 -73
  438. package/dist/scripts/trust-fixture-check.js +0 -33
  439. package/dist/scripts/typescript-migration-report.js +0 -78
  440. package/dist/scripts/ultra-router-auto-router-check.js +0 -33
  441. package/dist/scripts/ultra-router-classification-check.js +0 -28
  442. package/dist/scripts/ux-patch-swarm-route-blackbox.js +0 -10
  443. package/dist/scripts/ux-ppt-structured-extraction-check.js +0 -21
  444. package/dist/scripts/ux-review-extract-real-callouts-fixture-check.js +0 -8
  445. package/dist/scripts/ux-review-extract-wires-real-extractor-check.js +0 -15
  446. package/dist/scripts/ux-review-generate-callouts-fixture-check.js +0 -9
  447. package/dist/scripts/ux-review-image-voxel-relations-check.js +0 -31
  448. package/dist/scripts/ux-review-imagegen-blackbox-check.js +0 -67
  449. package/dist/scripts/ux-review-no-fake-callouts-check.js +0 -8
  450. package/dist/scripts/ux-review-no-text-fallback-check.js +0 -25
  451. package/dist/scripts/ux-review-patch-diff-recheck-check.js +0 -20
  452. package/dist/scripts/ux-review-patch-handoff-fixture-check.js +0 -8
  453. package/dist/scripts/ux-review-real-imagegen-smoke-check.js +0 -31
  454. package/dist/scripts/ux-review-real-loop-fixture-check.js +0 -24
  455. package/dist/scripts/ux-review-recapture-recheck-fixture-check.js +0 -8
  456. package/dist/scripts/ux-review-run-wires-imagegen-check.js +0 -11
  457. package/dist/scripts/worker-pane-communication-contract-check.js +0 -54
  458. package/dist/scripts/wrongness-fixture-check.js +0 -65
  459. package/dist/scripts/xai-mcp-capability-check.js +0 -14
  460. package/dist/scripts/zellij-capability-check.js +0 -15
  461. package/dist/scripts/zellij-dashboard-pane-check.js +0 -70
  462. package/dist/scripts/zellij-developer-controls-check.js +0 -20
  463. package/dist/scripts/zellij-doctor-readiness-check.js +0 -63
  464. package/dist/scripts/zellij-dynamic-pane-lifecycle-check.js +0 -21
  465. package/dist/scripts/zellij-first-slot-down-stack-check.js +0 -20
  466. package/dist/scripts/zellij-first-slot-down-stack-real-check.js +0 -356
  467. package/dist/scripts/zellij-initial-main-only-blackbox.js +0 -28
  468. package/dist/scripts/zellij-lane-renderer-check.js +0 -65
  469. package/dist/scripts/zellij-launch-command-truth-check.js +0 -75
  470. package/dist/scripts/zellij-layout-valid-check.js +0 -90
  471. package/dist/scripts/zellij-pane-proof-check.js +0 -59
  472. package/dist/scripts/zellij-real-session-cleanup-check.js +0 -21
  473. package/dist/scripts/zellij-real-session-heartbeat-check.js +0 -49
  474. package/dist/scripts/zellij-real-session-launch-check.js +0 -57
  475. package/dist/scripts/zellij-right-column-headless-overflow-check.js +0 -22
  476. package/dist/scripts/zellij-right-column-manager-check.js +0 -27
  477. package/dist/scripts/zellij-screen-proof-check.js +0 -45
  478. package/dist/scripts/zellij-slot-column-anchor-check.js +0 -66
  479. package/dist/scripts/zellij-slot-only-ui-check.js +0 -26
  480. package/dist/scripts/zellij-slot-pane-renderer-check.js +0 -106
  481. package/dist/scripts/zellij-slot-renderer-proof-semantics-check.js +0 -59
  482. package/dist/scripts/zellij-spawn-on-demand-layout-check.js +0 -40
  483. package/dist/scripts/zellij-ui-design-check.js +0 -105
  484. package/dist/scripts/zellij-worker-pane-manager-check.js +0 -109
  485. package/dist/scripts/zellij-worker-pane-manager-single-owner-check.js +0 -47
  486. package/dist/scripts/zellij-worker-pane-real-ui-blackbox.js +0 -202
  487. package/dist/scripts/zellij-worker-pane-spawn-order-check.js +0 -35
  488. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/permission-request.command.input.schema.json +0 -61
  489. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/permission-request.command.output.schema.json +0 -103
  490. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/post-compact.command.input.schema.json +0 -52
  491. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/post-compact.command.output.schema.json +0 -24
  492. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/post-tool-use.command.input.schema.json +0 -67
  493. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/post-tool-use.command.output.schema.json +0 -84
  494. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/pre-compact.command.input.schema.json +0 -52
  495. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/pre-compact.command.output.schema.json +0 -24
  496. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/pre-tool-use.command.input.schema.json +0 -65
  497. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/pre-tool-use.command.output.schema.json +0 -105
  498. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/session-start.command.input.schema.json +0 -59
  499. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/session-start.command.output.schema.json +0 -63
  500. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/snapshot-metadata.json +0 -31
  501. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/stop.command.input.schema.json +0 -63
  502. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/stop.command.output.schema.json +0 -45
  503. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/user-prompt-submit.command.input.schema.json +0 -59
  504. package/dist/vendor/openai-codex/rust-v0.131.0/hooks/user-prompt-submit.command.output.schema.json +0 -81
@@ -1,300 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- // Gate: legacy:upgrade-zero-break
4
- // Proves a 1.18.x -> 1.19 upgrade never breaks user Codex config across legacy
5
- // states. Operates entirely on temp dirs (os.tmpdir + fs.mkdtemp); never touches
6
- // the real ~/.codex. Always restores process.env.CODEX_HOME / HOME in finally.
7
- import fs from 'node:fs';
8
- import os from 'node:os';
9
- import path from 'node:path';
10
- import { spawnSync } from 'node:child_process';
11
- import { root, assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
12
- const policy = await importDist('core/codex/codex-project-config-policy.js');
13
- const install = await importDist('cli/install-helpers.js');
14
- const journal = await importDist('core/migration/migration-transaction-journal.js');
15
- const skillCard = await importDist('core/skills/core-skill-card.js');
16
- const skillDeployment = await importDist('core/skills/core-skill-deployment.js');
17
- const { createRequestedScopeContract } = await importDist('core/safety/requested-scope-contract.js');
18
- function mkTmp(prefix) {
19
- return fs.mkdtempSync(path.join(os.tmpdir(), prefix));
20
- }
21
- function rmTmp(dir) {
22
- try {
23
- fs.rmSync(dir, { recursive: true, force: true });
24
- }
25
- catch {
26
- // best-effort cleanup; never fail the gate on teardown
27
- }
28
- }
29
- const tmpDirs = [];
30
- const savedCodexHome = process.env.CODEX_HOME;
31
- const savedHome = process.env.HOME;
32
- const summary = { states: {}, generated_at: new Date().toISOString() };
33
- try {
34
- // ---------------------------------------------------------------------------
35
- // State 6 — corrupted config (machine-local key absorbed into a TOML table).
36
- // The pre-fix mover appended top-level machine-local keys after the last
37
- // [table], so TOML absorbed them into that table. repairCodexConfigStructure
38
- // hoists them back above the first table header.
39
- // ---------------------------------------------------------------------------
40
- {
41
- const dir = mkTmp('sks-legacy-corrupt-');
42
- tmpDirs.push(dir);
43
- const configPath = path.join(dir, 'config.toml');
44
- const corrupted = 'model = "gpt-5.5"\nservice_tier = "fast"\n\n[mcp_servers.xai-grok.env]\nXAI_API_KEY = "x"\nmodel_provider = "codex-lb"\nnotify = ["a","b"]\n';
45
- fs.writeFileSync(configPath, corrupted, 'utf8');
46
- const result = await policy.repairCodexConfigStructure(configPath, { apply: true });
47
- const okStatuses = ['structure_repaired', 'structure_repair_available', 'structure_ok'];
48
- assertGate(okStatuses.includes(result.status), 'corrupted_config: repair status not recognized', { status: result.status, expected: okStatuses });
49
- // If it hoisted, a backup must exist on disk.
50
- if (result.status === 'structure_repaired') {
51
- assertGate(Boolean(result.backup_path) && fs.existsSync(result.backup_path), 'corrupted_config: repaired but no backup file on disk', { backup_path: result.backup_path });
52
- }
53
- // Tolerant structural check: either the keys were hoisted ABOVE the first
54
- // table header, or the structure was already ok.
55
- const repaired = fs.readFileSync(configPath, 'utf8');
56
- const firstTableIdx = repaired.indexOf('\n[');
57
- const headRegion = firstTableIdx === -1 ? repaired : repaired.slice(0, firstTableIdx);
58
- const hoisted = /^\s*model_provider\s*=/m.test(headRegion) && /^\s*notify\s*=/m.test(headRegion);
59
- assertGate(hoisted || result.status === 'structure_ok', 'corrupted_config: machine-local keys were not hoisted above the first table', { status: result.status, head_region: headRegion });
60
- summary.states.corrupted_config = {
61
- status: result.status,
62
- hoisted_keys: result.hoisted_keys || [],
63
- backup_present: Boolean(result.backup_path)
64
- };
65
- }
66
- // ---------------------------------------------------------------------------
67
- // States 1-4 — user global config preserved + user-disabled flags not
68
- // re-enabled. ensureGlobalCodexFastModeDuringInstall reads the Codex home
69
- // config (HOME/.codex/config.toml; honors opts.home). It is set-if-absent and
70
- // backs up the prior good config before any mutation.
71
- // ---------------------------------------------------------------------------
72
- {
73
- const tmpHome = mkTmp('sks-legacy-home-');
74
- tmpDirs.push(tmpHome);
75
- const codexDir = path.join(tmpHome, '.codex');
76
- fs.mkdirSync(codexDir, { recursive: true });
77
- const configPath = path.join(codexDir, 'config.toml');
78
- const userConfig = 'model = "o3"\nservice_tier = "flex"\nmodel_reasoning_effort = "high"\n\n[features]\nbrowser_use = false\n\n# user comment\n';
79
- fs.writeFileSync(configPath, userConfig, 'utf8');
80
- process.env.CODEX_HOME = tmpHome;
81
- process.env.HOME = tmpHome;
82
- const result = await install.ensureGlobalCodexFastModeDuringInstall({ home: tmpHome });
83
- const after = fs.readFileSync(configPath, 'utf8');
84
- assertGate(after.includes('model = "o3"'), 'user_config_preserved: user model was overwritten', { status: result.status });
85
- assertGate(after.includes('service_tier = "flex"'), 'user_config_preserved: user service_tier was overwritten', { status: result.status });
86
- assertGate(after.includes('model_reasoning_effort = "high"'), 'user_config_preserved: user model_reasoning_effort was overwritten', { status: result.status });
87
- // User-disabled feature must NOT be re-enabled (set-if-absent only).
88
- assertGate(after.includes('browser_use = false'), 'flags_not_reenabled: user-disabled browser_use was re-enabled', { status: result.status });
89
- // When the managed defaults were applied, the prior good config must be
90
- // backed up to a sibling config.toml.*bak file.
91
- if (result.status === 'updated') {
92
- const siblings = fs.readdirSync(codexDir);
93
- const backup = siblings.find((name) => /config\.toml\..*bak/.test(name));
94
- assertGate(Boolean(backup), 'user_config_preserved: status=updated but no backup file written', { siblings });
95
- summary.states.user_config_preserved = { status: result.status, backup: backup };
96
- }
97
- else {
98
- summary.states.user_config_preserved = { status: result.status };
99
- }
100
- summary.states.flags_not_reenabled = { browser_use_preserved: true };
101
- // Restore env immediately after this state to avoid leaking into spawns.
102
- if (savedCodexHome === undefined)
103
- delete process.env.CODEX_HOME;
104
- else
105
- process.env.CODEX_HOME = savedCodexHome;
106
- if (savedHome === undefined)
107
- delete process.env.HOME;
108
- else
109
- process.env.HOME = savedHome;
110
- }
111
- // ---------------------------------------------------------------------------
112
- // State 6b — splitter preserves project keys. The project config keeps its
113
- // own [profiles.*] table; only machine-local top-level keys are moved out.
114
- // ---------------------------------------------------------------------------
115
- {
116
- const projectRoot = mkTmp('sks-legacy-project-');
117
- const tmpHome2 = mkTmp('sks-legacy-home2-');
118
- tmpDirs.push(projectRoot, tmpHome2);
119
- const projectCodexDir = path.join(projectRoot, '.codex');
120
- fs.mkdirSync(projectCodexDir, { recursive: true });
121
- const projectConfigPath = path.join(projectCodexDir, 'config.toml');
122
- // Machine-local keys/tables (model_provider, [profiles.*]) move out to CODEX_HOME;
123
- // project-scoped settings (sandbox_mode, [features]) must be PRESERVED in place.
124
- fs.writeFileSync(projectConfigPath, 'model_provider = "codex-lb"\nsandbox_mode = "workspace-write"\n\n[features]\nhooks = true\n', 'utf8');
125
- const result = await policy.splitCodexProjectConfigPolicy(projectRoot, {
126
- apply: true,
127
- codexHome: tmpHome2,
128
- writeReport: false
129
- });
130
- const projectAfter = fs.readFileSync(projectConfigPath, 'utf8');
131
- assertGate(projectAfter.includes('sandbox_mode = "workspace-write"'), 'splitter_preserves_project: project-scoped sandbox_mode was removed', { status: result.status, project_after: projectAfter });
132
- assertGate(projectAfter.includes('[features]'), 'splitter_preserves_project: project-scoped [features] table was removed', { status: result.status, project_after: projectAfter });
133
- assertGate(!/^\s*model_provider\s*=/m.test(projectAfter), 'splitter_preserves_project: machine-local model_provider was not moved out of the project config', { status: result.status, project_after: projectAfter });
134
- summary.states.splitter_preserves_project = {
135
- status: result.status,
136
- moved_keys: result.moved_keys || [],
137
- moved_tables: result.moved_tables || []
138
- };
139
- }
140
- // ---------------------------------------------------------------------------
141
- // State 7/10 — tmux is a removed runtime; zellij status is informational.
142
- // Spawn the built CLI from the repo root.
143
- // ---------------------------------------------------------------------------
144
- {
145
- const tmux = spawnSync(process.execPath, ['dist/bin/sks.js', 'tmux', '--json'], {
146
- cwd: root,
147
- encoding: 'utf8'
148
- });
149
- let tmuxJson;
150
- try {
151
- tmuxJson = JSON.parse(tmux.stdout);
152
- }
153
- catch (err) {
154
- assertGate(false, 'tmux_removed_runtime: stdout is not valid JSON', {
155
- stdout: tmux.stdout,
156
- stderr: tmux.stderr,
157
- error: String(err)
158
- });
159
- }
160
- assertGate(tmuxJson.status === 'removed_runtime' && tmuxJson.replacement === 'zellij', 'tmux_removed_runtime: tmux did not report removed_runtime -> zellij', { json: tmuxJson });
161
- assertGate(tmux.status === 2, 'tmux_removed_runtime: tmux exit code must be 2', { exit: tmux.status });
162
- summary.states.tmux_removed_runtime = {
163
- status: tmuxJson.status,
164
- replacement: tmuxJson.replacement,
165
- exit: tmux.status
166
- };
167
- const zj = spawnSync(process.execPath, ['dist/bin/sks.js', 'zellij', 'status', '--json'], {
168
- cwd: root,
169
- encoding: 'utf8'
170
- });
171
- let zjJson;
172
- try {
173
- zjJson = JSON.parse(zj.stdout);
174
- }
175
- catch (err) {
176
- assertGate(false, 'zellij_status_informational: stdout is not valid JSON', {
177
- stdout: zj.stdout,
178
- stderr: zj.stderr,
179
- error: String(err)
180
- });
181
- }
182
- assertGate(Object.prototype.hasOwnProperty.call(zjJson, 'status'), 'zellij_status_informational: missing status field', { json: zjJson });
183
- // Informational status must not hard-fail when zellij is missing.
184
- assertGate(zjJson.ok === true, 'zellij_status_informational: informational status hard-failed (ok !== true)', { json: zjJson });
185
- summary.states.zellij_status_informational = { status: zjJson.status, ok: zjJson.ok };
186
- }
187
- // ---------------------------------------------------------------------------
188
- // Migration journal contract — before/after hash, change + rollback flags.
189
- // ---------------------------------------------------------------------------
190
- {
191
- const ev = journal.buildMigrationEvent({
192
- step: 't',
193
- target: '/x/config.toml',
194
- before: 'a',
195
- after: 'b',
196
- backupPath: '/x/config.toml.bak'
197
- });
198
- assertGate(Boolean(ev.before_hash) &&
199
- Boolean(ev.after_hash) &&
200
- ev.before_hash !== ev.after_hash &&
201
- ev.changed === true &&
202
- ev.rollback_available === true &&
203
- ev.backup_path === '/x/config.toml.bak', 'migration_journal: mutated event contract failed', { event: ev });
204
- const ev2 = journal.buildMigrationEvent({ step: 't', target: '/x', before: 'a', after: 'a' });
205
- assertGate(ev2.changed === false && ev2.rollback_available === false, 'migration_journal: no-op event contract failed', { event: ev2 });
206
- summary.states.migration_journal = { mutated: true, noop: true };
207
- }
208
- // ---------------------------------------------------------------------------
209
- // State 1.19.x_zellij_project_noop — a clean 1.19.x config (no machine-local
210
- // issues) is a no-op for the upgrade. repairCodexConfigStructure returns
211
- // 'structure_ok' and the file is byte-identical afterwards.
212
- // ---------------------------------------------------------------------------
213
- {
214
- const dir = mkTmp('sks-legacy-noop-');
215
- tmpDirs.push(dir);
216
- const configPath = path.join(dir, 'config.toml');
217
- const clean = 'model = "gpt-5.5"\nservice_tier = "fast"\n\n[features]\nhooks = true\n';
218
- fs.writeFileSync(configPath, clean, 'utf8');
219
- const before = fs.readFileSync(configPath, 'utf8');
220
- const result = await policy.repairCodexConfigStructure(configPath, { apply: true });
221
- assertGate(result.status === 'structure_ok', '1.19.x_zellij_project_noop: clean config did not report structure_ok', { status: result.status });
222
- const after = fs.readFileSync(configPath, 'utf8');
223
- assertGate(after === before, '1.19.x_zellij_project_noop: clean config was modified by a no-op upgrade', { before, after });
224
- assertGate(result.changed === false && result.applied === false && !result.backup_path, '1.19.x_zellij_project_noop: no-op upgrade reported a change/backup', { changed: result.changed, applied: result.applied, backup_path: result.backup_path });
225
- summary.states['1.19.x_zellij_project_noop'] = {
226
- status: result.status,
227
- changed: result.changed,
228
- byte_identical: true
229
- };
230
- }
231
- // ---------------------------------------------------------------------------
232
- // State existing_skill_cards_preserved — an upgrade never clobbers existing
233
- // deployed skill cards. Deploy an accepted card, then read it back twice and
234
- // assert the deployed snapshot's body_hash is byte-preserved across the
235
- // simulated "upgrade read".
236
- // ---------------------------------------------------------------------------
237
- {
238
- const skillRootDir = mkTmp('sks-legacy-skill-');
239
- tmpDirs.push(skillRootDir);
240
- const candidate = skillCard.createCandidateCard({
241
- skillId: 'legacy-skill',
242
- route: 'DFix',
243
- baseVersion: 0,
244
- body: '## Goal\nx\n'
245
- });
246
- const accepted = { ...candidate, status: 'accepted' };
247
- const promotionContract = createRequestedScopeContract({
248
- route: 'legacy-upgrade-zero-break',
249
- userRequest: 'release gate fixture skill promotion',
250
- projectRoot: skillRootDir,
251
- overrides: { skill_snapshot_promotion: true }
252
- });
253
- const promote = await skillDeployment.promoteToDeployedWithLedger(skillRootDir, accepted, { contract: promotionContract, context: 'release' });
254
- assertGate(promote.ok === true && promote.snapshot, 'existing_skill_cards_preserved: accepted card failed to promote to a deployed snapshot', { blockers: promote.blockers });
255
- const deployed = await skillCard.loadDeployedSnapshot(skillRootDir, 'DFix', 'legacy-skill');
256
- assertGate(Boolean(deployed) && deployed.status === 'deployed' && deployed.deployment_snapshot === true, 'existing_skill_cards_preserved: deployed snapshot did not load back', { deployed });
257
- // Simulate an "upgrade read": loading the snapshot again must not clobber it.
258
- const reread = await skillCard.loadDeployedSnapshot(skillRootDir, 'DFix', 'legacy-skill');
259
- assertGate(Boolean(reread) && reread.body_hash === deployed.body_hash, 'existing_skill_cards_preserved: skill card body_hash changed across an upgrade read', { before_hash: deployed.body_hash, after_hash: reread && reread.body_hash });
260
- summary.states.existing_skill_cards_preserved = {
261
- promoted: true,
262
- body_hash: deployed.body_hash,
263
- byte_preserved: true
264
- };
265
- }
266
- // ---------------------------------------------------------------------------
267
- // Write the report and emit the gate.
268
- // ---------------------------------------------------------------------------
269
- const reportDir = path.join(root, '.sneakoscope', 'reports');
270
- fs.mkdirSync(reportDir, { recursive: true });
271
- const reportPath = path.join(reportDir, 'legacy-upgrade-matrix.json');
272
- fs.writeFileSync(reportPath, `${JSON.stringify({ schema: 'sks.legacy-upgrade-matrix.v1', ok: true, ...summary }, null, 2)}\n`, 'utf8');
273
- emitGate('legacy:upgrade-zero-break', {
274
- report_path: reportPath,
275
- states_checked: [
276
- 'corrupted_config',
277
- 'user_config_preserved',
278
- 'flags_not_reenabled',
279
- 'splitter_preserves_project',
280
- 'tmux_removed_runtime',
281
- 'zellij_status_informational',
282
- 'migration_journal',
283
- '1.19.x_zellij_project_noop',
284
- 'existing_skill_cards_preserved'
285
- ]
286
- });
287
- }
288
- finally {
289
- for (const dir of tmpDirs)
290
- rmTmp(dir);
291
- if (savedCodexHome === undefined)
292
- delete process.env.CODEX_HOME;
293
- else
294
- process.env.CODEX_HOME = savedCodexHome;
295
- if (savedHome === undefined)
296
- delete process.env.HOME;
297
- else
298
- process.env.HOME = savedHome;
299
- }
300
- //# sourceMappingURL=legacy-upgrade-matrix-check.js.map
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const finalizer = await importDist('core/pipeline/finalize-pipeline-result.js');
5
- const blocked = await finalizer.finalizePipelineResult({
6
- route: '$Team',
7
- missionId: 'M-local-final-gpt',
8
- localParticipated: true,
9
- candidateResults: [{ backend: 'local-llm', summary: 'draft' }],
10
- candidatePatchEnvelopes: [],
11
- verificationResults: [],
12
- sideEffectReport: {},
13
- mutationLedger: {},
14
- rollbackPlan: {},
15
- applyPatches: true,
16
- forceGptFinalUnavailable: true
17
- });
18
- assertGate(blocked.ok === false, 'local participation without GPT final must block finalization');
19
- assertGate(blocked.blockers.includes('gpt_final_arbiter_required_not_passed'), 'missing GPT final blocker required');
20
- emitGate('local-collab:all-pipelines-final-gpt', { final_status: blocked.final_status, blockers: blocked.blockers.length });
21
- //# sourceMappingURL=local-collab-all-pipelines-final-gpt-check.js.map
@@ -1,58 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import fs from 'node:fs/promises';
4
- import os from 'node:os';
5
- import path from 'node:path';
6
- import { assertGate, emitGate, importDist, root } from './lib/codex-sdk-gate-lib.js';
7
- const arbiterMod = await importDist('core/codex-control/gpt-final-arbiter.js');
8
- const doctorMod = await importDist('core/doctor/doctor-readiness-matrix.js');
9
- const old = snapshotEnv();
10
- try {
11
- process.env.SKS_GPT_FINAL_ARBITER_UNAVAILABLE = '1';
12
- const unavailable = await arbiterMod.runGptFinalArbiter(input('unavailable'), { writeArtifact: false, forceUnavailable: true });
13
- assertGate(unavailable.ok === false, 'GPT unavailable fixture must block final apply');
14
- assertGate(unavailable.blockers.includes('gpt_final_arbiter_unavailable'), 'GPT unavailable blocker must be present');
15
- const doctor = doctorMod.buildDoctorReadinessMatrix({
16
- codex: { available: false },
17
- codex_config: { ok: true, checks: [] },
18
- local_collaboration: { mode: 'local-parallel-gpt-final', gpt_final_arbiter_available: false }
19
- });
20
- assertGate(doctor.blockers.includes('gpt_final_arbiter_unavailable'), 'doctor must report gpt_final_arbiter_unavailable');
21
- delete process.env.SKS_GPT_FINAL_ARBITER_UNAVAILABLE;
22
- process.env.NODE_ENV = 'test';
23
- process.env.SKS_CODEX_SDK_FAKE = '1';
24
- const tmp = await fs.mkdtemp(path.join(os.tmpdir(), 'sks-gpt-final-available-'));
25
- const available = await arbiterMod.runGptFinalArbiter(input('available'), { cwd: root, mutationLedgerRoot: tmp });
26
- assertGate(available.ok === true, 'GPT available fixture must pass final arbiter');
27
- emitGate('local-collab:gpt-final-availability', { unavailable: unavailable.result.status, available: available.result.status });
28
- }
29
- finally {
30
- restoreEnv(old);
31
- }
32
- function input(label) {
33
- return {
34
- schema: 'sks.gpt-final-arbiter-input.v1',
35
- route: '$Team',
36
- mission_id: `M-${label}`,
37
- local_mode: 'local-parallel-gpt-final',
38
- local_outputs: [{ worker_id: 'local', backend: 'local-llm', summary: 'candidate' }],
39
- candidate_patch_envelopes: [],
40
- verification_results: []
41
- };
42
- }
43
- function snapshotEnv() {
44
- return {
45
- NODE_ENV: process.env.NODE_ENV,
46
- SKS_CODEX_SDK_FAKE: process.env.SKS_CODEX_SDK_FAKE,
47
- SKS_GPT_FINAL_ARBITER_UNAVAILABLE: process.env.SKS_GPT_FINAL_ARBITER_UNAVAILABLE
48
- };
49
- }
50
- function restoreEnv(old) {
51
- for (const [key, value] of Object.entries(old)) {
52
- if (value === undefined)
53
- delete process.env[key];
54
- else
55
- process.env[key] = value;
56
- }
57
- }
58
- //# sourceMappingURL=local-collab-gpt-final-availability-check.js.map
@@ -1,27 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const policyMod = await importDist('core/local-llm/local-collaboration-policy.js');
5
- const arbiterMod = await importDist('core/codex-control/gpt-final-arbiter.js');
6
- const gate = policyMod.evaluateLocalCollaborationFinalGate({
7
- mode: 'local-only-draft',
8
- localParticipated: true,
9
- gptFinalStatus: null,
10
- gptFinalAvailable: false,
11
- applyPatches: true
12
- });
13
- assertGate(gate.ok === false, 'local-only-draft must not be final accepted');
14
- assertGate(gate.final_status === 'draft_only', 'local-only-draft must end as draft_only');
15
- assertGate(gate.apply_allowed === false, 'local-only-draft must block apply');
16
- const result = await arbiterMod.runGptFinalArbiter({
17
- schema: 'sks.gpt-final-arbiter-input.v1',
18
- route: '$DFix',
19
- mission_id: 'M-local-only-draft',
20
- local_mode: 'local-only-draft',
21
- local_outputs: [{ worker_id: 'local', backend: 'local-llm', summary: 'draft only' }],
22
- candidate_patch_envelopes: []
23
- }, { writeArtifact: false });
24
- assertGate(result.ok === false, 'local-only-draft arbiter result must not pass');
25
- assertGate(result.blockers.includes('needs_gpt_final_review'), 'local-only-draft arbiter must include needs_gpt_final_review');
26
- emitGate('local-collab:no-local-only-final', { final_status: gate.final_status, blockers: result.blockers.length });
27
- //# sourceMappingURL=local-collab-no-local-only-final-check.js.map
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist, readText } from './lib/codex-sdk-gate-lib.js';
4
- const policyMod = await importDist('core/local-llm/local-collaboration-policy.js');
5
- const schemaText = readText('schemas/local-llm/local-collaboration-policy.schema.json');
6
- const policy = policyMod.resolveLocalCollaborationPolicy({ env: {} });
7
- assertGate(policy.mode === 'local-parallel-gpt-final', 'default local collaboration mode must be local-parallel-gpt-final');
8
- assertGate(policy.gpt_final_required === true, 'default local collaboration mode must require GPT final');
9
- assertGate(policy.final_patch_source_when_enabled === 'gpt_final_arbiter', 'final patch source must be GPT final arbiter');
10
- assertGate(schemaText.includes('local-only-draft'), 'policy schema must include local-only-draft mode');
11
- const draft = policyMod.resolveLocalCollaborationPolicy({ mode: 'local-only-draft' });
12
- const draftGate = policyMod.evaluateLocalCollaborationFinalGate({ policy: draft, localParticipated: true, applyPatches: true });
13
- assertGate(draftGate.ok === false, 'local-only-draft must not pass final gate');
14
- assertGate(draftGate.blockers.includes('needs_gpt_final_review'), 'local-only-draft must carry needs_gpt_final_review');
15
- assertGate(draftGate.blockers.includes('local_only_draft_apply_blocked'), 'local-only-draft must block apply');
16
- emitGate('local-collab:policy', { default_mode: policy.mode, draft_blockers: draftGate.blockers.length });
17
- //# sourceMappingURL=local-collab-policy-check.js.map
@@ -1,63 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate } from './sks-1-18-gate-lib.js';
4
- import { gptFinalRequiredForPipeline } from '../core/pipeline/gpt-final-required.js';
5
- import { finalizePipelineResult } from '../core/pipeline/finalize-pipeline-result.js';
6
- import { selectFinalGptPatchSource } from '../core/pipeline/final-gpt-patch-stage.js';
7
- const worktreeEnvelope = {
8
- schema: 'sks.agent-patch-envelope.v1',
9
- source: 'git-worktree-diff',
10
- git_worktree: {
11
- worktree_path: '/tmp/sks-worker',
12
- changed_files: ['src/core/example.ts']
13
- },
14
- operations: [{ op: 'git_apply_patch', path: '.', diff: 'diff --git a/src/core/example.ts b/src/core/example.ts\n' }]
15
- };
16
- const requirement = gptFinalRequiredForPipeline({
17
- localParticipated: false,
18
- candidateResults: [{ backend: 'codex-sdk', patch_envelopes: [worktreeEnvelope] }],
19
- candidatePatchEnvelopes: [worktreeEnvelope]
20
- });
21
- const blocked = await finalizePipelineResult({
22
- route: '$Naruto',
23
- missionId: 'M-worktree-gpt-final-policy',
24
- localParticipated: false,
25
- candidateResults: [{ backend: 'codex-sdk', patch_envelopes: [worktreeEnvelope] }],
26
- candidatePatchEnvelopes: [worktreeEnvelope],
27
- verificationResults: [],
28
- sideEffectReport: {},
29
- mutationLedger: {},
30
- rollbackPlan: {},
31
- applyPatches: true,
32
- forceGptFinalUnavailable: true
33
- });
34
- const modified = selectFinalGptPatchSource({
35
- result: {
36
- status: 'modified',
37
- modified_patch_envelopes: [{ ...worktreeEnvelope, source: 'model_authored', operations: [{ op: 'replace', path: 'src/core/example.ts', search: 'old', replace: 'new' }] }]
38
- }
39
- }, [worktreeEnvelope]);
40
- const rejected = selectFinalGptPatchSource({ result: { status: 'rejected' } }, [worktreeEnvelope]);
41
- const ok = requirement.gpt_final_required === true
42
- && requirement.worktree_participated === true
43
- && blocked.ok === false
44
- && blocked.apply_allowed === false
45
- && blocked.blockers.includes('gpt_final_arbiter_required_not_passed')
46
- && modified.ok === true
47
- && modified.final_patch_source === 'gpt_final_arbiter'
48
- && modified.patch_envelopes[0]?.source === 'model_authored'
49
- && rejected.ok === false
50
- && rejected.final_patch_source === 'blocked';
51
- assertGate(ok, 'Worktree/local candidate output must require GPT Final before apply, and GPT modified/rejected decisions must control final patch source', {
52
- requirement,
53
- blocked,
54
- modified,
55
- rejected
56
- });
57
- emitGate('local-collab:worktree-gpt-final-apply-policy', {
58
- requirement,
59
- blocked_apply_allowed: blocked.apply_allowed,
60
- modified_source: modified.final_patch_source,
61
- rejected_source: rejected.final_patch_source
62
- });
63
- //# sourceMappingURL=local-collab-worktree-gpt-final-apply-policy-check.js.map
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, readText } from './lib/codex-sdk-gate-lib.js';
4
- const router = readText('src/core/agents/native-worker-backend-router.ts');
5
- const control = readText('src/core/codex-control/codex-task-runner.ts');
6
- const policy = readText('src/core/local-llm/local-worker-eligibility.ts');
7
- assertGate(router.includes("backend === 'local-llm'"), 'native worker router must support local-llm backend');
8
- assertGate(control.includes('runLocalLlmTask'), 'Codex Control Plane must call local LLM task adapter');
9
- assertGate(policy.includes('requires_gpt_final'), 'local worker eligibility must require GPT final');
10
- emitGate('local-llm:all-pipelines', { local_backend: 'local-llm', requires_gpt_final: true });
11
- //# sourceMappingURL=local-llm-all-pipelines-check.js.map
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const cache = await importDist('core/local-llm/local-llm-prompt-cache.js');
5
- const a = cache.buildLocalLlmPromptCacheRecord({ routeSystemEnvelopeHash: 'a', localWorkerPolicyHash: 'b', coreSkillSnapshotHash: 'c', triwikiContextPackHash: 'd', repoSummaryHash: 'e', capabilityCardHash: 'f' });
6
- const b = cache.buildLocalLlmPromptCacheRecord({ routeSystemEnvelopeHash: 'a', localWorkerPolicyHash: 'b', coreSkillSnapshotHash: 'c', triwikiContextPackHash: 'd2', repoSummaryHash: 'e', capabilityCardHash: 'f' });
7
- assertGate(a.cacheable === true, 'prompt cache record should be cacheable when hashes exist');
8
- assertGate(a.cache_key !== b.cache_key, 'source hash change must invalidate cache');
9
- emitGate('local-llm:cache-performance', { cacheable: a.cacheable, invalidates_on_hash_change: true });
10
- //# sourceMappingURL=local-llm-cache-performance-check.js.map
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist, readText } from './lib/codex-sdk-gate-lib.js';
4
- const mod = await importDist('core/agents/ollama-worker-config.js');
5
- const schemaText = readText('schemas/local-llm/local-model-config.schema.json');
6
- const config = mod.normalizeLocalModelConfig({ enabled: true, status: 'enabled_unverified' });
7
- const mlx = mod.normalizeLocalModelConfig({ enabled: true, provider: 'mlx-lm', model: 'mlx-community/Qwen3.6-35B-A3B-4bit', base_url: 'http://127.0.0.1:8080' });
8
- assertGate(config.schema === 'sks.local-model-config.v2', 'local model config must use v2 schema');
9
- assertGate(config.status === 'enabled_unverified', 'enabled without smoke must be enabled_unverified');
10
- assertGate(mlx.provider === 'mlx-lm' && mlx.base_url === 'http://127.0.0.1:8080', 'local model config must preserve MLX LM provider settings');
11
- assertGate(schemaText.includes('verified'), 'local model schema must include verified status');
12
- assertGate(schemaText.includes('mlx-lm'), 'local model schema must allow MLX LM provider');
13
- emitGate('local-llm:capability', { status: config.status, schema: config.schema, mlx_provider: mlx.provider });
14
- //# sourceMappingURL=local-llm-capability-check.js.map
@@ -1,23 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist, root } from './lib/codex-sdk-gate-lib.js';
4
- const cfg = await importDist('core/agents/ollama-worker-config.js');
5
- const smokeMod = await importDist('core/local-llm/local-llm-smoke.js');
6
- const config = cfg.normalizeLocalModelConfig({ enabled: true, status: 'enabled_unverified' });
7
- if (process.env.SKS_REQUIRE_LOCAL_LLM !== '1' && !process.argv.includes('--require-real')) {
8
- const skipped = cfg.applyLocalLlmSmokeResult(config, { ok: false, skipped: true, status: 'enabled_unverified', reason: 'release_check_no_real_smoke', schema_valid: false });
9
- assertGate(skipped.status === 'enabled_unverified', '--skip-smoke or hermetic mode must not verify local LLM');
10
- emitGate('local-llm:smoke', { status: 'hermetic_skip', config_status: skipped.status });
11
- }
12
- else {
13
- const reportPath = `${root}/.sneakoscope/reports/local-llm-smoke-real.json`;
14
- const realConfig = await cfg.readLocalModelConfig();
15
- const first = await smokeMod.runLocalLlmGenerationSmoke(realConfig, { reportPath, timeoutMs: 60_000 });
16
- const shouldRetry = first.ok !== true && String(first.blockers || []).match(/aborted|timeout|local_llm_generate_failed/i);
17
- const smoke = shouldRetry
18
- ? await smokeMod.runLocalLlmGenerationSmoke(realConfig, { reportPath, timeoutMs: 90_000 })
19
- : first;
20
- assertGate(smoke.ok === true && smoke.schema_valid === true, 'real local LLM smoke failed', { smoke, retry_count: shouldRetry ? 1 : 0, first_failure_blockers: first.blockers || [] });
21
- emitGate('local-llm:smoke', { status: 'real_verified', latency_ms: smoke.latency_ms, tokens_per_second: smoke.tokens_per_second, retry_count: shouldRetry ? 1 : 0 });
22
- }
23
- //# sourceMappingURL=local-llm-smoke-check.js.map
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const mod = await importDist('core/local-llm/local-llm-schema-enforcer.js');
5
- const schema = { type: 'object', required: ['status'], properties: { status: { type: 'string' } }, additionalProperties: false };
6
- const good = mod.enforceLocalLlmJsonSchema('{"status":"ok"}', schema);
7
- const bad = mod.enforceLocalLlmJsonSchema('plain words', schema);
8
- assertGate(good.ok === true && good.schema_valid === true, 'valid local JSON should pass');
9
- assertGate(bad.ok === false, 'natural language local output must not pass');
10
- emitGate('local-llm:structured-output', { good: good.ok, bad: bad.ok });
11
- //# sourceMappingURL=local-llm-structured-output-check.js.map
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const scheduler = await importDist('core/local-llm/local-llm-scheduler.js');
5
- const plan = scheduler.planLocalLlmSchedule({ workItems: Array.from({ length: 20 }, (_, i) => ({ id: i })), maxParallelRequests: 4 });
6
- assertGate(plan.ok === true, 'local scheduler must not exceed max parallel requests');
7
- assertGate(plan.active_requests <= plan.max_parallel_requests, 'active requests exceeded max_parallel_requests');
8
- assertGate(plan.queued_count === 16, '20 worker fixture should queue work beyond max parallel requests');
9
- emitGate('local-llm:throughput', { active_requests: plan.active_requests, queued_count: plan.queued_count, backpressure: plan.backpressure });
10
- //# sourceMappingURL=local-llm-throughput-check.js.map
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const mod = await importDist('core/local-llm/local-llm-json-repair.js');
5
- const repaired = mod.parseOrRepairLocalLlmJson('Here is JSON: {"status":"ok","summary":"done"} thanks');
6
- const failed = mod.parseOrRepairLocalLlmJson('not json at all');
7
- assertGate(repaired.ok === true && repaired.repaired === true && repaired.attempts === 1, 'bounded JSON repair should recover one object');
8
- assertGate(failed.ok === false && failed.attempts === 1, 'invalid local JSON must fail after one repair attempt');
9
- emitGate('local-llm:tool-call-repair', { repaired: repaired.ok, failed: failed.ok });
10
- //# sourceMappingURL=local-llm-tool-call-repair-check.js.map
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import { assertGate, emitGate, importDist } from './lib/codex-sdk-gate-lib.js';
4
- const cfg = await importDist('core/agents/ollama-worker-config.js');
5
- const warmup = await importDist('core/local-llm/local-llm-warmup.js');
6
- const state = warmup.buildLocalLlmWarmupState(cfg.normalizeLocalModelConfig({ enabled: true, status: 'enabled_unverified' }), { ok: true, ttlMs: 1000 });
7
- assertGate(state.explicit_only === true, 'local warmup must be explicit only');
8
- assertGate(state.postinstall_allowed === false, 'postinstall must not run local warmup');
9
- assertGate(state.release_check_real_warmup_allowed === false, 'release:check must not run real warmup');
10
- emitGate('local-llm:warmup', { explicit_only: state.explicit_only, expires_at: state.expires_at });
11
- //# sourceMappingURL=local-llm-warmup-check.js.map
@@ -1,15 +0,0 @@
1
- #!/usr/bin/env node
2
- // @ts-nocheck
3
- import assert from 'node:assert/strict';
4
- import path from 'node:path';
5
- import { pathToFileURL } from 'node:url';
6
- const root = process.cwd();
7
- const mod = await import(pathToFileURL(path.join(root, 'dist/core/loop-blocker.js')));
8
- const report = mod.detectRepeatedBlocker([
9
- { reason: 'imagegen_capability_missing', detail: 'Codex App tool unavailable' },
10
- { reason: 'imagegen_capability_missing', detail: 'Codex App tool unavailable' }
11
- ], 2);
12
- assert.equal(report.stop_required, true);
13
- assert.equal(report.repeated[0].count, 2);
14
- console.log(JSON.stringify({ schema: 'sks.loop-blocker-check.v1', ok: true, report }, null, 2));
15
- //# sourceMappingURL=loop-blocker-check.js.map