sneakoscope 8.0.2 → 8.0.4
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 +150 -37
- package/config/skills-hash-ledger.v1.json +1 -1
- package/crates/sks-core/Cargo.lock +1 -1
- package/crates/sks-core/Cargo.toml +1 -1
- package/dist/bin/fast-inline.js +55 -27
- package/dist/bin/install.js +6 -32
- package/dist/bin/sks-dispatch.js +1 -1
- package/dist/cli/args.js +0 -2
- package/dist/cli/cli-theme.js +18 -9
- package/dist/cli/command-manifest-lite.js +6 -6
- package/dist/cli/command-registry.js +6 -6
- package/dist/cli/feature-commands.js +9 -7
- package/dist/cli/install-helpers-codex-lb-chain.js +198 -7
- package/dist/cli/install-helpers-codex-lb-config.js +78 -10
- package/dist/cli/install-helpers-install-support.js +9 -6
- package/dist/cli/install-helpers.js +101 -49
- package/dist/cli/install-tool-helpers.js +2 -82
- package/dist/cli/output.js +6 -1
- package/dist/cli/router.js +101 -2
- package/dist/commands/codex-lb.js +119 -19
- package/dist/commands/doctor-profile.js +1 -1
- package/dist/commands/doctor.js +727 -144
- package/dist/commands/mad-sks.js +1 -5
- package/dist/config/skills-manifest.json +4 -2
- package/dist/core/agents/agent-codex-cockpit.js +0 -3
- package/dist/core/agents/agent-effort-policy.js +5 -5
- package/dist/core/agents/agent-janitor.js +0 -20
- package/dist/core/agents/agent-orchestrator.js +9 -56
- package/dist/core/agents/agent-output-validator.js +2 -3
- package/dist/core/agents/agent-patch-schema.js +2 -2
- package/dist/core/agents/agent-proof-evidence.js +0 -65
- package/dist/core/agents/agent-recursion-guard.js +1 -1
- package/dist/core/agents/agent-runner-codex-exec.js +5 -3
- package/dist/core/agents/agent-scheduler.js +327 -85
- package/dist/core/agents/agent-schema.js +1 -1
- package/dist/core/agents/agent-trust-report.js +0 -36
- package/dist/core/agents/agent-worker-pipeline.js +0 -1
- package/dist/core/agents/fast-mode-policy.js +1 -3
- package/dist/core/agents/native-cli-worker-runtime-proof.js +1 -1
- package/dist/core/agents/native-cli-worker-runtime.js +69 -647
- package/dist/core/agents/native-cli-worker.js +6 -7
- package/dist/core/agents/native-worker-backend-router.js +2 -32
- package/dist/core/agents/no-subagent-scaling-policy.js +1 -1
- package/dist/core/agents/parallel-runtime-proof.js +1 -6
- package/dist/core/agents/runtime-proof-summary.js +1 -35
- package/dist/core/architecture-hardening/contracts/contracts.js +193 -0
- package/dist/core/architecture-hardening/migration/migration.js +111 -0
- package/dist/core/architecture-hardening/state/state-service.js +155 -0
- package/dist/core/artifact-schemas.js +0 -3
- package/dist/core/codex/codex-config-guard.js +238 -52
- package/dist/core/codex-adapter.js +5 -3
- package/dist/core/codex-app/auxiliary-oauth-policy.js +36 -0
- package/dist/core/codex-app/catalog-compat/catalog-service.js +104 -0
- package/dist/core/codex-app/child-policy/child-policy.js +35 -0
- package/dist/core/codex-app/codex-app-handoff.js +0 -1
- package/dist/core/codex-app/codex-hook-lifecycle.js +1 -1
- package/dist/core/codex-app/codex-init-deep.js +1 -1
- package/dist/core/codex-app/menubar/app-bundle.js +2 -0
- package/dist/core/codex-app/menubar/constants.js +14 -1
- package/dist/core/codex-app/menubar/global-install.js +288 -0
- package/dist/core/codex-app/menubar/installer.js +79 -14
- package/dist/core/codex-app/menubar/launch-agent.js +267 -45
- package/dist/core/codex-app/menubar/paths.js +3 -0
- package/dist/core/codex-app/menubar/rollback.js +55 -7
- package/dist/core/codex-app/menubar/status.js +75 -4
- package/dist/core/codex-app/provider-child-policy.js +64 -0
- package/dist/core/codex-app/provider-mode.js +91 -0
- package/dist/core/codex-app/provider-operation-stages.js +20 -0
- package/dist/core/codex-app/provider-session-policy.js +85 -0
- package/dist/core/codex-app/session-policy/session-pinning.js +68 -0
- package/dist/core/codex-app.js +3 -2
- package/dist/core/codex-control/codex-0139-image-path-real-probe.js +3 -1
- package/dist/core/codex-control/codex-0139-web-search-probe.js +3 -1
- package/dist/core/codex-control/codex-app-server-runtime-env.js +13 -4
- package/dist/core/codex-control/codex-app-server-v2-client.js +3 -3
- package/dist/core/codex-control/codex-control-proof.js +0 -1
- package/dist/core/codex-control/codex-task-runner.js +1 -4
- package/dist/core/codex-exec-output-schema.js +4 -1
- package/dist/core/codex-lb/codex-lb-env.js +63 -72
- package/dist/core/codex-lb/codex-lb-setup.js +15 -2
- package/dist/core/codex-lb/desktop-bridge/header-policy.js +6 -0
- package/dist/core/codex-lb/desktop-bridge/http-forward.js +48 -6
- package/dist/core/codex-lb/desktop-bridge/security.js +134 -0
- package/dist/core/codex-lb/desktop-bridge/server.js +9 -3
- package/dist/core/codex-lb/desktop-bridge/state.js +26 -6
- package/dist/core/codex-lb/desktop-bridge/types.js +1 -0
- package/dist/core/codex-lb/desktop-center-credentials.js +517 -58
- package/dist/core/codex-lb/desktop-controller.js +177 -56
- package/dist/core/codex-lb/desktop-service.js +179 -40
- package/dist/core/codex-lb/legacy-migration.js +1 -3
- package/dist/core/codex-lb/native-openai-transport/transport.js +68 -0
- package/dist/core/codex-lb/probes/cli-image-tool-probe.js +1 -1
- package/dist/core/codex-lb/provider-routing/provider-router.js +58 -0
- package/dist/core/codex-lb/routing-truth.js +327 -0
- package/dist/core/codex-native/codex-native-feature-broker.js +4 -0
- package/dist/core/codex-native/codex-native-pattern-analysis.js +1 -2
- package/dist/core/codex-native/core-skill-manifest.js +1 -1
- package/dist/core/codex-plugins/codex-plugin-json.js +26 -6
- package/dist/core/codex-plugins/codex-plugin-repair.js +32 -6
- package/dist/core/commands/basic-cli.js +9 -7
- package/dist/core/commands/computer-use-command.js +1 -1
- package/dist/core/commands/image-ux-review-command.js +16 -9
- package/dist/core/commands/install-package-command.js +105 -0
- package/dist/core/commands/intent-normalization/normalizer.js +96 -0
- package/dist/core/commands/mad-sks-command.js +23 -274
- package/dist/core/commands/mad-sks-headless.js +11 -30
- package/dist/core/commands/naruto-command.js +0 -25
- package/dist/core/commands/qa-loop-command.js +104 -22
- package/dist/core/commands/remote-command.js +2 -2
- package/dist/core/commands/research-command.js +10 -5
- package/dist/core/commands/telegram-command.js +407 -0
- package/dist/core/config-adopt/config-adopt-command.js +35 -0
- package/dist/core/config-adopt/config-adopt.js +346 -0
- package/dist/core/config-adopt/index.js +3 -0
- package/dist/core/doctor/command-alias-cleanup.js +4 -1
- package/dist/core/doctor/current-project-guidance-nested.js +37 -6
- package/dist/core/doctor/current-project-guidance.js +15 -9
- package/dist/core/doctor/doctor-dirty-planner.js +1 -4
- package/dist/core/doctor/doctor-readiness-matrix.js +15 -18
- package/dist/core/doctor/retired-managed-residue-private.js +4 -3
- package/dist/core/doctor/retired-managed-residue-runtime.js +2 -2
- package/dist/core/doctor/skill-legacy-surface.js +11 -10
- package/dist/core/doctor/sks-menubar-doctor.js +4 -0
- package/dist/core/evaluation.js +0 -19
- package/dist/core/evidence/v2/evidence-key.js +105 -0
- package/dist/core/feature-fixtures.js +12 -7
- package/dist/core/feature-registry.js +52 -21
- package/dist/core/hooks-runtime/hook-context.js +9 -0
- package/dist/core/hooks-runtime/managed-skill-admission.js +54 -4
- package/dist/core/hooks-runtime/official-subagent-lifecycle.js +69 -52
- package/dist/core/hooks-runtime/stop-finalization.js +226 -0
- package/dist/core/hooks-runtime/stop-repeat-guard.js +21 -2
- package/dist/core/hooks-runtime/subagent-skill-availability-contract.js +2 -2
- package/dist/core/hooks-runtime/subagent-skill-availability-evidence.js +3 -3
- package/dist/core/hooks-runtime/subagent-skill-availability-guards.js +43 -5
- package/dist/core/hooks-runtime/subagent-skill-availability.js +64 -30
- package/dist/core/hooks-runtime/subagent-stop-hook.js +15 -2
- package/dist/core/hooks-runtime.js +179 -212
- package/dist/core/image/reference-evidence/reference-registry.js +145 -0
- package/dist/core/image-ux-review/imagegen-adapter.js +21 -9
- package/dist/core/image-ux-review/reference-policy/reference-policy.js +9 -0
- package/dist/core/imagegen/codex-lb-imagegen-target.js +8 -0
- package/dist/core/imagegen/imagegen-capability.js +59 -2
- package/dist/core/imagegen/require-imagegen.js +2 -2
- package/dist/core/init/skills.js +17 -3
- package/dist/core/init.js +3 -3
- package/dist/core/install/installed-package-smoke.js +23 -5
- package/dist/core/json/canonical.js +9 -0
- package/dist/core/locks/file-lock.js +0 -1
- package/dist/core/loops/loop-continuation-enforcer.js +65 -7
- package/dist/core/loops/loop-decomposer.js +0 -1
- package/dist/core/loops/loop-gate-runner.js +65 -4
- package/dist/core/loops/loop-gate-selector.js +0 -2
- package/dist/core/loops/loop-proof-validation.js +38 -0
- package/dist/core/loops/loop-risk-classifier.js +1 -1
- package/dist/core/loops/loop-runtime.js +14 -2
- package/dist/core/loops/loop-scheduler.js +7 -2
- package/dist/core/loops/loop-worker-runtime.js +0 -15
- package/dist/core/loops/loop-worktree-runtime.js +52 -4
- package/dist/core/managed-assets/managed-assets-manifest.js +14 -14
- package/dist/core/naruto/hardware-capacity-probe.js +9 -6
- package/dist/core/naruto/naruto-active-pool.js +2 -14
- package/dist/core/naruto/naruto-concurrency-governor.js +71 -31
- package/dist/core/naruto/naruto-loop-worker-router.js +0 -2
- package/dist/core/naruto/naruto-verification-dag.js +0 -1
- package/dist/core/naruto/naruto-write-e2e.js +1 -2
- package/dist/core/naruto/resource-pressure-monitor.js +0 -4
- package/dist/core/observability/architecture-hardening/safe-projection.js +65 -0
- package/dist/core/perf/import-graph-budget.js +0 -1
- package/dist/core/perf/release-latency-slo.js +3 -2
- package/dist/core/preflight/parallel-preflight-engine.js +2 -15
- package/dist/core/product-design-app-server.js +13 -1
- package/dist/core/proof/fake-real-proof-policy.js +2 -17
- package/dist/core/proof/route-proof-gate.js +2 -10
- package/dist/core/proof/route-proof-policy.js +1 -1
- package/dist/core/proof/runtime-evidence-policy.js +185 -0
- package/dist/core/proof/runtime-truth-matrix.js +64 -39
- package/dist/core/proof/validation.js +27 -11
- package/dist/core/provider/provider-context.js +18 -2
- package/dist/core/providers/openrouter/openrouter-account.js +3 -2
- package/dist/core/python-tools/python-tool-runner.js +1 -1
- package/dist/core/qa-loop/qa-execution-control.js +57 -0
- package/dist/core/questions.js +1 -1
- package/dist/core/release/extreme-parallel-scheduler.js +0 -3
- package/dist/core/release/gate-manifest.js +3 -7
- package/dist/core/release/gate-pack-manifest.js +3 -7
- package/dist/core/release/package-size-budget.js +2 -2
- package/dist/core/release/physical-release-gates.js +189 -0
- package/dist/core/release/publish-preflight.js +113 -0
- package/dist/core/release/release-gate-affected-selector.js +0 -2
- package/dist/core/release/release-gate-batch-runner.js +1 -1
- package/dist/core/release/release-gate-node.js +0 -1
- package/dist/core/release/release-gate-resource-governor.js +0 -1
- package/dist/core/release/release-pack-receipt.js +5 -8
- package/dist/core/release/release-real-contract.js +0 -6
- package/dist/core/release/resource-class-budget.js +0 -1
- package/dist/core/release/stage-publish.js +178 -36
- package/dist/core/research/research-adversarial-review.js +103 -9
- package/dist/core/research.js +1 -1
- package/dist/core/retention.js +0 -1
- package/dist/core/routes/constants.js +1 -1
- package/dist/core/routes/diagnostic-allowlist.js +0 -1
- package/dist/core/routes/dollar-manifest-lite.js +1 -1
- package/dist/core/routes.js +46 -15
- package/dist/core/runtime/execution-control.js +226 -0
- package/dist/core/runtime/progress-recovery/progress-recovery.js +89 -0
- package/dist/core/runtime/task-profile.js +10 -4
- package/dist/core/runtime/verification-budget.js +10 -1
- package/dist/core/safety/intent-contract/intent-contract.js +94 -0
- package/dist/core/safety/mutation-guard.js +0 -2
- package/dist/core/safety/mutation-ledger.js +0 -2
- package/dist/core/safety/requested-scope-contract.js +0 -0
- package/dist/core/search-visibility/discovery.js +1 -1
- package/dist/core/search-visibility/index.js +12 -0
- package/dist/core/search-visibility/verifier.js +112 -3
- package/dist/core/security/private-credential-file.js +209 -0
- package/dist/core/session/project-namespace.js +0 -5
- package/dist/core/skills/skill-agent-metadata.js +1 -3
- package/dist/core/strategy/adhd-orchestrating-gate.js +0 -1
- package/dist/core/subagents/agent-catalog.js +19 -34
- package/dist/core/subagents/model-policy.js +65 -24
- package/dist/core/subagents/naruto-help-contract.js +8 -8
- package/dist/core/subagents/naruto-host-credentials.js +13 -0
- package/dist/core/subagents/official-subagent-config.js +16 -6
- package/dist/core/subagents/official-subagent-preparation.js +35 -16
- package/dist/core/subagents/official-subagent-prompt.js +7 -7
- package/dist/core/subagents/official-subagent-runner.js +27 -4
- package/dist/core/subagents/role-model-preferences.js +1 -1
- package/dist/core/subagents/thread-budget.js +19 -12
- package/dist/core/subagents/wave-lifecycle.js +18 -6
- package/dist/core/telegram/access.js +58 -0
- package/dist/core/telegram/client.js +157 -0
- package/dist/core/telegram/confirmation.js +37 -0
- package/dist/core/telegram/doctor.js +154 -0
- package/dist/core/telegram/index.js +9 -0
- package/dist/core/telegram/keychain.js +317 -0
- package/dist/core/telegram/liveness.js +118 -0
- package/dist/core/telegram/poller.js +90 -0
- package/dist/core/telegram/redaction.js +15 -0
- package/dist/core/telegram/state-lock.js +416 -0
- package/dist/core/telegram/types.js +1 -0
- package/dist/core/text/strings.js +3 -0
- package/dist/core/triwiki/context-graph/store/evidence-write-lock.js +29 -0
- package/dist/core/triwiki/context-graph/store/fragment-cache.js +24 -0
- package/dist/core/triwiki/context-graph/store/snapshot-store.js +69 -21
- package/dist/core/triwiki/triwiki-gate-impact-map.js +2 -2
- package/dist/core/triwiki/triwiki-module-card.js +1 -2
- package/dist/core/update/installed-cli-resolution.js +170 -0
- package/dist/core/update/update-diagnostics.js +52 -0
- package/dist/core/update/update-migration-state.js +30 -12
- package/dist/core/update/update-operation.js +2 -1
- package/dist/core/update/update-stage-diagnostics.js +38 -0
- package/dist/core/update/update-status.js +2 -9
- package/dist/core/update-check.js +279 -91
- package/dist/core/version.js +1 -1
- package/dist/native/sks-menubar/Sources/AppDelegate.swift +19 -1
- package/dist/native/sks-menubar/Sources/AppIdentity.swift +7 -0
- package/dist/native/sks-menubar/Sources/ControlCenterWindowController.swift +6 -2
- package/dist/native/sks-menubar/Sources/OperationCoordinator.swift +159 -92
- package/dist/native/sks-menubar/Sources/OperationModels.swift +389 -0
- package/dist/native/sks-menubar/Sources/OverviewViewController.swift +57 -0
- package/dist/native/sks-menubar/Sources/ProcessClient.swift +3 -1
- package/dist/native/sks-menubar/Sources/ProvidersConnectTest.swift +115 -0
- package/dist/native/sks-menubar/Sources/ProvidersFastMode.swift +17 -0
- package/dist/native/sks-menubar/Sources/ProvidersMultiProvider.swift +3 -0
- package/dist/native/sks-menubar/Sources/ProvidersOpenRouter.swift +58 -17
- package/dist/native/sks-menubar/Sources/ProvidersReliability.swift +302 -0
- package/dist/native/sks-menubar/Sources/ProvidersRoleModels.swift +5 -0
- package/dist/native/sks-menubar/Sources/ProvidersRoutingTruth.swift +190 -0
- package/dist/native/sks-menubar/Sources/ProvidersViewController.swift +158 -126
- package/dist/native/sks-menubar/Sources/RemoteCodingViewController.swift +462 -26
- package/dist/native/sks-menubar/Sources/SKSKeychainStore.swift +344 -0
- package/dist/native/sks-menubar/Sources/SecureProcessEnvelope.swift +27 -0
- package/dist/native/sks-menubar/Sources/SingletonInstanceGuard.swift +328 -0
- package/dist/native/sks-menubar/Sources/StatusItemController.swift +10 -2
- package/dist/native/sks-menubar/Sources/TelegramPrivateFileStore.swift +498 -0
- package/dist/native/sks-menubar/Sources/TelegramPrivateFileSupport.swift +236 -0
- package/dist/native/sks-menubar/Sources/TelegramProcessGateway.swift +454 -0
- package/dist/native/sks-menubar/Sources/TelegramRuntimeSupport.swift +56 -0
- package/dist/native/sks-menubar/Sources/TelegramStateLock.swift +448 -0
- package/dist/native/sks-menubar/Sources/TelegramSupport.swift +187 -0
- package/dist/native/sks-menubar/Sources/TelegramTransport.swift +499 -0
- package/dist/native/sks-menubar/Sources/main.swift +15 -1
- package/dist/scripts/all-feature-deep-completion-check.js +5 -1
- package/dist/scripts/check-publish-tag.js +56 -0
- package/dist/scripts/codex-lb-fast-mode-truth-check.js +10 -3
- package/dist/scripts/codex-lb-fast-ui-preservation-check.js +12 -3
- package/dist/scripts/codex-lb-gpt56-fast-profile-check.js +4 -2
- package/dist/scripts/codex-native-agent-role-content-check.js +3 -3
- package/dist/scripts/codex-native-gate-lib.js +14 -7
- package/dist/scripts/current-command-surface-check.js +7 -7
- package/dist/scripts/current-surface-update-e2e-check.js +4 -3
- package/dist/scripts/current-upgrade-matrix-check.js +5 -24
- package/dist/scripts/docs-truthfulness-check.js +17 -13
- package/dist/scripts/gate-lib.js +0 -2
- package/dist/scripts/gate-policy-audit-check.js +3 -2
- package/dist/scripts/harness-benchmark-check.js +1 -1
- package/dist/scripts/init-deep-backup-retention-check.js +1 -1
- package/dist/scripts/lib/codex-sdk-gate-lib.js +1 -2
- package/dist/scripts/loop-directive-check-lib.js +28 -38
- package/dist/scripts/mad-sks-app-ui-no-mutation-check.js +14 -180
- package/dist/scripts/mad-sks-launch-sql-plane-boundary-check.js +2 -11
- package/dist/scripts/official-subagent-workflow-check.js +1 -1
- package/dist/scripts/packlist-performance-check.js +1 -2
- package/dist/scripts/prepublish-release-check-or-fast.js +32 -0
- package/dist/scripts/publish-preflight.js +12 -0
- package/dist/scripts/release-affected-selector-check.js +2 -2
- package/dist/scripts/release-gate-batch-runner-check.js +2 -2
- package/dist/scripts/release-metadata-check.js +8 -12
- package/dist/scripts/release-real-check.js +2 -54
- package/dist/scripts/runtime-domain-gate-lib.js +2 -96
- package/dist/scripts/runtime-proof-summary-check.js +2 -6
- package/dist/scripts/search-visibility-gate-lib.js +0 -1
- package/dist/scripts/sks-cli-gate-lib.js +1 -1
- package/dist/scripts/typed-routing-gate-lib.js +7 -59
- package/docs/demo.tape +1 -1
- package/infra-harness-gates.json +1 -1456
- package/package.json +10 -7
- package/release-gates.v2.json +0 -1
- package/schemas/agents/parallel-runtime-proof.schema.json +0 -2
- package/schemas/codex/agent-result.schema.json +0 -6
- package/schemas/naruto/naruto-concurrency-governor.schema.json +1 -3
- package/schemas/release/release-gate-node.schema.json +1 -1
- package/dist/commands/zellij-lane.js +0 -22
- package/dist/commands/zellij-monitor-pane.js +0 -26
- package/dist/commands/zellij-slot-column-anchor.js +0 -22
- package/dist/commands/zellij-slot-pane.js +0 -80
- package/dist/commands/zellij-viewport-pane.js +0 -57
- package/dist/commands/zellij.js +0 -422
- package/dist/core/agents/agent-runner-zellij.js +0 -164
- package/dist/core/agents/agent-slot-pane-binding-proof.js +0 -96
- package/dist/core/agents/parallel-write-fixture.js +0 -305
- package/dist/core/agents/worker-pane-communication-contract.js +0 -100
- package/dist/core/agents/zellij-lane-supervisor.js +0 -428
- package/dist/core/agents/zellij-right-lane-cockpit.js +0 -66
- package/dist/core/doctor/doctor-zellij-repair.js +0 -40
- package/dist/core/ops/upgrade-migration-fixtures.js +0 -119
- package/dist/core/proof/route-finalizer-fixtures.js +0 -21
- package/dist/core/zellij/homebrew-policy.js +0 -43
- package/dist/core/zellij/zellij-capability.js +0 -126
- package/dist/core/zellij/zellij-clipboard-config.js +0 -52
- package/dist/core/zellij/zellij-command.js +0 -149
- package/dist/core/zellij/zellij-fake-adapter.js +0 -186
- package/dist/core/zellij/zellij-lane-renderer.js +0 -706
- package/dist/core/zellij/zellij-lane-runtime.js +0 -189
- package/dist/core/zellij/zellij-launcher.js +0 -268
- package/dist/core/zellij/zellij-layout-builder.js +0 -191
- package/dist/core/zellij/zellij-monitor-renderer.js +0 -52
- package/dist/core/zellij/zellij-official-subagent-activity.js +0 -526
- package/dist/core/zellij/zellij-official-subagent-telemetry.js +0 -258
- package/dist/core/zellij/zellij-pane-proof.js +0 -226
- package/dist/core/zellij/zellij-right-column-manager.js +0 -308
- package/dist/core/zellij/zellij-screen-proof.js +0 -120
- package/dist/core/zellij/zellij-self-heal-types.js +0 -44
- package/dist/core/zellij/zellij-self-heal.js +0 -408
- package/dist/core/zellij/zellij-slot-column-anchor.js +0 -304
- package/dist/core/zellij/zellij-slot-pane-renderer.js +0 -521
- package/dist/core/zellij/zellij-slot-telemetry.js +0 -384
- package/dist/core/zellij/zellij-theme.js +0 -66
- package/dist/core/zellij/zellij-ui-mode.js +0 -34
- package/dist/core/zellij/zellij-update.js +0 -348
- package/dist/core/zellij/zellij-viewport-binder.js +0 -61
- package/dist/core/zellij/zellij-worker-pane-manager.js +0 -881
- package/dist/core/zellij/zellij-worker-pane-summary.js +0 -64
- package/dist/native/sks-menubar/Tests/AppRuntimeTestSupport.swift +0 -26
- package/dist/native/sks-menubar/Tests/OperationCoordinatorTests.swift +0 -174
- package/dist/native/sks-menubar/Tests/ProcessClientTests.swift +0 -20
- package/dist/native/sks-menubar/Tests/ProvidersViewControllerTests.swift +0 -142
- package/dist/scripts/zellij-pane-proof-check.js +0 -88
- package/dist/scripts/zellij-real-session-cleanup-check.js +0 -139
- package/dist/scripts/zellij-real-session-launch-check.js +0 -126
- package/dist/scripts/zellij-screen-proof-check.js +0 -43
- package/schemas/zellij/zellij-right-column-state.schema.json +0 -40
- package/schemas/zellij/zellij-slot-telemetry.schema.json +0 -89
- package/schemas/zellij/zellij-worker-pane.schema.json +0 -53
- package/scripts/build-clean-atomic.mjs +0 -323
|
@@ -5,6 +5,7 @@ import { projectRoot, readStdin, readText } from '../core/fsx.js';
|
|
|
5
5
|
import { flag, readOption } from '../cli/args.js';
|
|
6
6
|
import { printJson } from '../cli/output.js';
|
|
7
7
|
import { printCodexLbSetupWarnings } from '../cli/codex-lb-setup-warning-output.js';
|
|
8
|
+
import { testCodexLbConnection } from '../cli/install-helpers-codex-lb-chain.js';
|
|
8
9
|
import { codexLbMetrics, readCodexLbCircuit, recordCodexLbHealthEvent, resetCodexLbCircuit, codexLbProofEvidence } from '../core/codex-lb-circuit.js';
|
|
9
10
|
import { checkCodexLbResponseChain, codexLbStatus, configureCodexLb, repairCodexLbAuth } from '../cli/install-helpers.js';
|
|
10
11
|
import { buildCodexLbSetupPlan, renderCodexLbSetupPlan } from '../core/codex-lb/codex-lb-setup.js';
|
|
@@ -13,6 +14,7 @@ import { loadCodexLbEnv } from '../core/codex-lb/codex-lb-env.js';
|
|
|
13
14
|
import { activateCodexLbDesktopMode, buildCodexLbDesktopCapabilities, codexLbDesktopStatusV2, configureCodexLbCliMode, disableCodexLbDesktopRouting, migrateLegacyCodexLbDesktopMode, readCodexLbDesktopDeepEvidence, readCodexLbDesktopDeepEvidenceTrustAnchors, rollbackCodexLbDesktopMode } from '../core/codex-lb/desktop-controller.js';
|
|
14
15
|
import { serveDesktopBridge } from '../core/codex-lb/desktop-service.js';
|
|
15
16
|
import { parseCodexLbGatewayAuthTransport } from '../core/codex-lb/desktop-mode.js';
|
|
17
|
+
import { codexLbRoutingTruthIsActive, measureAndWriteCodexLbRoutingTruth } from '../core/codex-lb/routing-truth.js';
|
|
16
18
|
export async function run(command, args = []) {
|
|
17
19
|
const root = await projectRoot();
|
|
18
20
|
const action = args[0] || 'status';
|
|
@@ -26,7 +28,12 @@ export async function run(command, args = []) {
|
|
|
26
28
|
return;
|
|
27
29
|
}
|
|
28
30
|
if (action === 'status' || action === 'check') {
|
|
29
|
-
const
|
|
31
|
+
const options = controllerOptions(args);
|
|
32
|
+
options.networkProbes = action === 'check'
|
|
33
|
+
|| flag(args, '--deep')
|
|
34
|
+
|| flag(args, '--fix')
|
|
35
|
+
|| flag(args, '--remeasure');
|
|
36
|
+
const result = await codexLbDesktopStatusV2(options);
|
|
30
37
|
if (result.ok !== true)
|
|
31
38
|
process.exitCode = 1;
|
|
32
39
|
if (flag(args, '--json'))
|
|
@@ -45,6 +52,29 @@ export async function run(command, args = []) {
|
|
|
45
52
|
process.exitCode = 1;
|
|
46
53
|
return;
|
|
47
54
|
}
|
|
55
|
+
if (action === 'connect-test') {
|
|
56
|
+
const status = await codexLbStatus();
|
|
57
|
+
const modelSelection = await resolveCodexLbHealthModel(status);
|
|
58
|
+
const loadedEnv = await loadCodexLbEnv({
|
|
59
|
+
home: path.dirname(path.dirname(status.env_path)),
|
|
60
|
+
envPath: status.env_path
|
|
61
|
+
});
|
|
62
|
+
const result = await testCodexLbConnection(status, {
|
|
63
|
+
requireSelected: true,
|
|
64
|
+
model: modelSelection.model,
|
|
65
|
+
baseUrl: loadedEnv.base_url,
|
|
66
|
+
apiKey: loadedEnv.secret_api_key,
|
|
67
|
+
credentialBindingBlockers: loadedEnv.credential_binding.blockers
|
|
68
|
+
});
|
|
69
|
+
if (!result.ok)
|
|
70
|
+
process.exitCode = 1;
|
|
71
|
+
if (flag(args, '--json'))
|
|
72
|
+
return printJson(result);
|
|
73
|
+
console.log(result.ok
|
|
74
|
+
? `codex-lb connect test: ok (${result.model}, ${result.latency_ms}ms): ${result.result || ''}`
|
|
75
|
+
: `codex-lb connect test: failed (${result.status})`);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
48
78
|
if (action === 'health' || action === 'verify-chain' || action === 'chain') {
|
|
49
79
|
const allowUnverifiedToolOutputRecovery = codexLbToolOutputRecoveryOverrideAcknowledged({ args });
|
|
50
80
|
const status = await codexLbStatus({ probeToolOutputRecovery: true, allowUnverifiedToolOutputRecovery });
|
|
@@ -73,7 +103,21 @@ export async function run(command, args = []) {
|
|
|
73
103
|
apiKey: loadedEnv.secret_api_key
|
|
74
104
|
})
|
|
75
105
|
: { ok: false, status: blocker, codex_lb: status };
|
|
76
|
-
const
|
|
106
|
+
const routingTruth = await measureAndWriteCodexLbRoutingTruth({
|
|
107
|
+
selected: status.selected === true,
|
|
108
|
+
baseUrl: loadedEnv.base_url,
|
|
109
|
+
apiKey: loadedEnv.secret_api_key,
|
|
110
|
+
authTransport: 'x-codex-lb-api-key'
|
|
111
|
+
}, {
|
|
112
|
+
home: path.dirname(path.dirname(status.env_path))
|
|
113
|
+
});
|
|
114
|
+
const result = {
|
|
115
|
+
...chain,
|
|
116
|
+
ok: chain.ok === true && routingTruth.ok,
|
|
117
|
+
codex_lb: status,
|
|
118
|
+
model_selection: modelSelection,
|
|
119
|
+
routing_truth: routingTruth
|
|
120
|
+
};
|
|
77
121
|
if (!result.ok)
|
|
78
122
|
process.exitCode = 1;
|
|
79
123
|
if (flag(args, '--json'))
|
|
@@ -98,9 +142,17 @@ export async function run(command, args = []) {
|
|
|
98
142
|
const evidence = await fastEvidenceFromChain(chain, readOption(args, '--request-log', readOption(args, '--request-log-json', null)));
|
|
99
143
|
const providerReady = status.provider_contract_ok === true;
|
|
100
144
|
const chainVerified = isCodexLbFastChainVerified(chain);
|
|
145
|
+
const routingTruth = await measureAndWriteCodexLbRoutingTruth({
|
|
146
|
+
selected: status.selected === true,
|
|
147
|
+
baseUrl: loadedEnv.base_url,
|
|
148
|
+
apiKey: loadedEnv.secret_api_key,
|
|
149
|
+
authTransport: 'x-codex-lb-api-key'
|
|
150
|
+
}, {
|
|
151
|
+
home: path.dirname(path.dirname(status.env_path))
|
|
152
|
+
});
|
|
101
153
|
const result = {
|
|
102
154
|
schema: 'sks.codex-lb-fast-check.v1',
|
|
103
|
-
ok: Boolean(providerReady && chainVerified && evidence.fast_requested && evidence.fast_actual),
|
|
155
|
+
ok: Boolean(providerReady && chainVerified && routingTruth.ok && evidence.fast_requested && evidence.fast_actual),
|
|
104
156
|
status: !providerReady
|
|
105
157
|
? 'provider_contract_drift'
|
|
106
158
|
: chain.skipped === true
|
|
@@ -115,11 +167,13 @@ export async function run(command, args = []) {
|
|
|
115
167
|
codex_lb: status,
|
|
116
168
|
model_selection: modelSelection,
|
|
117
169
|
chain,
|
|
170
|
+
routing_truth: routingTruth,
|
|
118
171
|
evidence,
|
|
119
172
|
degraded_models: Array.isArray(chain.degraded_models) ? chain.degraded_models : [],
|
|
120
173
|
quota_low: Boolean(chain.quota_low),
|
|
121
174
|
blockers: [
|
|
122
175
|
...(providerReady ? [] : ['codex_lb_provider_contract_drift']),
|
|
176
|
+
...routingTruth.blockers,
|
|
123
177
|
...modelSelection.blockers,
|
|
124
178
|
...(chain.skipped === true
|
|
125
179
|
? ['codex_lb_fast_check_chain_skipped']
|
|
@@ -181,6 +235,7 @@ export async function run(command, args = []) {
|
|
|
181
235
|
writeEnvFile: true,
|
|
182
236
|
syncLaunchctl: true,
|
|
183
237
|
desktopMode: 'cli-provider',
|
|
238
|
+
useDefaultProvider: current.mode === 'cli-provider' && current.routing_active === true,
|
|
184
239
|
allowUnverifiedToolOutputRecovery: codexLbToolOutputRecoveryOverrideAcknowledged({ args })
|
|
185
240
|
});
|
|
186
241
|
let routing = null;
|
|
@@ -201,8 +256,8 @@ export async function run(command, args = []) {
|
|
|
201
256
|
action: 'set-key',
|
|
202
257
|
provider_ready: result.ok === true,
|
|
203
258
|
routing_active: Boolean(result.ok
|
|
204
|
-
&& current.mode === 'desktop-native-bridge'
|
|
205
|
-
|
|
259
|
+
&& ((current.mode === 'desktop-native-bridge' && routing?.ok !== false)
|
|
260
|
+
|| (current.mode === 'cli-provider' && result.codex_lb?.selected === true))),
|
|
206
261
|
activation_required: Boolean(result.ok
|
|
207
262
|
&& current.mode !== 'desktop-native-bridge'
|
|
208
263
|
&& current.mode !== 'desktop-dual-auth-compat'),
|
|
@@ -247,7 +302,7 @@ export async function run(command, args = []) {
|
|
|
247
302
|
if (flag(args, '--json'))
|
|
248
303
|
return printJson(result);
|
|
249
304
|
console.log(result.ok === true
|
|
250
|
-
? `codex-lb CLI provider
|
|
305
|
+
? `codex-lb CLI provider active (${String(result.routing_truth?.actual_host || 'verified route')}).`
|
|
251
306
|
: `codex-lb CLI provider setup failed: ${String(result.status || 'failed')}`);
|
|
252
307
|
return;
|
|
253
308
|
}
|
|
@@ -468,6 +523,7 @@ export async function run(command, args = []) {
|
|
|
468
523
|
host: options.host,
|
|
469
524
|
apiKey: options.apiKey,
|
|
470
525
|
desktopMode: 'cli-provider',
|
|
526
|
+
useDefaultProvider: options.useDefaultProvider,
|
|
471
527
|
gatewayAuthTransport: options.gatewayAuthTransport,
|
|
472
528
|
keychain: options.keychain,
|
|
473
529
|
storeKeychain: options.keychain,
|
|
@@ -502,6 +558,17 @@ export async function run(command, args = []) {
|
|
|
502
558
|
})
|
|
503
559
|
: null;
|
|
504
560
|
const capabilityDiagnosticOk = codexLbSetupCapabilityDiagnosticOk(capabilities);
|
|
561
|
+
const setupRoutingTruth = result.ok && options.desktopMode === 'cli-provider'
|
|
562
|
+
? await measureAndWriteCodexLbRoutingTruth({
|
|
563
|
+
selected: result.codex_lb?.selected === true,
|
|
564
|
+
baseUrl: result.base_url || null,
|
|
565
|
+
apiKey: options.apiKey,
|
|
566
|
+
authTransport: 'x-codex-lb-api-key'
|
|
567
|
+
}, {
|
|
568
|
+
home: path.dirname(path.dirname(result.env_path))
|
|
569
|
+
})
|
|
570
|
+
: desktopActivation?.post_activation_status?.routing_truth || null;
|
|
571
|
+
const cliRoutingActive = codexLbRoutingTruthIsActive(setupRoutingTruth);
|
|
505
572
|
const shaped = {
|
|
506
573
|
...result,
|
|
507
574
|
schema: 'sks.codex-lb-setup.v2',
|
|
@@ -516,9 +583,11 @@ export async function run(command, args = []) {
|
|
|
516
583
|
desktop_auth_mutated: false,
|
|
517
584
|
fast_mode_mutated: false,
|
|
518
585
|
provider_ready: result.ok === true,
|
|
519
|
-
routing_active: Boolean(result.ok && desktopActivation?.ok === true),
|
|
586
|
+
routing_active: Boolean(result.ok && (desktopActivation?.ok === true || cliRoutingActive)),
|
|
587
|
+
routing_truth: setupRoutingTruth,
|
|
520
588
|
activation_required: Boolean(result.ok
|
|
521
589
|
&& options.desktopMode === 'cli-provider'
|
|
590
|
+
&& !cliRoutingActive
|
|
522
591
|
&& desktopActivation === null),
|
|
523
592
|
desktop_activation: desktopActivation,
|
|
524
593
|
capabilities
|
|
@@ -617,12 +686,12 @@ export async function run(command, args = []) {
|
|
|
617
686
|
console.log(`codex-lb proof evidence: ${result.status}`);
|
|
618
687
|
return;
|
|
619
688
|
}
|
|
620
|
-
console.error('Usage: sks codex-lb status|setup|set-key|use-desktop-full|use-cli|disable|capabilities [--level shallow|transport|deep] [--evidence <file> --trust-anchors <file>]|migrate-legacy-desktop|rollback <receipt-id>|health|metrics|doctor|repair|circuit reset|circuit record-fixture|proof-evidence [--json]');
|
|
689
|
+
console.error('Usage: sks codex-lb status|setup|set-key|connect-test|use-desktop-full|use-cli|disable|capabilities [--level shallow|transport|deep] [--evidence <file> --trust-anchors <file>]|migrate-legacy-desktop|rollback <receipt-id>|health|metrics|doctor|repair|circuit reset|circuit record-fixture|proof-evidence [--json]');
|
|
621
690
|
console.error(` ${CODEX_LB_TOOL_OUTPUT_RECOVERY_OVERRIDE_FLAG} explicitly acknowledge an old/unverified proxy for this command (unsafe)`);
|
|
622
691
|
console.error(' set-key swap the codex-lb API key (reuses the stored host): sks codex-lb set-key --api-key-stdin');
|
|
623
692
|
console.error(' --keychain fail-closed until a dedicated signed SKS Keychain helper is available; the default 0600 env file is used');
|
|
624
693
|
console.error(' use-desktop-full keep ChatGPT OAuth/built-in OpenAI and route data through the local bridge');
|
|
625
|
-
console.error(' use-cli
|
|
694
|
+
console.error(' use-cli verify, write, and atomically select the CLI codex-lb provider');
|
|
626
695
|
console.error(' disable remove only SKS-managed Desktop routing; auth.json is untouched');
|
|
627
696
|
process.exitCode = 1;
|
|
628
697
|
}
|
|
@@ -668,25 +737,35 @@ async function resolveCodexLbModel(status = {}, env = process.env, opts = {}) {
|
|
|
668
737
|
const configured = topLevelTomlString(config, 'model');
|
|
669
738
|
if (configured)
|
|
670
739
|
return { model: configured, source: 'global_config', blockers: [] };
|
|
740
|
+
const home = String(env.HOME || '').trim();
|
|
671
741
|
const configuredCatalogPath = topLevelTomlString(config, 'model_catalog_json');
|
|
672
|
-
|
|
742
|
+
const defaultCatalogPath = configPath
|
|
743
|
+
? path.join(path.dirname(configPath), 'models_cache.json')
|
|
744
|
+
: home
|
|
745
|
+
? path.join(home, '.codex', 'models_cache.json')
|
|
746
|
+
: '';
|
|
747
|
+
const requestedCatalogPath = configuredCatalogPath || defaultCatalogPath;
|
|
748
|
+
if (!requestedCatalogPath)
|
|
673
749
|
return { model: null, source: null, blockers: [`${opts.blockerPrefix}_model_unselected`] };
|
|
674
|
-
const
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
: configuredCatalogPath;
|
|
750
|
+
const expandedCatalogPath = requestedCatalogPath.startsWith('~/') && home
|
|
751
|
+
? path.join(home, requestedCatalogPath.slice(2))
|
|
752
|
+
: requestedCatalogPath;
|
|
678
753
|
const catalogPath = path.isAbsolute(expandedCatalogPath)
|
|
679
754
|
? expandedCatalogPath
|
|
680
755
|
: path.resolve(path.dirname(configPath), expandedCatalogPath);
|
|
681
756
|
try {
|
|
682
|
-
const
|
|
757
|
+
const catalogText = await readText(catalogPath, '');
|
|
758
|
+
if (!catalogText.trim()) {
|
|
759
|
+
return { model: null, source: null, blockers: [`${opts.blockerPrefix}_model_unselected`] };
|
|
760
|
+
}
|
|
761
|
+
const payload = JSON.parse(catalogText);
|
|
683
762
|
const model = selectCatalogModel(payload, opts.requirePriority === true);
|
|
684
763
|
return model
|
|
685
|
-
? { model, source: 'model_catalog_json', blockers: [] }
|
|
686
|
-
: { model: null, source: 'model_catalog_json', blockers: [`${opts.blockerPrefix}_${opts.requirePriority === true ? 'priority_' : ''}model_unavailable`] };
|
|
764
|
+
? { model, source: configuredCatalogPath ? 'model_catalog_json' : 'codex_models_cache', blockers: [] }
|
|
765
|
+
: { model: null, source: configuredCatalogPath ? 'model_catalog_json' : 'codex_models_cache', blockers: [`${opts.blockerPrefix}_${opts.requirePriority === true ? 'priority_' : ''}model_unavailable`] };
|
|
687
766
|
}
|
|
688
767
|
catch {
|
|
689
|
-
return { model: null, source: 'model_catalog_json', blockers: [`${opts.blockerPrefix}_catalog_invalid`] };
|
|
768
|
+
return { model: null, source: configuredCatalogPath ? 'model_catalog_json' : 'codex_models_cache', blockers: [`${opts.blockerPrefix}_catalog_invalid`] };
|
|
690
769
|
}
|
|
691
770
|
}
|
|
692
771
|
function topLevelTomlString(text, key) {
|
|
@@ -821,6 +900,7 @@ export function controllerOptions(args = []) {
|
|
|
821
900
|
const envPath = readOption(args, '--env-file', readOption(args, '--env-path', null));
|
|
822
901
|
const metadataPath = readOption(args, '--metadata', readOption(args, '--metadata-path', null));
|
|
823
902
|
const receiptDir = readOption(args, '--receipt-dir', null);
|
|
903
|
+
const routingTruthReceiptPath = readOption(args, '--routing-truth-receipt', null);
|
|
824
904
|
const listenHost = readOption(args, '--listen-host', null);
|
|
825
905
|
const normalizedListenHost = listenHost === null
|
|
826
906
|
? null
|
|
@@ -841,6 +921,7 @@ export function controllerOptions(args = []) {
|
|
|
841
921
|
...(envPath ? { envPath: String(envPath) } : {}),
|
|
842
922
|
...(metadataPath ? { metadataPath: String(metadataPath) } : {}),
|
|
843
923
|
...(receiptDir ? { receiptDir: String(receiptDir) } : {}),
|
|
924
|
+
...(routingTruthReceiptPath ? { routingTruthReceiptPath: String(routingTruthReceiptPath) } : {}),
|
|
844
925
|
...(capabilityTimeoutMs !== null && Number.isFinite(capabilityTimeoutMs) && capabilityTimeoutMs > 0
|
|
845
926
|
? { capabilityTimeoutMs }
|
|
846
927
|
: {}),
|
|
@@ -855,11 +936,19 @@ export function controllerOptions(args = []) {
|
|
|
855
936
|
: {})
|
|
856
937
|
};
|
|
857
938
|
}
|
|
858
|
-
function formatCodexLbDesktopStatusText(status) {
|
|
939
|
+
export function formatCodexLbDesktopStatusText(status, opts = {}) {
|
|
859
940
|
const oauth = asRecord(status.oauth);
|
|
860
941
|
const provider = asRecord(status.provider);
|
|
861
942
|
const bridge = asRecord(status.bridge);
|
|
862
943
|
const capabilities = asRecord(status.capabilities);
|
|
944
|
+
const resolution = asRecord(status.secret_resolution);
|
|
945
|
+
const resolutionSource = String(resolution.source || 'missing');
|
|
946
|
+
const resolutionPath = resolution.path
|
|
947
|
+
? displayHomePath(String(resolution.path), opts.home || process.env.HOME || '')
|
|
948
|
+
: '';
|
|
949
|
+
const resolutionLabel = resolutionPath
|
|
950
|
+
? `${resolutionSource} (${resolutionPath})`
|
|
951
|
+
: resolutionSource;
|
|
863
952
|
const blockers = stringArray(status.blockers);
|
|
864
953
|
const guidance = stringArray(status.guidance);
|
|
865
954
|
const lines = [
|
|
@@ -873,6 +962,7 @@ function formatCodexLbDesktopStatusText(status) {
|
|
|
873
962
|
`Provider: ${String(provider.contract || 'missing')} (${provider.contract_ok === true ? 'ok' : 'blocked'})`,
|
|
874
963
|
`Bridge: ${String(bridge.status || 'unknown')}${bridge.running === true ? ' (running)' : ''}`,
|
|
875
964
|
`Gateway auth: ${String(status.gateway_auth_transport || 'inactive')}`,
|
|
965
|
+
`Key source: ${resolutionLabel} · keychain: not used · prompt risk: ${String(resolution.prompt_risk || 'none')}`,
|
|
876
966
|
`Capabilities: ${String(status.overall || capabilities.state || 'unverified')}`,
|
|
877
967
|
`Full capability: ${status.full_capability_verified === true ? 'verified' : 'unverified'}`
|
|
878
968
|
];
|
|
@@ -888,6 +978,13 @@ function formatCodexLbDesktopStatusText(status) {
|
|
|
888
978
|
}
|
|
889
979
|
return `${lines.join('\n')}\n`;
|
|
890
980
|
}
|
|
981
|
+
function displayHomePath(file, home) {
|
|
982
|
+
const resolvedFile = path.resolve(file);
|
|
983
|
+
const resolvedHome = home ? path.resolve(home) : '';
|
|
984
|
+
return resolvedHome && (resolvedFile === resolvedHome || resolvedFile.startsWith(`${resolvedHome}${path.sep}`))
|
|
985
|
+
? `~${resolvedFile.slice(resolvedHome.length)}`
|
|
986
|
+
: resolvedFile;
|
|
987
|
+
}
|
|
891
988
|
function printDeprecationWarning(oldAction, replacement) {
|
|
892
989
|
console.error(`warning: \`sks codex-lb ${oldAction}\` is deprecated; use \`${replacement}\`.`);
|
|
893
990
|
}
|
|
@@ -1005,6 +1102,7 @@ async function codexLbSetupOptions(args = []) {
|
|
|
1005
1102
|
syncLaunchctl = true;
|
|
1006
1103
|
const shellProfile = normalizeShellProfile(readOption(args, '--shell-profile', 'skip'));
|
|
1007
1104
|
const allowInsecureLocalhost = flag(args, '--allow-insecure-localhost') || flag(args, '--allow-insecure-http');
|
|
1105
|
+
const useDefaultProvider = !flag(args, '--no-default-provider');
|
|
1008
1106
|
const interactive = (!host || !apiKey || canAskInteractive(args)) && canAskInteractive(args);
|
|
1009
1107
|
if ((!host || !apiKey) && canAskInteractive(args)) {
|
|
1010
1108
|
console.log('SKS codex-lb setup\n');
|
|
@@ -1039,6 +1137,7 @@ async function codexLbSetupOptions(args = []) {
|
|
|
1039
1137
|
shellProfile: interactiveShellProfile,
|
|
1040
1138
|
allowInsecureLocalhost,
|
|
1041
1139
|
apiKeySource,
|
|
1140
|
+
useDefaultProvider,
|
|
1042
1141
|
interactive: true,
|
|
1043
1142
|
yes: flag(args, '--yes')
|
|
1044
1143
|
};
|
|
@@ -1055,6 +1154,7 @@ async function codexLbSetupOptions(args = []) {
|
|
|
1055
1154
|
shellProfile,
|
|
1056
1155
|
allowInsecureLocalhost,
|
|
1057
1156
|
apiKeySource,
|
|
1157
|
+
useDefaultProvider,
|
|
1058
1158
|
interactive,
|
|
1059
1159
|
yes: flag(args, '--yes')
|
|
1060
1160
|
};
|
|
@@ -51,7 +51,7 @@ export function doctorPhaseIdsForProfile(profile) {
|
|
|
51
51
|
function unknownDoctorFlags(args) {
|
|
52
52
|
const knownBoolean = new Set([
|
|
53
53
|
'--fix', '--yes', '-y', '--machine-only', '--actual-codex', '--require-actual-codex',
|
|
54
|
-
'--full', '--capabilities', '--repair-codex-app-ui',
|
|
54
|
+
'--full', '--capabilities', '--repair-codex-app-ui',
|
|
55
55
|
'--repair-native-capabilities', '--repair-codex-native', '--local-only', '--global-only', '--project', '--global',
|
|
56
56
|
'--dry-run', '--json'
|
|
57
57
|
]);
|