sneakoscope 6.0.3 → 6.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -12
- package/config/codex-releases/{rust-v0.142.0.json → rust-v0.144.1.json} +6 -6
- package/crates/sks-core/Cargo.lock +1 -1
- package/crates/sks-core/Cargo.toml +1 -1
- package/dist/bin/fast-inline.js +18 -14
- package/dist/bin/sks-dispatch.js +2 -4
- package/dist/cli/args.js +2 -0
- package/dist/cli/command-manifest-lite.js +2 -3
- package/dist/cli/command-registry.js +3 -4
- package/dist/cli/help-fast.js +1 -1
- package/dist/cli/install-helpers.js +348 -763
- package/dist/cli/install-tool-helpers.js +287 -0
- package/dist/cli/router.js +91 -6
- package/dist/commands/codex-lb.js +188 -53
- package/dist/commands/codex.js +44 -5
- package/dist/commands/doctor.js +302 -46
- package/dist/commands/tmux.js +5 -1
- package/dist/commands/versioning.js +7 -0
- package/dist/commands/zellij-monitor-pane.js +2 -0
- package/dist/commands/zellij-viewport-pane.js +3 -1
- package/dist/commands/zellij.js +1 -1
- package/dist/config/skills-manifest.json +59 -59
- package/dist/core/agent-bridge/agent-manifest.js +48 -0
- package/dist/core/agents/agent-central-ledger.js +9 -0
- package/dist/core/agents/agent-cleanup-executor.js +334 -41
- package/dist/core/agents/agent-cleanup.js +20 -1
- package/dist/core/agents/agent-command-surface.js +3 -1
- package/dist/core/agents/agent-effort-policy.js +30 -38
- package/dist/core/agents/agent-janitor.js +9 -10
- package/dist/core/agents/agent-namespace-safety.js +56 -0
- package/dist/core/agents/agent-orchestrator.js +25 -3
- package/dist/core/agents/agent-output-validator.js +1 -1
- package/dist/core/agents/agent-plan.js +100 -21
- package/dist/core/agents/agent-role-config.js +43 -49
- package/dist/core/agents/agent-runner-codex-exec.js +18 -3
- package/dist/core/agents/agent-runner-process.js +1 -0
- package/dist/core/agents/agent-schema.js +3 -2
- package/dist/core/agents/fast-mode-policy.js +3 -5
- package/dist/core/agents/native-cli-session-swarm.js +1 -1
- package/dist/core/agents/native-worker-backend-router.js +2 -1
- package/dist/core/agents/work-partition/repo-inventory.js +68 -7
- package/dist/core/agents/zellij-right-lane-cockpit.js +2 -2
- package/dist/core/code-structure.js +5 -4
- package/dist/core/codex/agent-config-file-repair.js +94 -193
- package/dist/core/codex/codex-cli-update.js +723 -0
- package/dist/core/codex/codex-config-guard.js +38 -11
- package/dist/core/codex/codex-project-config-policy.js +3 -6
- package/dist/core/codex/codex-startup-config-postcheck.js +52 -42
- package/dist/core/codex-adapter.js +35 -22
- package/dist/core/codex-app/codex-agent-role-sync.js +13 -54
- package/dist/core/codex-app/codex-app-fast-ui-repair.js +51 -20
- package/dist/core/codex-app/codex-app-launcher.js +48 -17
- package/dist/core/codex-app/codex-app-restart.js +23 -2
- package/dist/core/codex-app/codex-app-ui-state-snapshot.js +11 -3
- package/dist/core/codex-app/sks-menubar.js +136 -5
- package/dist/core/codex-app.js +35 -14
- package/dist/core/codex-compat/codex-hook-warning-detector.js +10 -1
- package/dist/core/codex-compat/codex-release-manifest.js +6 -6
- package/dist/core/codex-control/codex-0139-doctor-real-probe.js +7 -1
- package/dist/core/codex-control/codex-0139-image-path-real-probe.js +29 -12
- package/dist/core/codex-control/codex-0139-probe-runner.js +103 -28
- package/dist/core/codex-control/codex-0139-real-probe-summary.js +7 -3
- package/dist/core/codex-control/codex-0139-real-probes.js +21 -6
- package/dist/core/codex-control/codex-0139-sandbox-real-probe.js +39 -13
- package/dist/core/codex-control/codex-0139-web-search-probe.js +28 -14
- package/dist/core/codex-control/{codex-0142-capability.js → codex-0144-capability.js} +22 -22
- package/dist/core/codex-control/codex-0144-collab-agent-real-probe.js +63 -0
- package/dist/core/codex-control/codex-lb-launch-recovery.js +278 -0
- package/dist/core/codex-control/codex-multi-agent-event-normalizer.js +5 -1
- package/dist/core/codex-control/codex-reliability-shield.js +93 -30
- package/dist/core/codex-control/codex-sdk-adapter.js +96 -13
- package/dist/core/codex-control/codex-sdk-config-policy.js +2 -1
- package/dist/core/codex-control/codex-sdk-sandbox-policy.js +6 -3
- package/dist/core/codex-control/codex-task-runner.js +62 -9
- package/dist/core/codex-control/python-codex-sdk-adapter.js +30 -3
- package/dist/core/codex-exec-output-schema.js +35 -6
- package/dist/core/codex-lb/codex-lb-env.js +30 -1
- package/dist/core/codex-lb/codex-lb-tool-catalog.js +478 -0
- package/dist/core/codex-lb/codex-lb-tool-output-recovery.js +291 -0
- package/dist/core/codex-native/codex-native-feature-broker.js +31 -38
- package/dist/core/codex-native/codex-native-feature-matrix.js +2 -2
- package/dist/core/codex-native/codex-native-repair-transaction.js +1 -1
- package/dist/core/codex-native/core-skill-manifest.js +8 -4
- package/dist/core/codex-native/native-capability-postcheck.js +16 -8
- package/dist/core/codex-native/native-capability-repair-matrix.js +76 -27
- package/dist/core/codex-plugins/codex-plugin-json.js +67 -21
- package/dist/core/codex-plugins/codex-plugin-repair.js +118 -0
- package/dist/core/codex-runtime/codex-desktop-config-policy.js +305 -0
- package/dist/core/commands/agent-bridge-command.js +23 -2
- package/dist/core/commands/agent-command.js +38 -5
- package/dist/core/commands/basic-cli.js +77 -30
- package/dist/core/commands/command-utils.js +1 -1
- package/dist/core/commands/gc-command.js +27 -4
- package/dist/core/commands/image-ux-review-command.js +55 -24
- package/dist/core/commands/mad-sks-command.js +182 -137
- package/dist/core/commands/naruto-command.js +643 -1153
- package/dist/core/commands/pipeline-command.js +1 -0
- package/dist/core/commands/research-command.js +293 -231
- package/dist/core/commands/run-command.js +100 -23
- package/dist/core/commands/team-command.js +2 -3
- package/dist/core/commands/team-legacy-observe-command.js +94 -359
- package/dist/core/commands/wiki-command.js +179 -83
- package/dist/core/computer-use-live-evidence.js +166 -3
- package/dist/core/computer-use-status.js +5 -2
- package/dist/core/daemon/sksd-hook-daemon-entrypoint.js +2 -2
- package/dist/core/daemon/sksd-hook-daemon.js +171 -28
- package/dist/core/daemon/sksd-hook-dispatch.js +2 -2
- package/dist/core/db-safety.js +2 -2
- package/dist/core/decision-lattice.js +6 -6
- package/dist/core/dfix/verification-selector.js +6 -4
- package/dist/core/doctor/browser-use-repair.js +54 -13
- package/dist/core/doctor/codex-0139-doctor.js +3 -2
- package/dist/core/doctor/codex-startup-config-repair.js +8 -3
- package/dist/core/doctor/computer-use-repair.js +28 -39
- package/dist/core/doctor/doctor-codex-startup-repair.js +24 -149
- package/dist/core/doctor/doctor-context7-repair.js +1 -1
- package/dist/core/doctor/doctor-dirty-planner.js +1 -1
- package/dist/core/doctor/doctor-native-capability-repair.js +74 -3
- package/dist/core/doctor/imagegen-repair.js +47 -12
- package/dist/core/doctor/legacy-global-hook-cleanup.js +179 -0
- package/dist/core/feature-fixture-executor.js +71 -7
- package/dist/core/feature-fixture-runner.js +53 -12
- package/dist/core/feature-fixtures.js +47 -14
- package/dist/core/feature-registry.js +53 -58
- package/dist/core/fsx.js +54 -6
- package/dist/core/harness-conflicts.js +19 -10
- package/dist/core/hooks-runtime/code-pack-freshness-preflight.js +5 -4
- package/dist/core/hooks-runtime/hook-invocation-dedupe.js +147 -0
- package/dist/core/hooks-runtime/hook-io.js +14 -4
- package/dist/core/hooks-runtime/light-turn.js +70 -0
- package/dist/core/hooks-runtime/payload-signals.js +270 -0
- package/dist/core/hooks-runtime/team-digest.js +0 -1
- package/dist/core/hooks-runtime/tool-output-quarantine.js +93 -0
- package/dist/core/hooks-runtime.js +418 -250
- package/dist/core/image/image-artifact-path-contract.js +8 -6
- package/dist/core/image/image-artifact-registry.js +5 -1
- package/dist/core/image-ux-review/imagegen-adapter.js +5 -2
- package/dist/core/imagegen/imagegen-capability.js +10 -13
- package/dist/core/imagegen/require-imagegen.js +37 -11
- package/dist/core/init/skills.js +16 -30
- package/dist/core/init.js +144 -36
- package/dist/core/managed-assets/managed-assets-manifest.js +417 -14
- package/dist/core/mission.js +24 -1
- package/dist/core/naruto/naruto-work-graph.js +70 -4
- package/dist/core/ops/reporting.js +3 -0
- package/dist/core/pipeline-internals/runtime-core.js +578 -180
- package/dist/core/pipeline-internals/runtime-gates.js +191 -49
- package/dist/core/ppt/style-tokens.js +1 -1
- package/dist/core/ppt-review/index.js +1 -1
- package/dist/core/ppt-review/slide-exporter.js +23 -17
- package/dist/core/ppt-review/slide-imagegen-review.js +1 -1
- package/dist/core/ppt-review/slide-issue-extraction.js +4 -2
- package/dist/core/preflight/parallel-preflight-engine.js +50 -1
- package/dist/core/product-design-plugin.js +2 -2
- package/dist/core/proof/route-finalizer.js +1 -1
- package/dist/core/proof/route-proof-gate.js +7 -2
- package/dist/core/proof-field.js +3 -3
- package/dist/core/provider/model-router.js +38 -32
- package/dist/core/recallpulse/policy.js +12 -28
- package/dist/core/recallpulse.js +11 -6
- package/dist/core/release/gate-manifest.js +18 -12
- package/dist/core/release/gate-pack-manifest.js +1 -1
- package/dist/core/release/npm-pack-proof.js +247 -0
- package/dist/core/release/package-dist-snapshot.js +151 -0
- package/dist/core/release/package-size-budget.js +5 -0
- package/dist/core/release/release-authorization-snapshot.js +115 -0
- package/dist/core/release/release-gate-affected-selector.js +15 -3
- package/dist/core/release/release-gate-cache-v2.js +30 -0
- package/dist/core/release/release-gate-contract.js +161 -0
- package/dist/core/release/release-gate-dag.js +44 -3
- package/dist/core/release/release-gate-hermetic-env.js +28 -17
- package/dist/core/release/release-real-contract.js +496 -0
- package/dist/core/release-parallel-full-coverage.js +31 -143
- package/dist/core/research/claim-evidence-matrix.js +41 -6
- package/dist/core/research/experiment-plan.js +14 -10
- package/dist/core/research/falsification.js +9 -2
- package/dist/core/research/implementation-blueprint-densifier.js +82 -60
- package/dist/core/research/implementation-blueprint.js +32 -26
- package/dist/core/research/mock-result.js +122 -11
- package/dist/core/research/replication-pack.js +15 -8
- package/dist/core/research/research-adversarial-review.js +1068 -0
- package/dist/core/research/research-claim-builder.js +69 -17
- package/dist/core/research/research-claim-synthesizer.js +343 -0
- package/dist/core/research/research-cycle-runner.js +53 -3
- package/dist/core/research/research-falsification-runner.js +176 -0
- package/dist/core/research/research-final-reviewer.js +44 -125
- package/dist/core/research/research-realistic-report.js +14 -6
- package/dist/core/research/research-review-artifact-digest.js +66 -0
- package/dist/core/research/research-source-evidence.js +144 -0
- package/dist/core/research/research-source-layer-catalog.js +68 -0
- package/dist/core/research/research-source-ledger-merge.js +250 -12
- package/dist/core/research/research-source-shards.js +26 -70
- package/dist/core/research/research-stage-runner.js +237 -247
- package/dist/core/research/research-super-search.js +184 -0
- package/dist/core/research/research-synthesis-prompt.js +20 -1
- package/dist/core/research/research-synthesis-writer.js +86 -5
- package/dist/core/research/research-work-graph.js +25 -18
- package/dist/core/research/source-quality-report.js +21 -0
- package/dist/core/research.js +429 -280
- package/dist/core/retention/retention-budget.js +25 -6
- package/dist/core/retention.js +980 -101
- package/dist/core/routes/constants.js +1 -1
- package/dist/core/routes/dollar-manifest-lite.js +11 -11
- package/dist/core/routes/evidence.js +4 -4
- package/dist/core/routes/ppt-policy.js +1 -1
- package/dist/core/routes.js +92 -64
- package/dist/core/runtime/task-profile.js +66 -0
- package/dist/core/runtime/verification-budget.js +12 -0
- package/dist/core/secret-redaction.js +4 -0
- package/dist/core/security/high-risk-contracts.js +6 -6
- package/dist/core/stop-gate/stop-gate-check.js +49 -12
- package/dist/core/subagents/agent-catalog.js +215 -0
- package/dist/core/subagents/model-policy.js +118 -0
- package/dist/core/subagents/naruto-help-contract.js +40 -0
- package/dist/core/subagents/official-subagent-config.js +488 -0
- package/dist/core/subagents/official-subagent-preparation.js +251 -0
- package/dist/core/subagents/official-subagent-prompt.js +137 -0
- package/dist/core/subagents/official-subagent-runner.js +129 -0
- package/dist/core/subagents/subagent-evidence.js +663 -0
- package/dist/core/subagents/terminology.js +16 -0
- package/dist/core/subagents/thread-budget.js +21 -0
- package/dist/core/subagents/triwiki-attention.js +65 -0
- package/dist/core/super-search/runtime-helpers.js +173 -19
- package/dist/core/super-search/runtime.js +140 -15
- package/dist/core/super-search/source-records.js +49 -8
- package/dist/core/team-review-policy.js +15 -0
- package/dist/core/triwiki/code-pack.js +8 -2
- package/dist/core/triwiki/triwiki-cache-key.js +108 -29
- package/dist/core/triwiki/triwiki-module-card.js +1 -1
- package/dist/core/triwiki-attention.js +13 -6
- package/dist/core/triwiki-provenance.js +274 -0
- package/dist/core/triwiki-runtime.js +21 -7
- package/dist/core/triwiki-wrongness/wrongness-ledger.js +187 -61
- package/dist/core/triwiki-wrongness/wrongness-retrieval.js +11 -2
- package/dist/core/triwiki-wrongness/wrongness-trust-policy.js +2 -0
- package/dist/core/update-check.js +23 -15
- package/dist/core/version-manager.js +51 -1
- package/dist/core/version.js +1 -1
- package/dist/core/wiki-coordinate.js +128 -12
- package/dist/core/work-order-ledger.js +208 -10
- package/dist/core/zellij/zellij-command.js +12 -1
- package/dist/core/zellij/zellij-dashboard-pane.js +3 -3
- package/dist/core/zellij/zellij-fake-adapter.js +3 -1
- package/dist/core/zellij/zellij-launcher.js +51 -21
- package/dist/core/zellij/zellij-layout-builder.js +14 -5
- package/dist/core/zellij/zellij-official-subagent-activity.js +477 -0
- package/dist/core/zellij/zellij-official-subagent-telemetry.js +264 -0
- package/dist/core/zellij/zellij-pane-proof.js +32 -6
- package/dist/core/zellij/zellij-slot-pane-renderer.js +17 -5
- package/dist/core/zellij/zellij-slot-telemetry.js +15 -3
- package/dist/core/zellij/zellij-ui-mode.js +1 -1
- package/dist/core/zellij/zellij-viewport-binder.js +3 -0
- package/dist/core/zellij/zellij-worker-pane-manager.js +5 -3
- package/dist/scripts/agent-fast-mode-default-check.js +48 -29
- package/dist/scripts/agent-role-config-repair-check.js +34 -15
- package/dist/scripts/agent-wiki-context-proof-check.js +16 -2
- package/dist/scripts/all-feature-deep-completion-check.js +14 -4
- package/dist/scripts/architecture-guard-check.js +8 -1
- package/dist/scripts/build-dist.js +17 -5
- package/dist/scripts/canonical-test-runner.js +188 -0
- package/dist/scripts/check-command-module-budget.js +38 -16
- package/dist/scripts/check-legacy-free.js +1 -1
- package/dist/scripts/check-route-modularity.js +0 -1
- package/dist/scripts/check-ts-contracts.js +1 -1
- package/dist/scripts/codex-0139-interrupt-agent-check.js +5 -1
- package/dist/scripts/{codex-0142-app-server-v2-check.js → codex-0144-app-server-v2-check.js} +11 -10
- package/dist/scripts/{codex-0142-binary-identity-check.js → codex-0144-binary-identity-check.js} +4 -4
- package/dist/scripts/codex-0144-capability-check.js +21 -0
- package/dist/scripts/{codex-0139-real-probes-check.js → codex-0144-core-real-probes-check.js} +19 -5
- package/dist/scripts/{codex-0142-doctor-wiring-check.js → codex-0144-doctor-wiring-check.js} +6 -6
- package/dist/scripts/{codex-0142-manifest-check.js → codex-0144-manifest-check.js} +11 -3
- package/dist/scripts/{codex-0142-policy-check.js → codex-0144-policy-check.js} +2 -2
- package/dist/scripts/{codex-0142-thread-store-check.js → codex-0144-thread-store-check.js} +3 -3
- package/dist/scripts/codex-app-provider-model-ui-check.js +53 -19
- package/dist/scripts/codex-app-ui-preservation-check.js +35 -4
- package/dist/scripts/codex-control-all-pipelines-check.js +7 -3
- package/dist/scripts/codex-control-side-effect-scope-check.js +2 -2
- package/dist/scripts/codex-control-tool-output-continuity-audit-check.js +27 -0
- package/dist/scripts/codex-effort-auto-discovery-check.js +1 -1
- package/dist/scripts/codex-lb-fast-mode-truth-check.js +1 -0
- package/dist/scripts/{codex-lb-gpt55-fast-profile-check.js → codex-lb-gpt56-fast-profile-check.js} +56 -5
- package/dist/scripts/codex-model-metadata-check.js +1 -1
- package/dist/scripts/codex-native-agent-role-content-check.js +15 -7
- package/dist/scripts/codex-native-repair-transaction-check.js +3 -1
- package/dist/scripts/codex-sdk-all-pipelines-check.js +7 -4
- package/dist/scripts/codex-sdk-research-pipeline-check.js +30 -8
- package/dist/scripts/codex-sdk-sandbox-policy-check.js +5 -1
- package/dist/scripts/codex-sdk-version-compat-check.js +2 -1
- package/dist/scripts/db-route-materialization-check.js +33 -0
- package/dist/scripts/dfix-fixture-check.js +1 -1
- package/dist/scripts/docs-truthfulness-check.js +4 -2
- package/dist/scripts/doctor-codex-startup-repair-check.js +47 -25
- package/dist/scripts/doctor-context7-repair-check.js +2 -1
- package/dist/scripts/doctor-fix-production-blackbox.js +12 -2
- package/dist/scripts/doctor-fixes-codex-app-fast-ui-check.js +34 -7
- package/dist/scripts/doctor-imagegen-repair-check.js +14 -4
- package/dist/scripts/doctor-startup-config-repair-blackbox.js +9 -3
- package/dist/scripts/doctor-startup-config-repair-check.js +13 -3
- package/dist/scripts/install-update-preserves-config-check.js +7 -2
- package/dist/scripts/legacy-gate-inventory-check.js +7 -5
- package/dist/scripts/legacy-strong-inventory-check.js +7 -5
- package/dist/scripts/legacy-upgrade-matrix-check.js +4 -4
- package/dist/scripts/lib/native-cli-session-swarm-check-lib.js +173 -13
- package/dist/scripts/mad-sks-app-ui-no-mutation-check.js +165 -6
- package/dist/scripts/managed-role-manifest-parity-check.js +5 -4
- package/dist/scripts/mutation-callsite-coverage-check.js +0 -11
- package/dist/scripts/naruto-codex-e2e-check.js +14 -7
- package/dist/scripts/naruto-shadow-clone-swarm-check.js +4 -201
- package/dist/scripts/npm-publish-performance-check.js +20 -12
- package/dist/scripts/official-subagent-workflow-check.js +145 -0
- package/dist/scripts/package-published-contract-check.js +6 -20
- package/dist/scripts/packlist-performance-check.js +17 -3
- package/dist/scripts/parallel-verification-engine-check.js +2 -2
- package/dist/scripts/postinstall-safe-side-effects-check.js +8 -3
- package/dist/scripts/ppt-no-mock-as-real-check.js +3 -1
- package/dist/scripts/prepublish-release-check-or-fast.js +23 -86
- package/dist/scripts/product-design-plugin-routing-check.js +1 -1
- package/dist/scripts/release-affected-selector-check.js +74 -1
- package/dist/scripts/release-check-stamp.js +324 -239
- package/dist/scripts/release-dag-full-coverage-check.js +7 -15
- package/dist/scripts/release-dynamic-presets-check.js +10 -1
- package/dist/scripts/release-gate-dag-runner-check.js +3 -3
- package/dist/scripts/release-gate-dag-runner.js +35 -11
- package/dist/scripts/release-gate-existence-audit.js +1 -2
- package/dist/scripts/release-gate-script-parity-check.js +1 -1
- package/dist/scripts/release-parallel-full-coverage-check.js +12 -6
- package/dist/scripts/release-parallel-speed-budget-check.js +18 -2
- package/dist/scripts/release-real-check.js +390 -157
- package/dist/scripts/release-registry-check.js +61 -16
- package/dist/scripts/release-runtime-truth-matrix-check.js +22 -0
- package/dist/scripts/research-blueprint-densifier-check.js +2 -2
- package/dist/scripts/research-real-cycle-no-legacy-final-md-check.js +11 -7
- package/dist/scripts/route-proof-artifact-structure-check.js +1 -0
- package/dist/scripts/search-visibility-gate-lib.js +1 -1
- package/dist/scripts/seo-geo-route-identity-check.js +30 -4
- package/dist/scripts/sizecheck.js +4 -4
- package/dist/scripts/sks-1-11-gate-lib.js +53 -6
- package/dist/scripts/sks-3-1-4-directive-check-lib.js +8 -2
- package/dist/scripts/sks-3-1-5-directive-check-lib.js +3 -2
- package/dist/scripts/sks-3-1-6-directive-check-lib.js +5 -3
- package/dist/scripts/sks-menubar-install-check.js +8 -0
- package/dist/scripts/sks-uninstall-regression-check.js +1 -1
- package/dist/scripts/sksd-daemon-check.js +16 -6
- package/dist/scripts/trust-fixture-check.js +32 -10
- package/dist/scripts/write-build-manifest.js +2 -1
- package/dist/scripts/wrongness-fixture-check.js +1 -1
- package/dist/scripts/zellij-layout-valid-check.js +36 -11
- package/dist/scripts/zellij-pane-proof-check.js +33 -2
- package/dist/scripts/zellij-real-session-cleanup-check.js +122 -2
- package/dist/scripts/zellij-real-session-launch-check.js +76 -5
- package/dist/scripts/zellij-slot-pane-renderer-check.js +4 -4
- package/dist/scripts/zellij-spawn-on-demand-layout-check.js +3 -3
- package/docs/demo.tape +1 -1
- package/infra-harness-gates.json +1486 -0
- package/package.json +32 -19
- package/release-gates.v2.json +4060 -0
- package/runtime-required-scripts.json +9 -0
- package/schemas/codex/{app-server-0.142 → app-server-0.144}/codex_app_server_protocol.v2.schemas.json +1146 -781
- package/schemas/codex/codex-0139-real-probe-result.schema.json +39 -5
- package/schemas/codex/ppt-slide-issue-ledger.schema.json +2 -1
- package/dist/commands/db.js +0 -6
- package/dist/core/codex-control/codex-0139-multi-agent-real-probe.js +0 -107
- package/dist/core/commands/db-command.js +0 -146
- package/dist/core/research/prompt.js +0 -15
- package/dist/scripts/agent-native-release-gate.js +0 -274
- package/dist/scripts/codex-0142-capability-check.js +0 -21
- package/dist/scripts/codex-control-tool-call-sequence-repair-check.js +0 -14
- package/dist/scripts/command-performance-scorecard-check.js +0 -204
- package/dist/scripts/config-managed-merge-callsite-coverage-check.js +0 -212
- package/dist/scripts/dollar-performance-scorecard-check.js +0 -257
- package/dist/scripts/gate-timing-check.js +0 -16
- package/dist/scripts/ops-maturity-scorecard-check.js +0 -12
- package/dist/scripts/performance-baseline-check.js +0 -12
- package/dist/scripts/performance-improvement-report-check.js +0 -58
- package/dist/scripts/release-parallel-check.js +0 -389
- package/dist/scripts/release-runner-efficiency-check.js +0 -15
- package/dist/scripts/retention-long-run-smoke-check.js +0 -299
- package/docs/assets/sneakoscope-architecture-pipeline.jpg +0 -0
|
@@ -1,299 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// @ts-nocheck
|
|
3
|
-
import fs from 'node:fs';
|
|
4
|
-
import fsp from 'node:fs/promises';
|
|
5
|
-
import os from 'node:os';
|
|
6
|
-
import path from 'node:path';
|
|
7
|
-
import { spawnSync } from 'node:child_process';
|
|
8
|
-
import { assertGate, emitGate, importDist, root } from './sks-1-18-gate-lib.js';
|
|
9
|
-
const tmp = await fsp.mkdtemp(path.join(os.tmpdir(), 'sks-retention-long-run-'));
|
|
10
|
-
const projectRoot = path.join(tmp, 'project');
|
|
11
|
-
const sksRoot = path.join(projectRoot, '.sneakoscope');
|
|
12
|
-
const userFile = path.join(projectRoot, 'user-notes.md');
|
|
13
|
-
const latestMissionId = 'M-20260708-010099-longrun';
|
|
14
|
-
const latestSuperSearchId = 'M-20260708-010109-super-search-09';
|
|
15
|
-
const latestSeoId = 'M-20260708-010114-seo-04';
|
|
16
|
-
try {
|
|
17
|
-
await seedFixtureProject();
|
|
18
|
-
const { enforceRetention, applyRetentionPlan, retentionStatus, refreshMissionIndex } = await importDist('core/retention.js');
|
|
19
|
-
const planned = await enforceRetention(projectRoot, {
|
|
20
|
-
dryRun: true,
|
|
21
|
-
rotateLargeJsonl: true,
|
|
22
|
-
pruneReportLogs: true,
|
|
23
|
-
policy: smokePolicy()
|
|
24
|
-
});
|
|
25
|
-
const stablePlanned = await enforceRetention(projectRoot, {
|
|
26
|
-
dryRun: true,
|
|
27
|
-
rotateLargeJsonl: true,
|
|
28
|
-
pruneReportLogs: true,
|
|
29
|
-
policy: smokePolicy()
|
|
30
|
-
});
|
|
31
|
-
const applied = await applyRetentionPlan(projectRoot, {
|
|
32
|
-
planHash: stablePlanned.plan.plan_hash,
|
|
33
|
-
rotateLargeJsonl: true,
|
|
34
|
-
pruneReportLogs: true,
|
|
35
|
-
policy: smokePolicy()
|
|
36
|
-
});
|
|
37
|
-
const refreshedIndex = await refreshMissionIndex(projectRoot);
|
|
38
|
-
const retention = await retentionStatus(projectRoot);
|
|
39
|
-
const status = runJson(['status', '--json']);
|
|
40
|
-
const routeStatus = runJson(['route', 'status', '--json']);
|
|
41
|
-
const sources = runSuperSearchSourcesLatest();
|
|
42
|
-
const seoStatus = runJson(['seo-geo-optimizer', 'status', 'latest', '--json']);
|
|
43
|
-
const artifacts = [
|
|
44
|
-
path.join(sksRoot, 'missions', latestSuperSearchId, 'super-search', 'super-search-proof.json'),
|
|
45
|
-
path.join(sksRoot, 'missions', latestSuperSearchId, 'super-search', 'super-search-gate.json'),
|
|
46
|
-
path.join(sksRoot, 'missions', latestSuperSearchId, 'super-search', 'source-ledger.json'),
|
|
47
|
-
path.join(sksRoot, 'missions', latestSuperSearchId, 'super-search', 'claim-ledger.json'),
|
|
48
|
-
path.join(sksRoot, 'missions', latestSeoId, 'seo-gate.json'),
|
|
49
|
-
path.join(sksRoot, 'missions', latestSeoId, 'search-visibility', 'verification-report.json')
|
|
50
|
-
];
|
|
51
|
-
for (const artifact of artifacts)
|
|
52
|
-
assertGate(fs.existsSync(artifact), 'retention long-run smoke must preserve proof/gate/ledger artifacts', { artifact });
|
|
53
|
-
const largeJsonlFiles = listFiles(sksRoot).filter((file) => file.endsWith('.jsonl') && fs.statSync(file).size > smokePolicy().max_event_log_bytes);
|
|
54
|
-
assertGate(planned.plan?.mission_index?.mission_count >= 115, 'retention long-run smoke must plan with 100+ fixture missions indexed', planned.plan?.mission_index);
|
|
55
|
-
assertGate(applied.ok === true, 'retention long-run smoke apply must accept matching plan hash', applied);
|
|
56
|
-
assertGate(refreshedIndex.mission_count >= 115, 'retention long-run smoke must rebuild corrupted index with all missions', refreshedIndex);
|
|
57
|
-
assertGate(refreshedIndex.latest_mission_id === latestSeoId, 'retention long-run smoke must preserve latest mission lookup after compact/apply', refreshedIndex);
|
|
58
|
-
assertGate(retention.mission_index?.latest_mission_id === latestSeoId, 'retention status must report latest mission after compact/apply', retention);
|
|
59
|
-
assertGate(status.active_mission === latestMissionId, 'sks status must preserve active route mission after compact/apply', status);
|
|
60
|
-
assertGate(routeStatus.active === true && routeStatus.mission_id === latestMissionId && routeStatus.route === '$Naruto', 'sks route status must preserve route state after compact/apply', routeStatus);
|
|
61
|
-
assertGate(sources.ok === true && Array.isArray(sources.sources) && sources.sources.length >= 2, 'sks super-search sources latest must resolve latest Super-Search mission after compact/apply', sources);
|
|
62
|
-
assertGate(seoStatus.ok === true && seoStatus.mission_id === latestSeoId, 'sks seo-geo-optimizer status latest must resolve latest SEO mission after compact/apply', seoStatus);
|
|
63
|
-
assertGate(largeJsonlFiles.length === 0, 'retention long-run smoke must rotate large JSONL files under budget', { largeJsonlFiles: largeJsonlFiles.map((file) => path.relative(projectRoot, file)) });
|
|
64
|
-
assertGate(fs.existsSync(userFile), 'retention long-run smoke must not delete user files outside .sneakoscope', { userFile });
|
|
65
|
-
assertGate(fs.readFileSync(userFile, 'utf8') === 'preserve me\n', 'retention long-run smoke must preserve user file contents', { userFile });
|
|
66
|
-
const report = {
|
|
67
|
-
schema: 'sks.retention-long-run-smoke.v1',
|
|
68
|
-
ok: true,
|
|
69
|
-
generated_at: new Date().toISOString(),
|
|
70
|
-
mission_count: refreshedIndex.mission_count,
|
|
71
|
-
latest_mission_id: refreshedIndex.latest_mission_id,
|
|
72
|
-
active_mission_id: latestMissionId,
|
|
73
|
-
action_count: applied.action_count || 0,
|
|
74
|
-
super_search_mission_count: 10,
|
|
75
|
-
seo_marketing_mission_count: 5,
|
|
76
|
-
corrupted_index_rebuilt: refreshedIndex.mission_count >= 115,
|
|
77
|
-
super_search_sources: sources.sources.length,
|
|
78
|
-
seo_mission_id: seoStatus.mission_id,
|
|
79
|
-
user_files_untouched: true,
|
|
80
|
-
blockers: []
|
|
81
|
-
};
|
|
82
|
-
const reportPath = path.join(root, '.sneakoscope', 'reports', 'retention-long-run-smoke.json');
|
|
83
|
-
await writeJson(reportPath, report);
|
|
84
|
-
emitGate('retention:long-run-smoke', {
|
|
85
|
-
mission_count: report.mission_count,
|
|
86
|
-
latest_mission_id: report.latest_mission_id,
|
|
87
|
-
action_count: report.action_count,
|
|
88
|
-
super_search_sources: report.super_search_sources,
|
|
89
|
-
seo_mission_id: report.seo_mission_id,
|
|
90
|
-
report: '.sneakoscope/reports/retention-long-run-smoke.json'
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
finally {
|
|
94
|
-
await fsp.rm(tmp, { recursive: true, force: true }).catch(() => undefined);
|
|
95
|
-
}
|
|
96
|
-
function smokePolicy() {
|
|
97
|
-
return {
|
|
98
|
-
max_missions: 100,
|
|
99
|
-
max_mission_age_days: 36500,
|
|
100
|
-
max_event_log_bytes: 4096,
|
|
101
|
-
max_tmp_age_hours: 0,
|
|
102
|
-
max_session_state_files: 1000,
|
|
103
|
-
prune_old_missions: false,
|
|
104
|
-
prune_disposable_report_logs: true
|
|
105
|
-
};
|
|
106
|
-
}
|
|
107
|
-
async function seedFixtureProject() {
|
|
108
|
-
await fsp.mkdir(path.join(projectRoot, '.sneakoscope', 'missions'), { recursive: true });
|
|
109
|
-
await fsp.mkdir(path.join(projectRoot, '.sneakoscope', 'state'), { recursive: true });
|
|
110
|
-
await fsp.mkdir(path.join(projectRoot, '.sneakoscope', 'reports'), { recursive: true });
|
|
111
|
-
await fsp.writeFile(path.join(projectRoot, 'package.json'), '{"name":"retention-long-run-fixture","private":true}\n');
|
|
112
|
-
await fsp.writeFile(userFile, 'preserve me\n');
|
|
113
|
-
for (let index = 0; index < 100; index++) {
|
|
114
|
-
const id = index === 99 ? latestMissionId : `M-20260708-0100${String(index).padStart(2, '0')}-mission`;
|
|
115
|
-
const missionDir = path.join(sksRoot, 'missions', id);
|
|
116
|
-
await fsp.mkdir(missionDir, { recursive: true });
|
|
117
|
-
await writeJson(path.join(missionDir, 'mission.json'), {
|
|
118
|
-
id,
|
|
119
|
-
mode: index % 3 === 0 ? 'naruto' : 'team',
|
|
120
|
-
prompt: `retention long-run fixture ${index}`,
|
|
121
|
-
created_at: `2026-07-08T01:00:${String(index).padStart(2, '0')}.000Z`,
|
|
122
|
-
phase: index === 99 ? 'RUNNING' : 'DONE'
|
|
123
|
-
});
|
|
124
|
-
await fsp.writeFile(path.join(missionDir, 'events.jsonl'), largeJsonl(index));
|
|
125
|
-
await writeJson(path.join(missionDir, 'completion-proof.json'), completionProof(id));
|
|
126
|
-
await writeJson(path.join(missionDir, 'naruto-gate.json'), { schema: 'sks.naruto-gate.v1', ok: true, route: '$Naruto', mission_id: id });
|
|
127
|
-
}
|
|
128
|
-
for (let index = 0; index < 10; index++) {
|
|
129
|
-
const id = index === 9 ? latestSuperSearchId : `M-20260708-01010${index}-super-search`;
|
|
130
|
-
const missionDir = path.join(sksRoot, 'missions', id);
|
|
131
|
-
const artifactDir = path.join(missionDir, 'super-search');
|
|
132
|
-
await fsp.mkdir(artifactDir, { recursive: true });
|
|
133
|
-
await writeJson(path.join(missionDir, 'mission.json'), {
|
|
134
|
-
id,
|
|
135
|
-
mode: 'super-search',
|
|
136
|
-
prompt: `retention Super-Search fixture ${index}`,
|
|
137
|
-
created_at: `2026-07-08T01:00:3${index}.000Z`,
|
|
138
|
-
phase: 'DONE'
|
|
139
|
-
});
|
|
140
|
-
await fsp.writeFile(path.join(missionDir, 'events.jsonl'), largeJsonl(index + 30));
|
|
141
|
-
const sources = [
|
|
142
|
-
sourceRecord(`source-${index}-a`, 'https://github.com/mandarange/Sneakoscope-Codex', 'Sneakoscope Codex'),
|
|
143
|
-
sourceRecord(`source-${index}-b`, 'https://www.npmjs.com/package/sneakoscope', 'sneakoscope npm')
|
|
144
|
-
];
|
|
145
|
-
const claims = [{ id: `claim-${index}`, status: 'supported', text: 'Source-backed retention claim.', source_ids: sources.map((source) => source.source_id) }];
|
|
146
|
-
await writeJson(path.join(artifactDir, 'source-ledger.json'), { schema: 'sks.super-search-source-ledger.v1', ok: true, sources });
|
|
147
|
-
await writeJson(path.join(artifactDir, 'claim-ledger.json'), { schema: 'sks.super-search-claim-ledger.v1', ok: true, claims });
|
|
148
|
-
await writeJson(path.join(artifactDir, 'super-search-proof.json'), { schema: 'sks.super-search-proof.v1', ok: true, mode: 'fast', verified_source_count: sources.length });
|
|
149
|
-
await writeJson(path.join(artifactDir, 'super-search-result.json'), { schema: 'sks.super-search-result.v1', ok: true, mode: 'fast', sources, claims, proof: { mode: 'fast', verified_source_count: sources.length } });
|
|
150
|
-
await writeJson(path.join(artifactDir, 'super-search-gate.json'), { schema: 'sks.super-search-gate.v1', ok: true, route: '$Super-Search', mission_id: id });
|
|
151
|
-
}
|
|
152
|
-
for (let index = 0; index < 5; index++) {
|
|
153
|
-
const id = index === 4 ? latestSeoId : `M-20260708-01011${index}-seo`;
|
|
154
|
-
const missionDir = path.join(sksRoot, 'missions', id);
|
|
155
|
-
const artifactDir = path.join(missionDir, 'search-visibility');
|
|
156
|
-
await fsp.mkdir(artifactDir, { recursive: true });
|
|
157
|
-
await writeJson(path.join(missionDir, 'mission.json'), {
|
|
158
|
-
id,
|
|
159
|
-
mode: 'seo',
|
|
160
|
-
prompt: `retention SEO marketing fixture ${index}`,
|
|
161
|
-
created_at: `2026-07-08T01:01:1${index}.000Z`,
|
|
162
|
-
phase: 'DONE'
|
|
163
|
-
});
|
|
164
|
-
await fsp.writeFile(path.join(missionDir, 'events.jsonl'), largeJsonl(index + 40));
|
|
165
|
-
await writeJson(path.join(artifactDir, 'intake.json'), { schema: 'sks.search-visibility.intake.v1', ok: true, mission_id: id, route: '$SEO-GEO-OPTIMIZER', blockers: [] });
|
|
166
|
-
await writeJson(path.join(artifactDir, 'verification-report.json'), { schema: 'sks.search-visibility.verification.v1', ok: true, status: 'verified_partial', blockers: [] });
|
|
167
|
-
await writeJson(path.join(missionDir, 'seo-gate.json'), { schema: 'sks.search-visibility.gate.v1', ok: true, passed: true, mission_id: id, blockers: [] });
|
|
168
|
-
await writeJson(path.join(missionDir, 'completion-proof.json'), completionProof(id));
|
|
169
|
-
}
|
|
170
|
-
await fsp.writeFile(path.join(sksRoot, 'missions', 'index.json'), '{"schema":"sks.mission-index.v1","mission_count":"corrupted","missions":null}\n');
|
|
171
|
-
await writeJson(path.join(sksRoot, 'state', 'current.json'), {
|
|
172
|
-
mission_id: latestMissionId,
|
|
173
|
-
mode: 'NARUTO',
|
|
174
|
-
route: '$Naruto',
|
|
175
|
-
route_command: '$Naruto',
|
|
176
|
-
phase: 'RUNNING',
|
|
177
|
-
route_closed: false,
|
|
178
|
-
updated_at: '2026-07-08T01:00:40.000Z'
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
function largeJsonl(seed) {
|
|
182
|
-
const rows = [];
|
|
183
|
-
for (let index = 0; index < 180; index++) {
|
|
184
|
-
rows.push(JSON.stringify({ ts: `2026-07-08T01:${String(seed % 60).padStart(2, '0')}:${String(index % 60).padStart(2, '0')}.000Z`, event: 'retention.long_run', seed, index, payload: 'x'.repeat(80) }));
|
|
185
|
-
}
|
|
186
|
-
return `${rows.join('\n')}\n`;
|
|
187
|
-
}
|
|
188
|
-
function completionProof(id) {
|
|
189
|
-
return {
|
|
190
|
-
schema: 'sks.completion-proof.v1',
|
|
191
|
-
execution_class: 'mock_fixture',
|
|
192
|
-
mission_id: id,
|
|
193
|
-
route: '$Naruto',
|
|
194
|
-
status: 'verified',
|
|
195
|
-
evidence: { commands: [], files: [], agents: { status: 'not_required' } },
|
|
196
|
-
claims: [],
|
|
197
|
-
unverified: [],
|
|
198
|
-
blockers: []
|
|
199
|
-
};
|
|
200
|
-
}
|
|
201
|
-
function sourceRecord(sourceId, url, title) {
|
|
202
|
-
return {
|
|
203
|
-
source_id: sourceId,
|
|
204
|
-
provider_id: 'direct_url',
|
|
205
|
-
source_family: 'web',
|
|
206
|
-
source_type: 'known_url',
|
|
207
|
-
title,
|
|
208
|
-
canonical_url: url,
|
|
209
|
-
original_url: url,
|
|
210
|
-
domain: new URL(url).hostname,
|
|
211
|
-
retrieved_at: '2026-07-08T01:00:00.000Z',
|
|
212
|
-
snippet: title,
|
|
213
|
-
content_artifact: null,
|
|
214
|
-
content_sha256: `sha-${sourceId}`,
|
|
215
|
-
content_length: title.length,
|
|
216
|
-
acquisition_verdict: 'verified_content',
|
|
217
|
-
acquisition_path: ['url_acquisition'],
|
|
218
|
-
authority_tier: 'A1',
|
|
219
|
-
primary_source: true,
|
|
220
|
-
authenticated_source: false,
|
|
221
|
-
local_only_raw: false,
|
|
222
|
-
warnings: [],
|
|
223
|
-
blockers: []
|
|
224
|
-
};
|
|
225
|
-
}
|
|
226
|
-
async function writeJson(file, data) {
|
|
227
|
-
await fsp.mkdir(path.dirname(file), { recursive: true });
|
|
228
|
-
await fsp.writeFile(file, `${JSON.stringify(data, null, 2)}\n`);
|
|
229
|
-
}
|
|
230
|
-
function runJson(args) {
|
|
231
|
-
const result = spawnSync(process.execPath, [path.join(root, 'dist', 'bin', 'sks.js'), ...args], {
|
|
232
|
-
cwd: projectRoot,
|
|
233
|
-
encoding: 'utf8',
|
|
234
|
-
maxBuffer: 16 * 1024 * 1024,
|
|
235
|
-
env: { ...process.env, SKS_DISABLE_NETWORK: '1' }
|
|
236
|
-
});
|
|
237
|
-
assertGate(result.status === 0, `command must succeed: sks ${args.join(' ')}`, {
|
|
238
|
-
status: result.status,
|
|
239
|
-
stdout: result.stdout.slice(-2000),
|
|
240
|
-
stderr: result.stderr.slice(-2000)
|
|
241
|
-
});
|
|
242
|
-
return JSON.parse(result.stdout || '{}');
|
|
243
|
-
}
|
|
244
|
-
function runSuperSearchSourcesLatest() {
|
|
245
|
-
const result = spawnSync(process.execPath, [path.join(root, 'dist', 'bin', 'sks.js'), 'super-search', 'sources', 'latest', '--json'], {
|
|
246
|
-
cwd: projectRoot,
|
|
247
|
-
encoding: 'utf8',
|
|
248
|
-
maxBuffer: 16 * 1024 * 1024,
|
|
249
|
-
env: { ...process.env, SKS_DISABLE_NETWORK: '1' }
|
|
250
|
-
});
|
|
251
|
-
if (result.status === 0)
|
|
252
|
-
return JSON.parse(result.stdout || '{}');
|
|
253
|
-
const output = `${result.stdout}\n${result.stderr}`;
|
|
254
|
-
if (!output.includes('SKS project migration blocked')) {
|
|
255
|
-
assertGate(false, 'command must succeed: sks super-search sources latest --json', {
|
|
256
|
-
status: result.status,
|
|
257
|
-
stdout: result.stdout.slice(-2000),
|
|
258
|
-
stderr: result.stderr.slice(-2000)
|
|
259
|
-
});
|
|
260
|
-
}
|
|
261
|
-
const missionDir = latestSuperSearchMissionDir();
|
|
262
|
-
const ledger = readJsonSync(path.join(missionDir, 'super-search', 'source-ledger.json'));
|
|
263
|
-
return {
|
|
264
|
-
...ledger,
|
|
265
|
-
ok: ledger?.ok !== false,
|
|
266
|
-
inspected_via: 'underlying_helper_after_migration_gate',
|
|
267
|
-
mission: missionDir,
|
|
268
|
-
blockers: ledger?.blockers || []
|
|
269
|
-
};
|
|
270
|
-
}
|
|
271
|
-
function latestSuperSearchMissionDir() {
|
|
272
|
-
const missions = path.join(sksRoot, 'missions');
|
|
273
|
-
const dirs = fs.readdirSync(missions, { withFileTypes: true })
|
|
274
|
-
.filter((entry) => entry.isDirectory())
|
|
275
|
-
.map((entry) => path.join(missions, entry.name))
|
|
276
|
-
.sort()
|
|
277
|
-
.reverse();
|
|
278
|
-
for (const dir of dirs) {
|
|
279
|
-
if (fs.existsSync(path.join(dir, 'super-search', 'source-ledger.json')))
|
|
280
|
-
return dir;
|
|
281
|
-
}
|
|
282
|
-
assertGate(false, 'retention long-run smoke must find latest Super-Search mission via helper', { missions });
|
|
283
|
-
}
|
|
284
|
-
function readJsonSync(file) {
|
|
285
|
-
return JSON.parse(fs.readFileSync(file, 'utf8'));
|
|
286
|
-
}
|
|
287
|
-
function listFiles(dir) {
|
|
288
|
-
const out = [];
|
|
289
|
-
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
290
|
-
for (const entry of entries) {
|
|
291
|
-
const file = path.join(dir, entry.name);
|
|
292
|
-
if (entry.isDirectory())
|
|
293
|
-
out.push(...listFiles(file));
|
|
294
|
-
else if (entry.isFile())
|
|
295
|
-
out.push(file);
|
|
296
|
-
}
|
|
297
|
-
return out;
|
|
298
|
-
}
|
|
299
|
-
//# sourceMappingURL=retention-long-run-smoke-check.js.map
|
|
Binary file
|