sneakoscope 7.1.0 → 7.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (534) hide show
  1. package/README.md +9 -1
  2. package/config/architecture-budgets.v1.json +1 -8
  3. package/crates/sks-core/Cargo.lock +225 -1
  4. package/crates/sks-core/Cargo.toml +8 -1
  5. package/crates/sks-core/src/main.rs +7 -1
  6. package/crates/sks-core/src/search/files.rs +114 -0
  7. package/crates/sks-core/src/search/mod.rs +274 -0
  8. package/crates/sks-core/src/search/text.rs +175 -0
  9. package/dist/bin/sks-dispatch.js +4 -3
  10. package/dist/cli/command-manifest-lite.js +177 -6
  11. package/dist/cli/command-registry.js +42 -8
  12. package/dist/cli/help.js +30 -0
  13. package/dist/cli/install-helpers-codex-lb-config.js +9 -6
  14. package/dist/cli/install-helpers-codex-lb-selftest-chain.js +1 -1
  15. package/dist/cli/install-helpers-install-support.js +1 -1
  16. package/dist/cli/install-helpers.js +19 -9
  17. package/dist/cli/router.js +16 -3
  18. package/dist/commands/codex-app.js +40 -5
  19. package/dist/commands/doctor-profile.js +78 -0
  20. package/dist/commands/doctor.js +29 -69
  21. package/dist/commands/search.js +4 -0
  22. package/dist/config/skills-manifest.json +53 -60
  23. package/dist/core/agent-bridge/agent-manifest.js +22 -26
  24. package/dist/core/agent-bridge/host-capability-policy.js +109 -8
  25. package/dist/core/agent-bridge/host-capability-runtime.js +178 -50
  26. package/dist/core/agent-guidance/directive-registry.js +123 -0
  27. package/dist/core/agents/agent-effort-policy.js +45 -6
  28. package/dist/core/agents/agent-worker-pipeline.js +1 -3
  29. package/dist/core/agents/native-worker-backend-router.js +43 -19
  30. package/dist/core/auto-review.js +1 -3
  31. package/dist/core/code-structure.js +282 -19
  32. package/dist/core/codex/codex-config-guard.js +14 -4
  33. package/dist/core/codex/codex-config-toml.js +1 -3
  34. package/dist/core/codex-app/codex-agent-role-sync.js +1 -3
  35. package/dist/core/codex-app/codex-app-fast-ui-repair.js +14 -1
  36. package/dist/core/codex-app/codex-app-types.js +2 -3
  37. package/dist/core/codex-app/codex-desktop-routing-ownership.js +91 -0
  38. package/dist/core/codex-app/codex-hook-approval-probe.js +1 -3
  39. package/dist/core/codex-app/codex-hook-lifecycle.js +1 -3
  40. package/dist/core/codex-app/codex-init-deep.js +22 -10
  41. package/dist/core/codex-app/codex-model-catalog.js +384 -0
  42. package/dist/core/codex-app/codex-models-cache.js +160 -0
  43. package/dist/core/codex-app/desktop-routing-snapshot.js +233 -0
  44. package/dist/core/codex-app/glm-profile-installer.js +1 -3
  45. package/dist/core/codex-app/mcp-manager.js +1 -3
  46. package/dist/core/codex-app/menubar/constants.js +3 -0
  47. package/dist/core/codex-app/menubar/installer.js +11 -1
  48. package/dist/core/codex-app/multi-provider-router-support.js +202 -0
  49. package/dist/core/codex-app/multi-provider-router.js +379 -0
  50. package/dist/core/codex-app/openrouter-activate.js +189 -26
  51. package/dist/core/codex-app/openrouter-base-instructions.js +1 -0
  52. package/dist/core/codex-app/openrouter-model-catalog.js +217 -0
  53. package/dist/core/codex-app/role-model-catalog-priority.js +61 -0
  54. package/dist/core/codex-app.js +30 -6
  55. package/dist/core/codex-compat/codex-hook-semantic-validator.js +1 -3
  56. package/dist/core/codex-control/codex-app-server-v2-client.js +39 -2
  57. package/dist/core/codex-lb/codex-lb-env.js +1 -3
  58. package/dist/core/codex-lb/codex-lb-tool-catalog.js +6 -1
  59. package/dist/core/codex-native/codex-native-feature-broker.js +2 -6
  60. package/dist/core/codex-native/codex-native-interop-policy.js +1 -3
  61. package/dist/core/codex-native/codex-native-reference-cache.js +1 -3
  62. package/dist/core/codex-native/codex-native-reference-source.js +1 -3
  63. package/dist/core/codex-native/codex-native-repair-transaction.js +1 -3
  64. package/dist/core/codex-native/core-skill-manifest.js +3 -2
  65. package/dist/core/codex-native/native-capability-repair-matrix.js +1 -3
  66. package/dist/core/codex-plugins/codex-plugin-repair.js +1 -3
  67. package/dist/core/codex-runtime/codex-desktop-config-policy.js +4 -4
  68. package/dist/core/commands/agent-bridge-command.js +24 -3
  69. package/dist/core/commands/image-ux-review-command.js +5 -11
  70. package/dist/core/commands/menubar-command.js +1 -1
  71. package/dist/core/commands/naruto-command.js +40 -13
  72. package/dist/core/commands/pipeline-command.js +5 -2
  73. package/dist/core/commands/release-command.js +63 -1
  74. package/dist/core/commands/remote-command.js +18 -0
  75. package/dist/core/commands/search-command.js +151 -0
  76. package/dist/core/commands/telegram-command.js +251 -108
  77. package/dist/core/commands/uninstall-command.js +1 -1
  78. package/dist/core/config/secret-preservation.js +1 -3
  79. package/dist/core/context7-client.js +2 -1
  80. package/dist/core/db-review.js +704 -0
  81. package/dist/core/db-safety.js +17 -23
  82. package/dist/core/doctor/browser-use-repair.js +1 -3
  83. package/dist/core/doctor/codex-startup-config-repair.js +1 -3
  84. package/dist/core/doctor/computer-use-repair.js +1 -3
  85. package/dist/core/doctor/context7-mcp-repair.js +1 -3
  86. package/dist/core/doctor/current-project-guidance.js +1 -3
  87. package/dist/core/doctor/doctor-codex-startup-repair.js +1 -3
  88. package/dist/core/doctor/doctor-dirty-planner.js +2 -2
  89. package/dist/core/doctor/doctor-native-capability-repair.js +1 -3
  90. package/dist/core/doctor/doctor-transaction.js +1 -3
  91. package/dist/core/doctor/imagegen-repair.js +1 -3
  92. package/dist/core/doctor/legacy-global-hook-cleanup.js +1 -3
  93. package/dist/core/doctor/mcp-transport-collision-repair.js +1 -3
  94. package/dist/core/doctor/retired-managed-residue-private.js +1 -3
  95. package/dist/core/doctor/supabase-mcp-repair.js +1 -3
  96. package/dist/core/engineering-sanity-review.js +186 -0
  97. package/dist/core/errors/message.js +3 -0
  98. package/dist/core/evidence/evidence-schema.js +1 -3
  99. package/dist/core/feature-fixtures.js +1 -0
  100. package/dist/core/feature-registry.js +1 -3
  101. package/dist/core/fsx.js +13 -0
  102. package/dist/core/git-hygiene/shared-memory-publish.js +1 -3
  103. package/dist/core/git-hygiene/validators.js +1 -3
  104. package/dist/core/harness-guard.js +21 -3
  105. package/dist/core/hooks-runtime/hook-context.js +2 -2
  106. package/dist/core/image-ux-review/imagegen-adapter.js +52 -56
  107. package/dist/core/image-ux-review/real-callout-extractor.js +6 -1
  108. package/dist/core/image-ux-review.js +3 -5
  109. package/dist/core/imagegen/codex-lb-imagegen-target.js +70 -0
  110. package/dist/core/imagegen/imagegen-capability.js +11 -11
  111. package/dist/core/imagegen/imagegen-evidence.js +32 -0
  112. package/dist/core/init/skills.js +9 -11
  113. package/dist/core/init.js +4 -6
  114. package/dist/core/json/records.js +9 -0
  115. package/dist/core/json-schema-validator.js +1 -3
  116. package/dist/core/lean-engineering-policy.js +54 -0
  117. package/dist/core/loops/loop-continuation-enforcer.js +1 -3
  118. package/dist/core/mad-sks/sql-plane/mcp-executor.js +2 -1
  119. package/dist/core/mad-sks/sql-plane/policy.js +2 -1
  120. package/dist/core/managed-assets/managed-assets-manifest.js +4 -3
  121. package/dist/core/mcp-config/codex-cli-adapter.js +1 -3
  122. package/dist/core/mcp-config/config-reader.js +2 -3
  123. package/dist/core/mcp-config/guarded-patch.js +1 -1
  124. package/dist/core/mcp-config/health-check.js +2 -1
  125. package/dist/core/mcp-config/mutation.js +1 -1
  126. package/dist/core/mcp-config/restore.js +1 -1
  127. package/dist/core/mcp-config/secret-policy.js +1 -3
  128. package/dist/core/migration/migration-transaction-journal.js +3 -3
  129. package/dist/core/naruto/naruto-concurrency-governor.js +2 -2
  130. package/dist/core/perf/import-graph-budget.js +91 -1
  131. package/dist/core/pipeline/pipeline-plan-writer.js +1 -1
  132. package/dist/core/pipeline-internals/runtime-core.js +121 -23
  133. package/dist/core/pipeline-internals/runtime-gates.js +193 -4
  134. package/dist/core/pipeline.js +1 -1
  135. package/dist/core/ppt-review/slide-imagegen-review.js +7 -7
  136. package/dist/core/ppt.js +3 -3
  137. package/dist/core/product-design-app-server.js +2 -1
  138. package/dist/core/proof/fake-real-proof-policy.js +1 -3
  139. package/dist/core/proof/root-cause-policy.js +1 -3
  140. package/dist/core/proof/validation.js +1 -3
  141. package/dist/core/provider/model-router.js +4 -0
  142. package/dist/core/provider/provider-context.js +1 -3
  143. package/dist/core/providers/openrouter/openrouter-account.js +1 -3
  144. package/dist/core/quality/helper-dedup.js +0 -0
  145. package/dist/core/recallpulse.js +1 -1
  146. package/dist/core/release/file-ownership.js +26 -17
  147. package/dist/core/release/macos-menubar-proof.js +59 -1
  148. package/dist/core/release/main-push-guard.js +288 -24
  149. package/dist/core/release/main-push-receipt.js +10 -45
  150. package/dist/core/release/package-size-budget.js +1 -1
  151. package/dist/core/release/release-gate-contract.js +2 -0
  152. package/dist/core/release/release-pack-receipt.js +1 -1
  153. package/dist/core/release/release-proof-io.js +33 -0
  154. package/dist/core/release/release-upgrade-baseline.js +9 -0
  155. package/dist/core/release/runtime-script-pack-closure.js +153 -4
  156. package/dist/core/release/stage-publish.js +194 -0
  157. package/dist/core/remote/index.js +2 -0
  158. package/dist/core/remote/local-worker-client.js +35 -0
  159. package/dist/core/remote/machine-registry.js +18 -13
  160. package/dist/core/remote/owner-proof.js +1 -3
  161. package/dist/core/remote/protocol.js +1 -3
  162. package/dist/core/remote/readiness.js +1 -3
  163. package/dist/core/remote/session-binding.js +153 -0
  164. package/dist/core/remote/session-index.js +1 -3
  165. package/dist/core/remote/types.js +1 -0
  166. package/dist/core/remote/worker.js +228 -14
  167. package/dist/core/responses-stream.js +151 -0
  168. package/dist/core/routes/dollar-manifest-lite.js +1 -1
  169. package/dist/core/routes.js +8 -8
  170. package/dist/core/rust-accelerator.js +12 -2
  171. package/dist/core/safety/ssot-guard.js +1 -3
  172. package/dist/core/search/benchmark.js +358 -0
  173. package/dist/core/search/cache.js +65 -0
  174. package/dist/core/search/context.js +144 -0
  175. package/dist/core/search/doctor.js +74 -0
  176. package/dist/core/search/files.js +192 -0
  177. package/dist/core/search/index.js +5 -0
  178. package/dist/core/search/ipc.js +64 -0
  179. package/dist/core/search/provider.js +142 -0
  180. package/dist/core/search/rust-bridge.js +24 -0
  181. package/dist/core/search/structure.js +230 -0
  182. package/dist/core/search/symbol.js +272 -0
  183. package/dist/core/search/text.js +146 -0
  184. package/dist/core/search/types.js +22 -0
  185. package/dist/core/search/typescript-ls.js +215 -0
  186. package/dist/core/search-visibility/discovery.js +1 -3
  187. package/dist/core/skill-forge.js +1 -1
  188. package/dist/core/stop-gate/gate-evaluator.js +3 -3
  189. package/dist/core/stop-gate/stop-gate-check.js +1 -3
  190. package/dist/core/structured-output-adapter.js +62 -2
  191. package/dist/core/subagents/agent-catalog.js +56 -43
  192. package/dist/core/subagents/model-policy.js +17 -7
  193. package/dist/core/subagents/naruto-proof-projection.js +2 -6
  194. package/dist/core/subagents/official-subagent-config.js +1 -3
  195. package/dist/core/subagents/official-subagent-preparation.js +73 -10
  196. package/dist/core/subagents/official-subagent-prompt.js +85 -18
  197. package/dist/core/subagents/official-subagent-runner.js +10 -5
  198. package/dist/core/subagents/role-model-preferences.js +202 -44
  199. package/dist/core/subagents/subagent-evidence.js +1 -3
  200. package/dist/core/subagents/thread-budget.js +1 -1
  201. package/dist/core/subagents/triwiki-attention.js +1 -5
  202. package/dist/core/telegram/config.js +29 -12
  203. package/dist/core/telegram/hub.js +8 -2
  204. package/dist/core/telegram/index.js +2 -0
  205. package/dist/core/telegram/messages.js +8 -2
  206. package/dist/core/telegram/runtime-projection.js +8 -5
  207. package/dist/core/telegram/runtime.js +19 -9
  208. package/dist/core/telegram/service.js +181 -0
  209. package/dist/core/telegram/setup.js +220 -0
  210. package/dist/core/text/regex.js +3 -0
  211. package/dist/core/text/strings.js +6 -0
  212. package/dist/core/triwiki-wrongness/image-wrongness.js +1 -3
  213. package/dist/core/triwiki-wrongness/wrongness-ledger.js +1 -3
  214. package/dist/core/triwiki-wrongness/wrongness-proof-linker.js +1 -3
  215. package/dist/core/triwiki-wrongness/wrongness-retrieval.js +1 -3
  216. package/dist/core/triwiki-wrongness/wrongness-schema.js +1 -3
  217. package/dist/core/triwiki-wrongness/wrongness-trust-policy.js +1 -3
  218. package/dist/core/trust-kernel/completion-contract.js +1 -3
  219. package/dist/core/trust-kernel/route-contract.js +1 -3
  220. package/dist/core/update/update-migration-state.js +1 -3
  221. package/dist/core/update-check.js +20 -6
  222. package/dist/core/verification/diff-quality.js +3 -4
  223. package/dist/core/verification/impact-scan.js +36 -89
  224. package/dist/core/verification/mistake-rule-compiler.js +17 -4
  225. package/dist/core/version-manager.js +3 -20
  226. package/dist/core/version.js +1 -1
  227. package/dist/native/sks-menubar/Sources/ControlCenterWindowController.swift +23 -3
  228. package/dist/native/sks-menubar/Sources/ControlKit.swift +102 -0
  229. package/dist/native/sks-menubar/Sources/DiagnosticsViewController.swift +23 -11
  230. package/dist/native/sks-menubar/Sources/MCPServersViewController.swift +7 -3
  231. package/dist/native/sks-menubar/Sources/OperationCoordinator.swift +17 -1
  232. package/dist/native/sks-menubar/Sources/OverviewViewController.swift +22 -15
  233. package/dist/native/sks-menubar/Sources/ProcessClient.swift +15 -5
  234. package/dist/native/sks-menubar/Sources/ProvidersMultiProvider.swift +324 -0
  235. package/dist/native/sks-menubar/Sources/ProvidersOpenRouter.swift +154 -214
  236. package/dist/native/sks-menubar/Sources/ProvidersRoleModels.swift +252 -0
  237. package/dist/native/sks-menubar/Sources/ProvidersViewController.swift +77 -71
  238. package/dist/native/sks-menubar/Sources/RemoteTelegramViewController.swift +167 -51
  239. package/dist/native/sks-menubar/Sources/SettingsViewController.swift +14 -5
  240. package/dist/native/sks-menubar/Sources/SidebarItem.swift +15 -1
  241. package/dist/native/sks-menubar/Sources/StatusItemController.swift +2 -2
  242. package/dist/native/sks-menubar/Sources/UpdatesViewController.swift +16 -12
  243. package/dist/scripts/agent-guidance-dedup-check.js +23 -0
  244. package/dist/scripts/agent-message-bus-reader-check.js +1 -1
  245. package/dist/scripts/all-feature-deep-completion-check.js +1 -1
  246. package/dist/scripts/appshots-thread-attachment-discovery-check.js +1 -1
  247. package/dist/scripts/architecture-guard-check.js +1 -2
  248. package/dist/scripts/certificate-sla-check.js +1 -1
  249. package/dist/scripts/cli-output-consistency-check.js +1 -1
  250. package/dist/scripts/codex-0-134-runner-truth-check.js +1 -1
  251. package/dist/scripts/codex-0138-capability-artifact-check.js +1 -1
  252. package/dist/scripts/codex-0138-capability-check.js +1 -1
  253. package/dist/scripts/codex-0138-doctor-check.js +1 -1
  254. package/dist/scripts/codex-0138-feature-probes-check.js +1 -1
  255. package/dist/scripts/codex-0144-app-server-v2-check.js +1 -1
  256. package/dist/scripts/codex-0144-binary-identity-check.js +1 -1
  257. package/dist/scripts/codex-0144-capability-check.js +1 -1
  258. package/dist/scripts/codex-0144-core-real-probes-check.js +1 -1
  259. package/dist/scripts/codex-0144-manifest-check.js +1 -1
  260. package/dist/scripts/codex-0144-policy-check.js +1 -1
  261. package/dist/scripts/codex-0144-thread-store-check.js +1 -1
  262. package/dist/scripts/codex-agent-role-rich-content-check.js +2 -2
  263. package/dist/scripts/codex-agent-role-sync-check.js +2 -2
  264. package/dist/scripts/codex-agent-type-routing-check.js +2 -2
  265. package/dist/scripts/codex-app-execution-profile-check.js +2 -2
  266. package/dist/scripts/codex-app-handoff-check.js +1 -1
  267. package/dist/scripts/codex-app-handoff-launch-check.js +1 -1
  268. package/dist/scripts/codex-control-tool-output-continuity-audit-check.js +1 -1
  269. package/dist/scripts/codex-lb-fast-ui-preservation-check.js +1 -3
  270. package/dist/scripts/codex-native-feature-broker-blackbox.js +2 -2
  271. package/dist/scripts/codex-native-feature-broker-check.js +2 -2
  272. package/dist/scripts/{sks-3-1-6-directive-check-lib.js → codex-native-gate-lib.js} +5 -5
  273. package/dist/scripts/codex-native-harness-compat-check.js +2 -2
  274. package/dist/scripts/codex-native-hook-lifecycle-proof-check.js +2 -2
  275. package/dist/scripts/codex-plugin-app-template-policy-check.js +1 -1
  276. package/dist/scripts/codex-sdk-backend-router-check.js +1 -1
  277. package/dist/scripts/codex-sdk-capability-check.js +1 -1
  278. package/dist/scripts/context7-evidence-dedupe-check.js +1 -1
  279. package/dist/scripts/core-skill-card-schema-check.js +1 -1
  280. package/dist/scripts/core-skill-deployment-snapshot-check.js +1 -1
  281. package/dist/scripts/core-skill-heldout-validation-check.js +1 -1
  282. package/dist/scripts/core-skill-no-inference-optimizer-check.js +1 -1
  283. package/dist/scripts/core-skill-patch-check.js +1 -1
  284. package/dist/scripts/core-skill-route-runtime-integration-check.js +1 -1
  285. package/dist/scripts/current-command-surface-check.js +1 -1
  286. package/dist/scripts/current-surface-update-e2e-check.js +4 -1
  287. package/dist/scripts/current-upgrade-matrix-check.js +1 -1
  288. package/dist/scripts/dfix-fixture-check.js +1 -1
  289. package/dist/scripts/dfix-patch-handoff-check.js +1 -1
  290. package/dist/scripts/dfix-verification-check.js +1 -1
  291. package/dist/scripts/dfix-verification-recommendation-check.js +1 -1
  292. package/dist/scripts/docs-truthfulness-check.js +16 -3
  293. package/dist/scripts/doctor-codex-app-harness-check.js +2 -2
  294. package/dist/scripts/evidence-flagship-coverage-check.js +1 -1
  295. package/dist/scripts/{sks-1-18-gate-lib.js → gate-lib.js} +1 -1
  296. package/dist/scripts/gate-policy-audit-check.js +4 -1
  297. package/dist/scripts/git-worktree-checkpoint-check.js +1 -1
  298. package/dist/scripts/git-worktree-cross-rebase-check.js +1 -1
  299. package/dist/scripts/git-worktree-diff-envelope-check.js +1 -1
  300. package/dist/scripts/git-worktree-dirty-lock-check.js +1 -1
  301. package/dist/scripts/git-worktree-dirty-main-detection-check.js +1 -1
  302. package/dist/scripts/git-worktree-integration-primary-check.js +1 -1
  303. package/dist/scripts/git-worktree-manifest-append-check.js +1 -1
  304. package/dist/scripts/git-worktree-untracked-diff-check.js +1 -1
  305. package/dist/scripts/harness-benchmark-check.js +1 -1
  306. package/dist/scripts/helper-dedup-check.js +62 -0
  307. package/dist/scripts/hook-latency-budget-check.js +1 -1
  308. package/dist/scripts/image-artifact-path-contract-check.js +1 -1
  309. package/dist/scripts/imagegen-real-smoke-check.js +2 -5
  310. package/dist/scripts/installed-package-smoke-check.js +1 -1
  311. package/dist/scripts/legacy-gate-inventory-check.js +1 -1
  312. package/dist/scripts/legacy-gate-purge-check.js +1 -1
  313. package/dist/scripts/legacy-strong-inventory-check.js +1 -1
  314. package/dist/scripts/lib/codex-sdk-gate-lib.js +1 -1
  315. package/dist/scripts/mad-sks-launch-sql-plane-boundary-check.js +1 -1
  316. package/dist/scripts/mad-sks-sql-plane-capability-check.js +1 -1
  317. package/dist/scripts/mad-sks-sql-plane-lifecycle-hook-decision-check.js +1 -1
  318. package/dist/scripts/mad-sks-sql-plane-result-lifecycle-check.js +1 -1
  319. package/dist/scripts/managed-config-merge-check.js +1 -1
  320. package/dist/scripts/mcp-plugin-inventory-check.js +1 -1
  321. package/dist/scripts/model-call-concurrency-check.js +1 -1
  322. package/dist/scripts/mutation-callsite-coverage-check.js +1 -1
  323. package/dist/scripts/naruto-ssot-gate-aliases-check.js +1 -1
  324. package/dist/scripts/naruto-ssot-pipeline-default-check.js +1 -1
  325. package/dist/scripts/naruto-ssot-route-normalization-check.js +1 -1
  326. package/dist/scripts/naruto-ssot-routing-check.js +1 -1
  327. package/dist/scripts/naruto-worktree-coding-blackbox.js +1 -1
  328. package/dist/scripts/native-capability-repair-matrix-check.js +1 -1
  329. package/dist/scripts/native-image-generation-repair-check.js +1 -1
  330. package/dist/scripts/official-subagent-workflow-check.js +3 -3
  331. package/dist/scripts/package-published-contract-check.js +37 -4
  332. package/dist/scripts/packlist-performance-check.js +17 -1
  333. package/dist/scripts/pipeline-codex-native-doctor-mad-routing-real-blackbox.js +1 -3
  334. package/dist/scripts/ppt-real-export-adapter-check.js +1 -1
  335. package/dist/scripts/ppt-real-imagegen-wiring-check.js +1 -1
  336. package/dist/scripts/ppt-reexport-rereview-check.js +1 -1
  337. package/dist/scripts/prepublish-fast-check.js +1 -1
  338. package/dist/scripts/probe-memoization-check.js +2 -2
  339. package/dist/scripts/prompt-placeholder-guard-check.js +1 -1
  340. package/dist/scripts/qa-loop-app-handoff-capability-check.js +1 -1
  341. package/dist/scripts/qa-loop-app-handoff-check.js +1 -1
  342. package/dist/scripts/qa-loop-app-handoff-cli-check.js +1 -1
  343. package/dist/scripts/qa-loop-app-handoff-confirmation-check.js +1 -1
  344. package/dist/scripts/qa-loop-app-handoff-gate-lifecycle-check.js +1 -1
  345. package/dist/scripts/qa-loop-app-handoff-launch-check.js +1 -1
  346. package/dist/scripts/qa-loop-app-handoff-status-lifecycle-check.js +1 -1
  347. package/dist/scripts/qa-loop-budget-policy-check.js +1 -1
  348. package/dist/scripts/qa-loop-effort-escalation-check.js +1 -1
  349. package/dist/scripts/qa-loop-execution-profile-routing-check.js +2 -2
  350. package/dist/scripts/qa-loop-image-path-exposure-check.js +1 -1
  351. package/dist/scripts/qa-loop-image-path-prompt-injection-check.js +1 -1
  352. package/dist/scripts/{sks-1-12-real-execution-check-lib.js → real-execution-check-lib.js} +1 -1
  353. package/dist/scripts/release-affected-selector-check.js +1 -1
  354. package/dist/scripts/release-aggressive-resource-governor-check.js +1 -1
  355. package/dist/scripts/release-cache-glob-hashing-check.js +1 -1
  356. package/dist/scripts/release-cache-input-classifier-check.js +1 -1
  357. package/dist/scripts/release-cache-neutralization-report-check.js +1 -1
  358. package/dist/scripts/release-cache-version-neutral-fixture-check.js +1 -1
  359. package/dist/scripts/release-dynamic-presets-check.js +2 -2
  360. package/dist/scripts/release-full-parallelism-blackbox.js +1 -1
  361. package/dist/scripts/release-gate-batch-runner-check.js +1 -1
  362. package/dist/scripts/release-gate-budget-check.js +1 -1
  363. package/dist/scripts/release-gate-dag-runner-check.js +1 -1
  364. package/dist/scripts/release-latency-slo-check.js +1 -1
  365. package/dist/scripts/release-metadata-check.js +256 -2
  366. package/dist/scripts/release-parallel-speed-budget-check.js +1 -1
  367. package/dist/scripts/release-proof-truth-check.js +1 -1
  368. package/dist/scripts/release-provenance-check.js +4 -2
  369. package/dist/scripts/release-runtime-truth-matrix-check.js +1 -1
  370. package/dist/scripts/research-blueprint-densifier-check.js +1 -1
  371. package/dist/scripts/research-claim-builder-check.js +1 -1
  372. package/dist/scripts/research-complete-package-fixture-check.js +1 -1
  373. package/dist/scripts/research-execution-profile-routing-check.js +2 -2
  374. package/dist/scripts/research-final-reviewer-blackbox.js +1 -1
  375. package/dist/scripts/{sks-3-1-4-directive-check-lib.js → runtime-domain-gate-lib.js} +2 -2
  376. package/dist/scripts/runtime-proof-summary-check.js +1 -1
  377. package/dist/scripts/runtime-script-pack-closure-check.js +7 -1
  378. package/dist/scripts/scheduler-batch-dispatch-check.js +1 -1
  379. package/dist/scripts/scheduler-parallel-proof-consistency-check.js +1 -1
  380. package/dist/scripts/scheduler-utilization-integral-check.js +1 -1
  381. package/dist/scripts/search-visibility-gate-lib.js +1 -1
  382. package/dist/scripts/secret-preservation-check.js +1 -1
  383. package/dist/scripts/seo-geo-geo-disambiguation-check.js +1 -1
  384. package/dist/scripts/seo-geo-skill-rich-content-check.js +1 -1
  385. package/dist/scripts/side-effect-runtime-report-check.js +1 -1
  386. package/dist/scripts/{sks-3-1-8-check-lib.js → skill-fixture-check-lib.js} +1 -1
  387. package/dist/scripts/skill-name-canonicalizer-check.js +1 -1
  388. package/dist/scripts/skills-manifest-continuity-check.js +1 -1
  389. package/dist/scripts/sks-uninstall-regression-check.js +1 -1
  390. package/dist/scripts/sksd-daemon-check.js +1 -1
  391. package/dist/scripts/super-search-provider-interface-check.js +1 -1
  392. package/dist/scripts/triwiki-cache-key-check.js +1 -1
  393. package/dist/scripts/triwiki-proof-bank-blackbox.js +2 -2
  394. package/dist/scripts/triwiki-proof-bank-check.js +1 -1
  395. package/dist/scripts/triwiki-proof-card-check.js +1 -1
  396. package/dist/scripts/type-surface-codex-app-check.js +2 -2
  397. package/dist/scripts/{sks-3-1-5-directive-check-lib.js → typed-routing-gate-lib.js} +2 -2
  398. package/dist/scripts/ultra-router-auto-router-check.js +1 -1
  399. package/dist/scripts/ux-review-extract-wires-real-extractor-check.js +1 -1
  400. package/dist/scripts/ux-review-patch-diff-recheck-check.js +1 -1
  401. package/dist/scripts/ux-review-run-wires-imagegen-check.js +9 -2
  402. package/package.json +5 -7
  403. package/release-gates.v2.json +66 -11
  404. package/runtime-required-scripts.json +138 -14
  405. package/config/bench-baseline.json +0 -7
  406. package/dist/core/codex-app/sks-menubar.js +0 -1
  407. package/dist/core/release/release-closure-contract.js +0 -30
  408. package/dist/core/release/release-closure-helpers.js +0 -293
  409. package/dist/core/release/release-closure-validation.js +0 -284
  410. package/dist/core/release/release-closure.js +0 -163
  411. package/dist/scripts/build-dist.js +0 -124
  412. package/dist/scripts/build-once-runner-check.js +0 -6
  413. package/dist/scripts/canonical-test-runner.js +0 -234
  414. package/dist/scripts/changelog-check.js +0 -45
  415. package/dist/scripts/check-architecture.js +0 -295
  416. package/dist/scripts/check-cli-entrypoint.js +0 -41
  417. package/dist/scripts/check-command-module-budget.js +0 -77
  418. package/dist/scripts/check-feature-quality.js +0 -51
  419. package/dist/scripts/check-legacy-free.js +0 -64
  420. package/dist/scripts/check-pipeline-budget.js +0 -49
  421. package/dist/scripts/check-pipeline-runtime.js +0 -16
  422. package/dist/scripts/check-publish-tag.js +0 -56
  423. package/dist/scripts/check-route-modularity.js +0 -72
  424. package/dist/scripts/codex-0140-capability-check.js +0 -14
  425. package/dist/scripts/codex-0140-feature-probes-check.js +0 -23
  426. package/dist/scripts/codex-permission-profiles-check.js +0 -34
  427. package/dist/scripts/codex-project-config-policy-splitter-check.js +0 -49
  428. package/dist/scripts/competitor-scorecard-check.js +0 -24
  429. package/dist/scripts/core-skill-no-drift-check.js +0 -23
  430. package/dist/scripts/db-route-materialization-check.js +0 -32
  431. package/dist/scripts/doctor-context7-mcp-repair-blackbox.js +0 -15
  432. package/dist/scripts/doctor-fastpath-check.js +0 -25
  433. package/dist/scripts/doctor-fix-production-blackbox.js +0 -35
  434. package/dist/scripts/doctor-idempotence-check.js +0 -6
  435. package/dist/scripts/doctor-ops-semantics-check.js +0 -83
  436. package/dist/scripts/doctor-startup-config-repair-blackbox.js +0 -18
  437. package/dist/scripts/doctor-supabase-mcp-repair-blackbox.js +0 -13
  438. package/dist/scripts/ensure-bin-executable.js +0 -16
  439. package/dist/scripts/fsx-hotpath-check.js +0 -9
  440. package/dist/scripts/high-risk-contracts-check.js +0 -183
  441. package/dist/scripts/hook-latency-quantum-check.js +0 -120
  442. package/dist/scripts/import-graph-budget-check.js +0 -9
  443. package/dist/scripts/mcp-tool-naming-parity-check.js +0 -14
  444. package/dist/scripts/naruto-codex-e2e-check.js +0 -105
  445. package/dist/scripts/naruto-write-e2e-check.js +0 -31
  446. package/dist/scripts/native-capability-postcheck-check.js +0 -16
  447. package/dist/scripts/ops-diagnostics-bundle-check.js +0 -11
  448. package/dist/scripts/parallel-production-smoke-check.js +0 -20
  449. package/dist/scripts/perf-budget-check.js +0 -12
  450. package/dist/scripts/project-skill-dedupe-blackbox.js +0 -62
  451. package/dist/scripts/release-dag-full-coverage-check.js +0 -98
  452. package/dist/scripts/release-dist-freshness-check.js +0 -6
  453. package/dist/scripts/release-file-ownership-check.js +0 -35
  454. package/dist/scripts/release-gate-script-parity-check.js +0 -148
  455. package/dist/scripts/release-macos-menubar-proof.js +0 -167
  456. package/dist/scripts/release-main-push-guard.js +0 -37
  457. package/dist/scripts/release-main-push-receipt.js +0 -43
  458. package/dist/scripts/release-metadata-1-19-check.js +0 -257
  459. package/dist/scripts/release-version-truth-check.js +0 -138
  460. package/dist/scripts/retention-apply-smoke-check.js +0 -19
  461. package/dist/scripts/retention-budget-check.js +0 -6
  462. package/dist/scripts/retention-dry-run-check.js +0 -8
  463. package/dist/scripts/rollback-recovery-smoke-check.js +0 -70
  464. package/dist/scripts/route-intent-regression-check.js +0 -42
  465. package/dist/scripts/runtime-current-terminal-check.js +0 -108
  466. package/dist/scripts/runtime-dist-parity-check.js +0 -76
  467. package/dist/scripts/runtime-no-src-mjs-check.js +0 -30
  468. package/dist/scripts/runtime-ts-rust-boundary-check.js +0 -58
  469. package/dist/scripts/runtime-ts-source-of-truth-check.js +0 -53
  470. package/dist/scripts/secret-preservation-guard-check.js +0 -36
  471. package/dist/scripts/seo-marketing-truthfulness-check.js +0 -98
  472. package/dist/scripts/seo-metadata-sync-check.js +0 -60
  473. package/dist/scripts/sizecheck.js +0 -148
  474. package/dist/scripts/sks-menubar-install-check.js +0 -333
  475. package/dist/scripts/supabase-secret-preservation-blackbox.js +0 -28
  476. package/dist/scripts/super-search-live-smoke-check.js +0 -115
  477. package/dist/scripts/super-search-local-http-smoke-check.js +0 -16
  478. package/dist/scripts/super-search-offline-contract-check.js +0 -43
  479. package/dist/scripts/update-fastpath-check.js +0 -28
  480. package/dist/scripts/update-preserves-supabase-keys-blackbox.js +0 -26
  481. package/dist/scripts/upgrade-migration-matrix-check.js +0 -351
  482. package/dist/scripts/write-build-manifest.js +0 -70
  483. package/dist/scripts/zellij-capability-check.js +0 -13
  484. package/dist/scripts/zellij-developer-controls-check.js +0 -16
  485. package/dist/scripts/zellij-doctor-readiness-check.js +0 -49
  486. package/dist/scripts/zellij-dynamic-pane-lifecycle-check.js +0 -19
  487. package/dist/scripts/zellij-fake-adapter-check.js +0 -31
  488. package/dist/scripts/zellij-first-slot-down-stack-check.js +0 -20
  489. package/dist/scripts/zellij-first-slot-down-stack-real-check.js +0 -348
  490. package/dist/scripts/zellij-homebrew-policy-check.js +0 -3
  491. package/dist/scripts/zellij-initial-main-only-blackbox.js +0 -21
  492. package/dist/scripts/zellij-lane-renderer-check.js +0 -78
  493. package/dist/scripts/zellij-launch-command-truth-check.js +0 -62
  494. package/dist/scripts/zellij-layout-valid-check.js +0 -120
  495. package/dist/scripts/zellij-pane-creation-lock-metrics-check.js +0 -10
  496. package/dist/scripts/zellij-pane-lock-concurrency-blackbox.js +0 -78
  497. package/dist/scripts/zellij-pane-lock-does-not-block-worker-check.js +0 -12
  498. package/dist/scripts/zellij-pane-lock-open-worker-integration-blackbox.js +0 -134
  499. package/dist/scripts/zellij-qa-app-handoff-status-check.js +0 -7
  500. package/dist/scripts/zellij-right-column-geometry-proof.js +0 -158
  501. package/dist/scripts/zellij-right-column-headless-overflow-check.js +0 -20
  502. package/dist/scripts/zellij-right-column-manager-check.js +0 -24
  503. package/dist/scripts/zellij-self-heal-check.js +0 -3
  504. package/dist/scripts/zellij-self-heal-dry-run-check.js +0 -3
  505. package/dist/scripts/zellij-self-heal-status-contract-check.js +0 -3
  506. package/dist/scripts/zellij-self-heal-typed-blackbox.js +0 -3
  507. package/dist/scripts/zellij-slot-column-anchor-check.js +0 -65
  508. package/dist/scripts/zellij-slot-column-anchor-telemetry-check.js +0 -8
  509. package/dist/scripts/zellij-slot-only-ui-check.js +0 -29
  510. package/dist/scripts/zellij-slot-pane-renderer-check.js +0 -149
  511. package/dist/scripts/zellij-slot-pane-stale-detection-check.js +0 -65
  512. package/dist/scripts/zellij-slot-pane-telemetry-renderer-check.js +0 -11
  513. package/dist/scripts/zellij-slot-renderer-proof-semantics-check.js +0 -58
  514. package/dist/scripts/zellij-slot-telemetry-check.js +0 -38
  515. package/dist/scripts/zellij-slot-telemetry-incremental-check.js +0 -46
  516. package/dist/scripts/zellij-slot-telemetry-live-flush-check.js +0 -55
  517. package/dist/scripts/zellij-slot-telemetry-performance-check.js +0 -32
  518. package/dist/scripts/zellij-slot-telemetry-real-blackbox.js +0 -19
  519. package/dist/scripts/zellij-slot-telemetry-renderer-check.js +0 -11
  520. package/dist/scripts/zellij-slot-telemetry-runtime-check.js +0 -23
  521. package/dist/scripts/zellij-spawn-on-demand-layout-check.js +0 -45
  522. package/dist/scripts/zellij-stacked-capability-routing-check.js +0 -9
  523. package/dist/scripts/zellij-stacked-fallback-integration-blackbox.js +0 -78
  524. package/dist/scripts/zellij-stacked-version-matrix-check.js +0 -29
  525. package/dist/scripts/zellij-stacked-version-parser-check.js +0 -19
  526. package/dist/scripts/zellij-ui-design-check.js +0 -92
  527. package/dist/scripts/zellij-update-missing-self-heal-check.js +0 -3
  528. package/dist/scripts/zellij-update-prompt-matrix-check.js +0 -16
  529. package/dist/scripts/zellij-update-prompt-mode-check.js +0 -18
  530. package/dist/scripts/zellij-update-prompt-safety-check.js +0 -8
  531. package/dist/scripts/zellij-worker-pane-manager-check.js +0 -108
  532. package/dist/scripts/zellij-worker-pane-manager-single-owner-check.js +0 -47
  533. package/dist/scripts/zellij-worker-pane-real-ui-blackbox.js +0 -199
  534. /package/dist/scripts/{sks-1-11-gate-lib.js → sks-cli-gate-lib.js} +0 -0
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective315Gate } from './sks-3-1-5-directive-check-lib.js';
3
- await runDirective315Gate('codex-app:agent-role-rich-content');
2
+ import { runTypedRoutingGate } from './typed-routing-gate-lib.js';
3
+ await runTypedRoutingGate('codex-app:agent-role-rich-content');
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective314Gate } from './sks-3-1-4-directive-check-lib.js';
3
- await runDirective314Gate('codex-app:agent-role-sync');
2
+ import { runRuntimeDomainGate } from './runtime-domain-gate-lib.js';
3
+ await runRuntimeDomainGate('codex-app:agent-role-sync');
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective315Gate } from './sks-3-1-5-directive-check-lib.js';
3
- await runDirective315Gate('codex-app:agent-type-routing');
2
+ import { runTypedRoutingGate } from './typed-routing-gate-lib.js';
3
+ await runTypedRoutingGate('codex-app:agent-type-routing');
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective314Gate } from './sks-3-1-4-directive-check-lib.js';
3
- await runDirective314Gate('codex-app:execution-profile');
2
+ import { runRuntimeDomainGate } from './runtime-domain-gate-lib.js';
3
+ await runRuntimeDomainGate('codex-app:execution-profile');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  process.env.SKS_CODEX_0138_FAKE = '1';
7
7
  const mod = await importDist('core/codex-app/codex-app-handoff.js');
8
8
  const root = await fs.mkdtemp(path.join(os.tmpdir(), 'sks-app-handoff-'));
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  process.env.SKS_CODEX_0138_FAKE = '1';
7
7
  process.env.SKS_CODEX_APP_LAUNCH_FAKE = '1';
8
8
  const mod = await importDist('core/codex-app/codex-app-handoff.js');
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
2
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
3
3
  const mod = await importDist('core/codex-control/codex-reliability-shield.js');
4
4
  const audit = mod.auditToolOutputContinuity([
5
5
  { type: 'thread.started' },
@@ -3,6 +3,7 @@ import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
5
  import { codexLbConfigPath, codexLbEnvPath, ensureGlobalCodexFastModeDuringInstall, releaseCodexLbAuthHold, repairCodexLbAuth } from '../cli/install-helpers.js';
6
+ import { escapeRegExp } from '../core/text/regex.js';
6
7
  const tmp = await fs.mkdtemp(path.join(os.tmpdir(), 'sks-codex-lb-fast-ui-'));
7
8
  const home = path.join(tmp, 'home');
8
9
  const codexHome = path.join(home, '.codex');
@@ -106,6 +107,3 @@ function topLevelKey(text, key) {
106
107
  const top = text.split(/\n\s*\[/)[0] || '';
107
108
  return top.match(new RegExp(`(^|\\n)\\s*${escapeRegExp(key)}\\s*=\\s*([^\\n#]+)`))?.[2]?.trim().replace(/^"|"$/g, '') || '';
108
109
  }
109
- function escapeRegExp(value) {
110
- return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
111
- }
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective316Gate } from './sks-3-1-6-directive-check-lib.js';
3
- await runDirective316Gate('codex-native:feature-broker-blackbox');
2
+ import { runCodexNativeGate } from './codex-native-gate-lib.js';
3
+ await runCodexNativeGate('codex-native:feature-broker-blackbox');
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective316Gate } from './sks-3-1-6-directive-check-lib.js';
3
- await runDirective316Gate('codex-native:feature-broker');
2
+ import { runCodexNativeGate } from './codex-native-gate-lib.js';
3
+ await runCodexNativeGate('codex-native:feature-broker');
@@ -38,7 +38,7 @@ const REQUIRED_SCRIPT_IDS = [
38
38
  'codex-native:feature-broker-blackbox',
39
39
  'pipeline:codex-native-e2e-blackbox'
40
40
  ];
41
- export async function runDirective316Gate(id) {
41
+ export async function runCodexNativeGate(id) {
42
42
  if (id === 'brand-neutrality:rename-map')
43
43
  return brandRenameMap(id);
44
44
  if (id === 'brand-neutrality:zero-leakage')
@@ -334,12 +334,12 @@ async function initDeepMemoryScopeSafety(id) {
334
334
  emitGate(id);
335
335
  }
336
336
  async function releaseScriptsTypeSafe(id) {
337
- for (const rel of ['src/scripts/release-dag-full-coverage-check.ts', 'src/scripts/sks-3-1-5-directive-check-lib.ts', 'src/scripts/sks-3-1-6-directive-check-lib.ts', 'src/scripts/sks-3-1-7-directive-check-lib.ts']) {
337
+ for (const rel of ['src/scripts/release-dag-full-coverage-check.ts', 'src/scripts/typed-routing-gate-lib.ts', 'src/scripts/codex-native-gate-lib.ts', 'src/scripts/release-script-lint-gate-lib.ts']) {
338
338
  const text = readText(rel);
339
339
  assertGate(!/^\s*\/\/\s*@ts-nocheck\b/m.test(text), `release helper still has ts-nocheck:${rel}`);
340
340
  }
341
341
  assertGate(readText('src/scripts/release-dag-full-coverage-check.ts').includes('interface ReleaseGate'), 'release DAG helper missing typed interfaces');
342
- assertGate(readText('src/scripts/sks-3-1-6-directive-check-lib.ts').includes('interface PackageJsonShape'), '3.1.6 helper missing typed package shape');
342
+ assertGate(readText('src/scripts/codex-native-gate-lib.ts').includes('interface PackageJsonShape'), '3.1.6 helper missing typed package shape');
343
343
  emitGate(id);
344
344
  }
345
345
  async function noTsNoCheckReleaseScripts(id) {
@@ -347,7 +347,7 @@ async function noTsNoCheckReleaseScripts(id) {
347
347
  const checked = listFiles(path.join(root, 'src/scripts')).filter((file) => {
348
348
  const rel = path.relative(root, file).split(path.sep).join('/');
349
349
  return /^src\/scripts\/release-dag-full-coverage-check\.ts$/.test(rel)
350
- || /^src\/scripts\/sks-3-1-[567]-directive-check-lib\.ts$/.test(rel)
350
+ || /^src\/scripts\/(?:typed-routing|codex-native|release-script-lint)-gate-lib\.ts$/.test(rel)
351
351
  || /^src\/scripts\/no-ts-nocheck-release-scripts-check\.ts$/.test(rel)
352
352
  || /^src\/scripts\/release-script-type-safety-check\.ts$/.test(rel);
353
353
  });
@@ -525,7 +525,7 @@ export function packageJson() {
525
525
  export function gateManifest() {
526
526
  return readJson('release-gates.v2.json');
527
527
  }
528
- export function required316ScriptIds() {
528
+ export function requiredReleaseScriptIds() {
529
529
  return [...REQUIRED_SCRIPT_IDS];
530
530
  }
531
531
  export function checkCommand(command, args) {
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective316Gate } from './sks-3-1-6-directive-check-lib.js';
3
- await runDirective316Gate('codex-native:harness-compat');
2
+ import { runCodexNativeGate } from './codex-native-gate-lib.js';
3
+ await runCodexNativeGate('codex-native:harness-compat');
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective316Gate } from './sks-3-1-6-directive-check-lib.js';
3
- await runDirective316Gate('codex-native:hook-lifecycle-proof');
2
+ import { runCodexNativeGate } from './codex-native-gate-lib.js';
3
+ await runCodexNativeGate('codex-native:hook-lifecycle-proof');
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
2
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
3
3
  process.env.SKS_CODEX_0138_FAKE = '1';
4
4
  process.env.SKS_CODEX_PLUGIN_JSON_FAKE = '1';
5
5
  const mod = await importDist('core/codex-plugins/codex-plugin-json.js');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  const mod = await importDist('core/agents/native-cli-worker.js');
7
7
  const root = await fs.mkdtemp(path.join(os.tmpdir(), 'sks-codex-sdk-router-'));
8
8
  const old = snapshotEnv();
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
2
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
3
3
  const mod = await importDist('core/codex-control/codex-sdk-capability.js');
4
4
  const capability = await mod.detectCodexSdkCapability();
5
5
  assertGate(capability.ok, 'Codex SDK capability must be available', capability);
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  const mod = await importDist('core/pipeline-internals/runtime-core.js');
7
7
  const root = await fs.mkdtemp(path.join(os.tmpdir(), 'sks-context7-evidence-'));
8
8
  const missionId = 'M-context7-dedupe';
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist, root, readJson } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist, root, readJson } from './gate-lib.js';
6
6
  const cardMod = await importDist('core/skills/core-skill-card.js');
7
7
  const typesMod = await importDist('core/skills/core-skill-types.js');
8
8
  const deployMod = await importDist('core/skills/core-skill-deployment.js');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist, root } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist, root } from './gate-lib.js';
6
6
  const cardMod = await importDist('core/skills/core-skill-card.js');
7
7
  const deployMod = await importDist('core/skills/core-skill-deployment.js');
8
8
  const { createRequestedScopeContract } = await importDist('core/safety/requested-scope-contract.js');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist, root } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist, root } from './gate-lib.js';
6
6
  const validationMod = await importDist('core/skills/core-skill-validation.js');
7
7
  const bufferMod = await importDist('core/skills/rejected-skill-patch-buffer.js');
8
8
  const baseInput = {
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist, root } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist, root } from './gate-lib.js';
6
6
  const cardMod = await importDist('core/skills/core-skill-card.js');
7
7
  const runtimeMod = await importDist('core/skills/core-skill-runtime.js');
8
8
  const deployMod = await importDist('core/skills/core-skill-deployment.js');
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
- import { assertGate, emitGate, importDist, root, readJson } from './sks-1-18-gate-lib.js';
4
+ import { assertGate, emitGate, importDist, root, readJson } from './gate-lib.js';
5
5
  const cardMod = await importDist('core/skills/core-skill-card.js');
6
6
  const patchMod = await importDist('core/skills/core-skill-patch.js');
7
7
  const applyMod = await importDist('core/skills/core-skill-patch-apply.js');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  const { createCandidateCard, routeSkillId } = await importDist('core/skills/core-skill-card.js');
7
7
  const { promoteToDeployedWithLedger } = await importDist('core/skills/core-skill-deployment.js');
8
8
  const { selectRouteSkill, skillProofRecord } = await importDist('core/skills/core-skill-runtime.js');
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from 'node:fs';
3
- import { assertGate, emitGate, importDist, readText, root } from './sks-1-18-gate-lib.js';
3
+ import { assertGate, emitGate, importDist, readText, root } from './gate-lib.js';
4
4
  const removed = ['team', 'mad-db', 'tmux', 'xai', 'swarm', 'agent', 'ralph', 'ui', 'glm'];
5
5
  const removedDollar = ['$Agent', '$Team', '$MAD-DB', '$Swarm', '$ShadowClone', '$Kagebunshin', '$Ralph'];
6
6
  const removedHandlers = [
@@ -80,6 +80,7 @@ try {
80
80
  path.join(home, '.agents', 'skills', 'team'),
81
81
  path.join(home, '.agents', 'skills', 'agent'),
82
82
  path.join(home, '.agents', 'skills', 'ralph'),
83
+ path.join(home, '.agents', 'skills', 'sks-research-discovery'),
83
84
  path.join(home, '.codex', 'skills', 'mad-db'),
84
85
  path.join(home, '.codex', 'sks-team.config.toml'),
85
86
  path.join(home, '.sneakoscope-global', '.codex', 'sks-team.config.toml'),
@@ -104,9 +105,10 @@ try {
104
105
  ]) {
105
106
  assertGate(!fs.existsSync(target), 'simulated update must remove every managed legacy unprefixed SKS skill', { target });
106
107
  }
107
- for (const name of ['sks-naruto', 'sks-research-discovery', 'sks-answer', 'sks-imagegen', 'sks-qa-loop', 'sks-dfix']) {
108
+ for (const name of ['sks-naruto', 'sks-research', 'sks-answer', 'sks-imagegen', 'sks-qa-loop', 'sks-dfix']) {
108
109
  assertGate(fs.existsSync(path.join(home, '.agents', 'skills', name, 'SKILL.md')), 'simulated update must install the namespaced global picker skill', { name });
109
110
  }
111
+ assertGate(!fs.existsSync(path.join(home, '.agents', 'skills', 'sks-research-discovery')), 'simulated update must remove the duplicate namespaced research-discovery picker skill', {});
110
112
  assertGate(!fs.existsSync(path.join(project, '.agents', 'skills', 'research')), 'simulated update must remove a user-authored legacy-name collision from the active picker surface', {});
111
113
  const quarantinedLegacySkills = await findFiles(path.join(project, '.sneakoscope', 'quarantine', 'skills'), 'SKILL.md');
112
114
  assertGate(quarantinedLegacySkills.length >= 1, 'simulated update must quarantine user-authored legacy-name collisions', { quarantinedLegacySkills });
@@ -421,6 +423,7 @@ async function seedUpgradeFixture(home, project) {
421
423
  await writeManagedSkill(path.join(home, '.agents', 'skills', 'agent'), 'agent');
422
424
  await writeManagedSkill(path.join(home, '.agents', 'skills', 'ralph'), 'ralph');
423
425
  await writeManagedSkill(path.join(home, '.agents', 'skills', 'naruto'), 'naruto');
426
+ await writeManagedSkill(path.join(home, '.agents', 'skills', 'sks-research-discovery'), 'sks-research-discovery');
424
427
  await writeManagedSkill(path.join(home, '.codex', 'skills', 'mad-db'), 'mad-db');
425
428
  await writeManagedSkill(path.join(home, '.codex', 'skills', 'research-discovery'), 'research-discovery');
426
429
  await writeManagedSkill(path.join(globalRuntimeRoot, '.agents', 'skills', 'answer'), 'answer');
@@ -3,7 +3,7 @@ import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
5
  import { spawnSync } from 'node:child_process';
6
- import { root, assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
6
+ import { root, assertGate, emitGate, importDist } from './gate-lib.js';
7
7
  const policy = await importDist('core/codex/codex-project-config-policy.js');
8
8
  const install = await importDist('cli/install-helpers.js');
9
9
  const journal = await importDist('core/migration/migration-transaction-journal.js');
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import { emitGate, runDfixFixture } from './sks-1-11-gate-lib.js';
2
+ import { emitGate, runDfixFixture } from './sks-cli-gate-lib.js';
3
3
  const result = runDfixFixture();
4
4
  emitGate('dfix:fixture', { mission_id: result.mission_id, fixture_root: result.fixture_root });
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { emitGate, requireContains } from './sks-1-12-real-execution-check-lib.js';
2
+ import { emitGate, requireContains } from './real-execution-check-lib.js';
3
3
  requireContains('dfix:patch-handoff', 'src/core/dfix.ts', [
4
4
  'codex_patch_handoff',
5
5
  'buildDfixCodexPatchPrompt',
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { assertGate, emitGate, readMissionJson, runDfixFixture } from './sks-1-11-gate-lib.js';
2
+ import { assertGate, emitGate, readMissionJson, runDfixFixture } from './sks-cli-gate-lib.js';
3
3
  const result = runDfixFixture();
4
4
  const verification = readMissionJson(result.mission_id, 'dfix-verification.json');
5
5
  const proof = readMissionJson(result.mission_id, 'completion-proof.json');
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { emitGate, requireContains } from './sks-1-12-real-execution-check-lib.js';
2
+ import { emitGate, requireContains } from './real-execution-check-lib.js';
3
3
  requireContains('dfix:verification-recommendation', 'src/core/dfix.ts', [
4
4
  'DFIX_VERIFICATION_SUGGESTION_ARTIFACT',
5
5
  'writeDfixVerificationSuggestion',
@@ -2,6 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import { fileURLToPath } from 'node:url';
5
+ import { RELEASE_UPGRADE_BASELINE_VERSION } from '../core/release/release-upgrade-baseline.js';
5
6
  const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..');
6
7
  const packageVersion = String(JSON.parse(fs.readFileSync(path.join(root, 'package.json'), 'utf8')).version || '').trim();
7
8
  const files = [
@@ -17,10 +18,22 @@ const files = [
17
18
  'docs/hooks-pat.md',
18
19
  'docs/goal-to-loop-migration.md',
19
20
  'docs/known-gaps.md',
20
- 'docs/release-readiness.md'
21
+ 'docs/release-readiness.md',
22
+ 'docs/telegram-and-center.md'
21
23
  ];
22
24
  const required = {
23
- 'README.md': ['CHANGELOG.md', 'docs/release-readiness.md', 'gpt-image-2'],
25
+ 'README.md': ['CHANGELOG.md', 'docs/release-readiness.md', 'gpt-image-2', 'docs/telegram-and-center.md'],
26
+ 'docs/telegram-and-center.md': [
27
+ 'sks menubar install',
28
+ 'Open SKS Control Center',
29
+ 'Remote & Telegram',
30
+ '--bot-token-stdin',
31
+ 'com.sneakoscope.telegram.bot',
32
+ 'com.sneakoscope.telegram-hub',
33
+ 'telegram_pairing_start_not_found',
34
+ 'telegram_hub_not_running',
35
+ 'sks telegram hub start'
36
+ ],
24
37
  'CHANGELOG.md': ['1.14.0', 'DFix Extreme Speed Kernel', 'hook trust doctor', 'warning-zero'],
25
38
  'docs/computer-use-evidence.md': ['sks.computer-use-live-evidence.v1', 'probe_only', 'live_capture_blocked', 'local-only', 'Codex Chrome Extension'],
26
39
  'docs/codex-lb.md': ['durable_env_file', 'durable_keychain', 'shell_profile', 'process_only_ephemeral', 'base URL only'],
@@ -46,7 +59,7 @@ const required = {
46
59
  'proof-aware fleet control',
47
60
  'npm stage publish',
48
61
  'npm stage approve <stage-id>',
49
- `6.2.0 to ${packageVersion} upgrade smoke`
62
+ `${RELEASE_UPGRADE_BASELINE_VERSION} to ${packageVersion} upgrade smoke`
50
63
  ]
51
64
  };
52
65
  const forbidden = [
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { runDirective314Gate } from './sks-3-1-4-directive-check-lib.js';
3
- await runDirective314Gate('doctor:codex-app-harness');
2
+ import { runRuntimeDomainGate } from './runtime-domain-gate-lib.js';
3
+ await runRuntimeDomainGate('doctor:codex-app-harness');
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
- import { emitGate, requireContains, root } from './sks-1-12-real-execution-check-lib.js';
4
+ import { emitGate, requireContains, root } from './real-execution-check-lib.js';
5
5
  requireContains('evidence:flagship-coverage', 'src/core/commands/image-ux-review-command.ts', [
6
6
  'visualEvidence: { image_ux_review',
7
7
  'IMAGE_UX_REVIEW_CALLOUT_EXTRACTION_REPORT_ARTIFACT'
@@ -44,7 +44,7 @@ export const SOURCE_INTELLIGENCE_FILES = [
44
44
  'src/core/super-search/runtime.ts',
45
45
  'src/core/codex/codex-web-search-adapter.ts'
46
46
  ];
47
- export const AGENT_118_FILES = [
47
+ export const AGENT_RUNTIME_FILES = [
48
48
  'src/core/agents/scout-policy.ts',
49
49
  'src/core/agents/agent-terminal-session.ts',
50
50
  'src/core/agents/zellij-right-lane-cockpit.ts',
@@ -25,7 +25,10 @@ const policyCallsiteAllowlist = new Map([
25
25
  ['mkdtemp|src/core/perf/release-latency-slo.ts|runReleaseLatencySlo|mkdtemp', 'run-local latency fixture root'],
26
26
  ['mkdtemp|src/core/release/npm-stage-tarball-verifier.ts|verifyNpmStageTarball|mkdtempSync', 'private stage-review transaction root'],
27
27
  ['mkdtemp|src/core/release/release-pack-content-scanner.ts|scanTarballTextContents|mkdtempSync', 'finally-cleaned tar scan root'],
28
- ['mkdtemp|src/core/release/release-pack-tarball.ts|tarUnpackedBytes|mkdtempSync', 'finally-cleaned tar inventory root']
28
+ ['mkdtemp|src/core/release/release-pack-tarball.ts|tarUnpackedBytes|mkdtempSync', 'finally-cleaned tar inventory root'],
29
+ ['mkdtemp|src/scripts/codex-native-gate-lib.ts|tempRoot|mkdtemp', 'per-gate isolated OS-temp fixture root'],
30
+ ['mkdtemp|src/scripts/runtime-domain-gate-lib.ts|tempRoot|mkdtemp', 'per-gate isolated OS-temp fixture root'],
31
+ ['mkdtemp|src/scripts/typed-routing-gate-lib.ts|tempRoot|mkdtemp', 'per-gate isolated OS-temp fixture root']
29
32
  ]);
30
33
  const policyCallsiteAllowlistHits = new Set();
31
34
  const splitReviewLineCounts = splitReviewFiles.map((file) => ({
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate } from './gate-lib.js';
6
6
  import { checkpointWorkerWorktree } from '../core/git/git-worktree-checkpoint.js';
7
7
  import { runGitCommand } from '../core/git/git-worktree-runner.js';
8
8
  const root = fs.mkdtempSync(path.join(os.tmpdir(), 'sks-worktree-checkpoint-'));
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate } from './gate-lib.js';
6
6
  import { crossRebaseIdleWorktrees } from '../core/git/git-worktree-cross-rebase.js';
7
7
  import { runGitCommand, gitOutputLine } from '../core/git/git-worktree-runner.js';
8
8
  const suiteRoot = fs.mkdtempSync(path.join(os.tmpdir(), 'sks-worktree-cross-rebase-'));
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
2
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
3
3
  const envelopeMod = await importDist('core/git/git-worktree-patch-envelope.js');
4
4
  const schemaMod = await importDist('core/agents/agent-patch-schema.js');
5
5
  const envelope = envelopeMod.buildGitWorktreePatchEnvelope({
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  import { makeGitFixture } from './lib/git-worktree-fixture.js';
7
7
  const managerMod = await importDist('core/git/git-worktree-manager.js');
8
8
  const cleanupMod = await importDist('core/git/git-worktree-cleanup.js');
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
4
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
5
5
  import { makeGitFixture } from './lib/git-worktree-fixture.js';
6
6
  const detectionMod = await importDist('core/git/git-repo-detection.js');
7
7
  const repo = makeGitFixture('dirty-main-detection');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  import { makeGitFixture } from './lib/git-worktree-fixture.js';
7
7
  const managerMod = await importDist('core/git/git-worktree-manager.js');
8
8
  const diffMod = await importDist('core/git/git-worktree-diff.js');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  import { makeGitFixture } from './lib/git-worktree-fixture.js';
7
7
  const managerMod = await importDist('core/git/git-worktree-manager.js');
8
8
  const repo = makeGitFixture('worktree-manifest-append');
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  import { makeGitFixture } from './lib/git-worktree-fixture.js';
7
7
  const managerMod = await importDist('core/git/git-worktree-manager.js');
8
8
  const diffMod = await importDist('core/git/git-worktree-diff.js');
@@ -3,7 +3,7 @@ import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
5
  import { performance } from 'node:perf_hooks';
6
- import { assertGate, emitGate, root } from './sks-1-18-gate-lib.js';
6
+ import { assertGate, emitGate, root } from './gate-lib.js';
7
7
  import { COMMAND_MANIFEST_LITE } from '../cli/command-manifest-lite.js';
8
8
  import { ensureDir, nowIso, runProcess, writeJsonAtomic } from '../core/fsx.js';
9
9
  import { reviewCommand } from '../core/commands/review-command.js';
@@ -0,0 +1,62 @@
1
+ #!/usr/bin/env node
2
+ import fs from 'node:fs';
3
+ import path from 'node:path';
4
+ import { assertGate, emitGate, importDist, root } from './gate-lib.js';
5
+ const { analyzeHelperDuplication, DEFAULT_MAX_COPIES } = await importDist('core/quality/helper-dedup.js');
6
+ const BASELINE = {
7
+ emit: 22,
8
+ assertGate: 12,
9
+ emitGate: 10,
10
+ sleep: 9,
11
+ delay: 8,
12
+ unique: 7,
13
+ readJson: 6,
14
+ errorCode: 5,
15
+ restoreEnv: 5,
16
+ asList: 4,
17
+ escapeRegex: 4,
18
+ exists: 4,
19
+ nonEmpty: 4,
20
+ normalizePath: 4,
21
+ normalizeStringList: 4,
22
+ parseJson: 4,
23
+ processIsAlive: 4,
24
+ read: 4,
25
+ readArg: 4,
26
+ readOption: 4,
27
+ rel: 4,
28
+ sha256: 4,
29
+ shellQuote: 4,
30
+ tail: 4,
31
+ walk: 4
32
+ };
33
+ function collect(dir, out) {
34
+ for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
35
+ const full = path.join(dir, entry.name);
36
+ if (entry.isDirectory())
37
+ collect(full, out);
38
+ else if (entry.name.endsWith('.ts')) {
39
+ out.push({ path: path.relative(root, full).split(path.sep).join('/'), text: fs.readFileSync(full, 'utf8') });
40
+ }
41
+ }
42
+ return out;
43
+ }
44
+ const sources = collect(path.join(root, 'src'), []);
45
+ const report = analyzeHelperDuplication(sources, { maxCopies: DEFAULT_MAX_COPIES, baseline: BASELINE });
46
+ const shrunk = Object.entries(BASELINE)
47
+ .filter(([name, allowed]) => {
48
+ const current = report.waived.find((group) => group.name === name)?.count ?? 0;
49
+ return current < allowed;
50
+ })
51
+ .map(([name]) => name);
52
+ console.log(JSON.stringify({ ...report, baseline_entries: Object.keys(BASELINE).length, shrunk }, null, 2));
53
+ if (shrunk.length > 0) {
54
+ console.log(`Baseline can be tightened for: ${shrunk.join(', ')}`);
55
+ }
56
+ assertGate(report.ok, 'a pure helper is defined identically in more modules than the ceiling allows — export it once and import it', report);
57
+ emitGate('quality:helper-dedup', {
58
+ max_copies: report.max_copies,
59
+ scanned_files: report.scanned_files,
60
+ scanned_helpers: report.scanned_helpers,
61
+ baselined: report.waived.length
62
+ });
@@ -4,7 +4,7 @@ import fsp from 'node:fs/promises';
4
4
  import os from 'node:os';
5
5
  import path from 'node:path';
6
6
  import { performance } from 'node:perf_hooks';
7
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
7
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
8
8
  const budgetMs = Number(process.env.SKS_HOOK_LATENCY_BUDGET_MS || 25);
9
9
  const readBudget = Number(process.env.SKS_HOOK_LATENCY_READ_BUDGET || 3);
10
10
  const root = await fsp.mkdtemp(path.join(os.tmpdir(), 'sks-hook-latency-'));
@@ -2,7 +2,7 @@
2
2
  import fs from 'node:fs/promises';
3
3
  import os from 'node:os';
4
4
  import path from 'node:path';
5
- import { assertGate, emitGate, importDist } from './sks-1-18-gate-lib.js';
5
+ import { assertGate, emitGate, importDist } from './gate-lib.js';
6
6
  const mod = await importDist('core/image/image-artifact-path-contract.js');
7
7
  const root = await fs.mkdtemp(path.join(os.tmpdir(), 'sks-image-contract-'));
8
8
  const png = path.join(root, 'fixture.png');
@@ -5,13 +5,10 @@ import { spawnSync } from 'node:child_process';
5
5
  import { osTempPngFixtureArg } from './lib/valid-png-fixture.js';
6
6
  const enabled = process.env.SKS_TEST_REAL_IMAGEGEN === '1' || process.env.SKS_REAL_IMAGEGEN === '1';
7
7
  const reportDir = path.join(process.cwd(), '.sneakoscope', 'reports');
8
- const out = path.join(reportDir, 'real-imagegen-smoke-1.14.1.json');
9
- const stableOut = path.join(reportDir, 'real-imagegen-smoke.json');
8
+ const out = path.join(reportDir, 'real-imagegen-smoke.json');
10
9
  fs.mkdirSync(reportDir, { recursive: true });
11
10
  function writeReport(report) {
12
- const text = `${JSON.stringify(report, null, 2)}\n`;
13
- fs.writeFileSync(out, text);
14
- fs.writeFileSync(stableOut, text);
11
+ fs.writeFileSync(out, `${JSON.stringify(report, null, 2)}\n`);
15
12
  }
16
13
  function parseUxReviewJson(stdout) {
17
14
  const text = String(stdout || '').trim();
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { assertGate, emitGate, importDist, root } from './sks-1-18-gate-lib.js';
2
+ import { assertGate, emitGate, importDist, root } from './gate-lib.js';
3
3
  const { runInstalledPackageSmoke } = await importDist('core/install/installed-package-smoke.js');
4
4
  const report = await runInstalledPackageSmoke(root, {
5
5
  ...(option('--tarball') ? { tarball: option('--tarball') } : {}),