audit-tools 0.34.42 → 0.35.1
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/dist/audit/cli/args.d.ts +6 -0
- package/dist/audit/cli/args.d.ts.map +1 -1
- package/dist/audit/cli/args.js +21 -4
- package/dist/audit/cli/args.js.map +1 -1
- package/dist/audit/cli/auditStep.d.ts +6 -15
- package/dist/audit/cli/auditStep.d.ts.map +1 -1
- package/dist/audit/cli/auditStep.js +1 -1
- package/dist/audit/cli/auditStep.js.map +1 -1
- package/dist/audit/cli/dispatch/hostFanoutGate.d.ts +21 -61
- package/dist/audit/cli/dispatch/hostFanoutGate.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/hostFanoutGate.js +18 -167
- package/dist/audit/cli/dispatch/hostFanoutGate.js.map +1 -1
- package/dist/audit/cli/dispatch/packetFilter.d.ts +2 -2
- package/dist/audit/cli/dispatch/packetFilter.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/packetFilter.js +3 -1
- package/dist/audit/cli/dispatch/packetFilter.js.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.d.ts +2 -14
- package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.js +16 -6
- package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
- package/dist/audit/cli/dispatch/tierRouting.d.ts +2 -2
- package/dist/audit/cli/dispatch/tokenUsageObservation.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/tokenUsageObservation.js +10 -2
- package/dist/audit/cli/dispatch/tokenUsageObservation.js.map +1 -1
- package/dist/audit/cli/dispatch.d.ts +14 -3
- package/dist/audit/cli/dispatch.d.ts.map +1 -1
- package/dist/audit/cli/dispatch.js +87 -65
- package/dist/audit/cli/dispatch.js.map +1 -1
- package/dist/audit/cli/forceSynthesisCommand.d.ts.map +1 -1
- package/dist/audit/cli/forceSynthesisCommand.js +9 -1
- package/dist/audit/cli/forceSynthesisCommand.js.map +1 -1
- package/dist/audit/cli/hybridDispatch.d.ts +4 -9
- package/dist/audit/cli/hybridDispatch.d.ts.map +1 -1
- package/dist/audit/cli/hybridDispatch.js +1 -1
- package/dist/audit/cli/hybridDispatch.js.map +1 -1
- package/dist/audit/cli/lineIndex.d.ts +2 -0
- package/dist/audit/cli/lineIndex.d.ts.map +1 -1
- package/dist/audit/cli/lineIndex.js +4 -0
- package/dist/audit/cli/lineIndex.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts +0 -26
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +18 -360
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +5 -16
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +27 -157
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/quotaCommand.d.ts.map +1 -1
- package/dist/audit/cli/quotaCommand.js +1 -5
- package/dist/audit/cli/quotaCommand.js.map +1 -1
- package/dist/audit/cli/reviewRun.d.ts.map +1 -1
- package/dist/audit/cli/reviewRun.js +58 -23
- package/dist/audit/cli/reviewRun.js.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.d.ts +1 -1
- package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.js +35 -54
- package/dist/audit/cli/semanticReviewStep.js.map +1 -1
- package/dist/audit/cli/steps.d.ts +4 -4
- package/dist/audit/cli/steps.d.ts.map +1 -1
- package/dist/audit/cli/steps.js +0 -1
- package/dist/audit/cli/steps.js.map +1 -1
- package/dist/audit/cli/workPartitionRuntime.d.ts +11 -0
- package/dist/audit/cli/workPartitionRuntime.d.ts.map +1 -0
- package/dist/audit/cli/workPartitionRuntime.js +39 -0
- package/dist/audit/cli/workPartitionRuntime.js.map +1 -0
- package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
- package/dist/audit/extractors/analyzers/candidates.d.ts.map +1 -1
- package/dist/audit/extractors/analyzers/candidates.js +45 -54
- package/dist/audit/extractors/analyzers/candidates.js.map +1 -1
- package/dist/audit/io/artifacts.d.ts +1 -3
- package/dist/audit/io/artifacts.d.ts.map +1 -1
- package/dist/audit/io/artifacts.js +0 -3
- package/dist/audit/io/artifacts.js.map +1 -1
- package/dist/audit/orchestrator/advance.d.ts.map +1 -1
- package/dist/audit/orchestrator/advance.js +0 -35
- package/dist/audit/orchestrator/advance.js.map +1 -1
- package/dist/audit/orchestrator/advanceTypes.d.ts +4 -63
- package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +9 -12
- package/dist/audit/orchestrator/executorRunners.js.map +1 -1
- package/dist/audit/orchestrator/executors.d.ts +2 -0
- package/dist/audit/orchestrator/executors.d.ts.map +1 -1
- package/dist/audit/orchestrator/executors.js +8 -7
- package/dist/audit/orchestrator/executors.js.map +1 -1
- package/dist/audit/orchestrator/hostInputPause.d.ts +1 -1
- package/dist/audit/orchestrator/hostInputPause.js +1 -1
- package/dist/audit/orchestrator/ingestionExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/ingestionExecutors.js +4 -1
- package/dist/audit/orchestrator/ingestionExecutors.js.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.d.ts +1 -65
- package/dist/audit/orchestrator/intakeExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.js +3 -425
- package/dist/audit/orchestrator/intakeExecutors.js.map +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts +0 -13
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +2 -9
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/orchestrator/planningExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/planningExecutors.js +4 -1
- package/dist/audit/orchestrator/planningExecutors.js.map +1 -1
- package/dist/audit/orchestrator/rollingDispatch.d.ts +1 -1
- package/dist/audit/orchestrator/rollingDispatch.d.ts.map +1 -1
- package/dist/audit/orchestrator/rollingDispatch.js +5 -4
- package/dist/audit/orchestrator/rollingDispatch.js.map +1 -1
- package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
- package/dist/audit/orchestrator/staleness.js +3 -3
- package/dist/audit/orchestrator/staleness.js.map +1 -1
- package/dist/audit/orchestrator/state.d.ts +0 -39
- package/dist/audit/orchestrator/state.d.ts.map +1 -1
- package/dist/audit/orchestrator/state.js +3 -29
- package/dist/audit/orchestrator/state.js.map +1 -1
- package/dist/audit/orchestrator/synthesisExecutors.d.ts +8 -2
- package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/synthesisExecutors.js +7 -5
- package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
- package/dist/audit/providers/index.d.ts +12 -6
- package/dist/audit/providers/index.d.ts.map +1 -1
- package/dist/audit/providers/index.js +24 -14
- package/dist/audit/providers/index.js.map +1 -1
- package/dist/audit/quota/hostLimits.d.ts +4 -6
- package/dist/audit/quota/hostLimits.d.ts.map +1 -1
- package/dist/audit/quota/hostLimits.js +5 -8
- package/dist/audit/quota/hostLimits.js.map +1 -1
- package/dist/audit/reporting/findingIdentity.d.ts +2 -2
- package/dist/audit/reporting/findingIdentity.js +2 -2
- package/dist/audit/reporting/synthesis.d.ts +7 -1
- package/dist/audit/reporting/synthesis.d.ts.map +1 -1
- package/dist/audit/reporting/synthesis.js +27 -7
- package/dist/audit/reporting/synthesis.js.map +1 -1
- package/dist/audit/reporting/workBlocks.d.ts +14 -3
- package/dist/audit/reporting/workBlocks.d.ts.map +1 -1
- package/dist/audit/reporting/workBlocks.js +163 -73
- package/dist/audit/reporting/workBlocks.js.map +1 -1
- package/dist/audit/types/activeDispatch.d.ts +8 -7
- package/dist/audit/types/activeDispatch.d.ts.map +1 -1
- package/dist/audit/types/auditState.d.ts +6 -6
- package/dist/audit/types/externalAnalyzer.d.ts +6 -6
- package/dist/audit/validation/auditResults.d.ts.map +1 -1
- package/dist/audit/validation/auditResults.js +6 -1
- package/dist/audit/validation/auditResults.js.map +1 -1
- package/dist/audit/validation/sessionConfig.d.ts.map +1 -1
- package/dist/audit/validation/sessionConfig.js +27 -29
- package/dist/audit/validation/sessionConfig.js.map +1 -1
- package/dist/remediate/contractPipeline/phaseCut.d.ts +8 -0
- package/dist/remediate/contractPipeline/phaseCut.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/phaseCut.js +63 -0
- package/dist/remediate/contractPipeline/phaseCut.js.map +1 -1
- package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/phaseCutArtifact.js +5 -3
- package/dist/remediate/contractPipeline/phaseCutArtifact.js.map +1 -1
- package/dist/remediate/phases/plan.d.ts.map +1 -1
- package/dist/remediate/phases/plan.js +35 -12
- package/dist/remediate/phases/plan.js.map +1 -1
- package/dist/remediate/providers/index.d.ts +12 -7
- package/dist/remediate/providers/index.d.ts.map +1 -1
- package/dist/remediate/providers/index.js +24 -15
- package/dist/remediate/providers/index.js.map +1 -1
- package/dist/remediate/quota/hostLimits.d.ts +4 -6
- package/dist/remediate/quota/hostLimits.d.ts.map +1 -1
- package/dist/remediate/quota/hostLimits.js +5 -8
- package/dist/remediate/quota/hostLimits.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts +6 -2
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +90 -6
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.js +4 -2
- package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
- package/dist/remediate/steps/dispatch/marshal.d.ts +6 -0
- package/dist/remediate/steps/dispatch/marshal.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/marshal.js +16 -17
- package/dist/remediate/steps/dispatch/marshal.js.map +1 -1
- package/dist/remediate/steps/dispatch/waveScheduling.d.ts +7 -15
- package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/waveScheduling.js +26 -19
- package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +6 -8
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +264 -219
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/rollingSession.d.ts +2 -1
- package/dist/remediate/steps/rollingSession.d.ts.map +1 -1
- package/dist/remediate/steps/rollingSession.js +14 -8
- package/dist/remediate/steps/rollingSession.js.map +1 -1
- package/dist/remediate/steps/sessionConfigLoad.d.ts +3 -2
- package/dist/remediate/steps/sessionConfigLoad.d.ts.map +1 -1
- package/dist/remediate/steps/sessionConfigLoad.js +16 -13
- package/dist/remediate/steps/sessionConfigLoad.js.map +1 -1
- package/dist/remediate/validation/contractPipeline.d.ts +1 -1
- package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/validation/contractPipeline.js +7 -1
- package/dist/remediate/validation/contractPipeline.js.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.d.ts +8 -0
- package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.js +92 -8
- package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
- package/dist/shared/config/resolveSessionConfig.d.ts.map +1 -1
- package/dist/shared/config/resolveSessionConfig.js +6 -5
- package/dist/shared/config/resolveSessionConfig.js.map +1 -1
- package/dist/shared/decompose/workPartition.d.ts +66 -0
- package/dist/shared/decompose/workPartition.d.ts.map +1 -0
- package/dist/shared/decompose/workPartition.js +523 -0
- package/dist/shared/decompose/workPartition.js.map +1 -0
- package/dist/shared/dispatch/admissionLoop.d.ts +5 -44
- package/dist/shared/dispatch/admissionLoop.d.ts.map +1 -1
- package/dist/shared/dispatch/admissionLoop.js +20 -82
- package/dist/shared/dispatch/admissionLoop.js.map +1 -1
- package/dist/shared/dispatch/coordinator.d.ts +5 -5
- package/dist/shared/dispatch/coordinator.d.ts.map +1 -1
- package/dist/shared/dispatch/coordinator.js +12 -11
- package/dist/shared/dispatch/coordinator.js.map +1 -1
- package/dist/shared/dispatch/costRank.d.ts +5 -155
- package/dist/shared/dispatch/costRank.d.ts.map +1 -1
- package/dist/shared/dispatch/costRank.js +2 -179
- package/dist/shared/dispatch/costRank.js.map +1 -1
- package/dist/shared/dispatch/dispatchQuotaContract.d.ts +37 -38
- package/dist/shared/dispatch/dispatchQuotaContract.d.ts.map +1 -1
- package/dist/shared/dispatch/dispatchQuotaContract.js +0 -1
- package/dist/shared/dispatch/dispatchQuotaContract.js.map +1 -1
- package/dist/shared/dispatch/hybridDispatch.d.ts +6 -2
- package/dist/shared/dispatch/hybridDispatch.d.ts.map +1 -1
- package/dist/shared/dispatch/hybridDispatch.js +1 -1
- package/dist/shared/dispatch/hybridDispatch.js.map +1 -1
- package/dist/shared/dispatch/rollingDispatch.d.ts +4 -4
- package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
- package/dist/shared/dispatch/rollingDispatch.js +13 -11
- package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
- package/dist/shared/dispatch/unifiedRolling.d.ts +2 -2
- package/dist/shared/dispatch/unifiedRolling.d.ts.map +1 -1
- package/dist/shared/dispatch/unifiedRolling.js +1 -1
- package/dist/shared/dispatch/unifiedRolling.js.map +1 -1
- package/dist/shared/engine/obligationEngine.d.ts +2 -2
- package/dist/shared/friction/stepBoundaryCapture.d.ts +5 -59
- package/dist/shared/friction/stepBoundaryCapture.d.ts.map +1 -1
- package/dist/shared/friction/stepBoundaryCapture.js +11 -107
- package/dist/shared/friction/stepBoundaryCapture.js.map +1 -1
- package/dist/shared/index.d.ts +16 -17
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +11 -14
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/io/stateDir.d.ts +2 -2
- package/dist/shared/io/stateDir.js +2 -2
- package/dist/shared/providers/agyProvider.d.ts.map +1 -1
- package/dist/shared/providers/agyProvider.js +12 -26
- package/dist/shared/providers/agyProvider.js.map +1 -1
- package/dist/shared/providers/auditorSources.d.ts +10 -84
- package/dist/shared/providers/auditorSources.d.ts.map +1 -1
- package/dist/shared/providers/auditorSources.js +42 -267
- package/dist/shared/providers/auditorSources.js.map +1 -1
- package/dist/shared/providers/dispatchExclusion.d.ts +22 -0
- package/dist/shared/providers/dispatchExclusion.d.ts.map +1 -0
- package/dist/shared/providers/dispatchExclusion.js +23 -0
- package/dist/shared/providers/dispatchExclusion.js.map +1 -0
- package/dist/shared/providers/identity.d.ts +2 -66
- package/dist/shared/providers/identity.d.ts.map +1 -1
- package/dist/shared/providers/identity.js +2 -72
- package/dist/shared/providers/identity.js.map +1 -1
- package/dist/shared/providers/orchestratorBindings.d.ts +42 -0
- package/dist/shared/providers/orchestratorBindings.d.ts.map +1 -0
- package/dist/shared/providers/orchestratorBindings.js +30 -0
- package/dist/shared/providers/orchestratorBindings.js.map +1 -0
- package/dist/shared/providers/providerFactory.d.ts +0 -3
- package/dist/shared/providers/providerFactory.d.ts.map +1 -1
- package/dist/shared/providers/providerFactory.js +8 -37
- package/dist/shared/providers/providerFactory.js.map +1 -1
- package/dist/shared/providers/providerPathGuard.d.ts +3 -3
- package/dist/shared/providers/providerPathGuard.d.ts.map +1 -1
- package/dist/shared/providers/providerPathGuard.js +24 -27
- package/dist/shared/providers/providerPathGuard.js.map +1 -1
- package/dist/shared/quota/apiPool.d.ts +19 -22
- package/dist/shared/quota/apiPool.d.ts.map +1 -1
- package/dist/shared/quota/apiPool.js +66 -47
- package/dist/shared/quota/apiPool.js.map +1 -1
- package/dist/shared/quota/capacity.d.ts +29 -24
- package/dist/shared/quota/capacity.d.ts.map +1 -1
- package/dist/shared/quota/capacity.js +30 -4
- package/dist/shared/quota/capacity.js.map +1 -1
- package/dist/shared/quota/codexHostConfig.d.ts +6 -13
- package/dist/shared/quota/codexHostConfig.d.ts.map +1 -1
- package/dist/shared/quota/codexHostConfig.js +8 -14
- package/dist/shared/quota/codexHostConfig.js.map +1 -1
- package/dist/shared/quota/fileLock.d.ts +7 -0
- package/dist/shared/quota/fileLock.d.ts.map +1 -1
- package/dist/shared/quota/fileLock.js +32 -4
- package/dist/shared/quota/fileLock.js.map +1 -1
- package/dist/shared/quota/hostLimits.d.ts +19 -1
- package/dist/shared/quota/hostLimits.d.ts.map +1 -1
- package/dist/shared/quota/hostLimits.js +21 -11
- package/dist/shared/quota/hostLimits.js.map +1 -1
- package/dist/shared/quota/hostPool.d.ts +1 -1
- package/dist/shared/quota/hostPool.js +2 -2
- package/dist/shared/quota/hostPool.js.map +1 -1
- package/dist/shared/quota/limits.d.ts +6 -9
- package/dist/shared/quota/limits.d.ts.map +1 -1
- package/dist/shared/quota/limits.js +67 -50
- package/dist/shared/quota/limits.js.map +1 -1
- package/dist/shared/quota/scheduler.d.ts +2 -3
- package/dist/shared/quota/scheduler.d.ts.map +1 -1
- package/dist/shared/quota/scheduler.js +3 -12
- package/dist/shared/quota/scheduler.js.map +1 -1
- package/dist/shared/quota/types.d.ts +10 -10
- package/dist/shared/quota/types.d.ts.map +1 -1
- package/dist/shared/quota/types.js +4 -7
- package/dist/shared/quota/types.js.map +1 -1
- package/dist/shared/repair/brokeredDispatch.d.ts.map +1 -1
- package/dist/shared/repair/brokeredDispatch.js +3 -0
- package/dist/shared/repair/brokeredDispatch.js.map +1 -1
- package/dist/shared/reporting/auditDeliverable.d.ts.map +1 -1
- package/dist/shared/reporting/auditDeliverable.js +1 -0
- package/dist/shared/reporting/auditDeliverable.js.map +1 -1
- package/dist/shared/rolling/pausedState.d.ts +7 -7
- package/dist/shared/rolling/pausedState.js +3 -3
- package/dist/shared/tokens.d.ts +2 -5
- package/dist/shared/tokens.d.ts.map +1 -1
- package/dist/shared/tokens.js +15 -15
- package/dist/shared/tokens.js.map +1 -1
- package/dist/shared/types/auditorDescriptor.d.ts +3 -2
- package/dist/shared/types/auditorDescriptor.d.ts.map +1 -1
- package/dist/shared/types/auditorDescriptor.js +3 -2
- package/dist/shared/types/auditorDescriptor.js.map +1 -1
- package/dist/shared/types/finding.d.ts +80 -0
- package/dist/shared/types/finding.d.ts.map +1 -1
- package/dist/shared/types/finding.js +17 -0
- package/dist/shared/types/finding.js.map +1 -1
- package/dist/shared/types/sessionConfig.d.ts +8 -8
- package/dist/shared/types/sessionConfig.d.ts.map +1 -1
- package/dist/shared/types/sessionConfig.js +1 -1
- package/dist/shared/validation/findingsReport.d.ts.map +1 -1
- package/dist/shared/validation/findingsReport.js +3 -0
- package/dist/shared/validation/findingsReport.js.map +1 -1
- package/docs/audit-pkg/development.md +3 -2
- package/docs/audit-pkg/operator-guide.md +13 -106
- package/docs/audit-pkg/product.md +8 -7
- package/docs/audit-pkg/release.md +38 -29
- package/opencode.json +2 -2
- package/package.json +6 -4
- package/skills/audit-code/SKILL.md +2 -1
- package/skills/audit-code/audit-code.prompt.md +4 -3
- package/skills/remediate-code/remediate-code.prompt.md +2 -1
- package/dist/audit/cli/providerConfirmationStep.d.ts +0 -106
- package/dist/audit/cli/providerConfirmationStep.d.ts.map +0 -1
- package/dist/audit/cli/providerConfirmationStep.js +0 -396
- package/dist/audit/cli/providerConfirmationStep.js.map +0 -1
- package/dist/audit/orchestrator/providerConfirmation.d.ts +0 -25
- package/dist/audit/orchestrator/providerConfirmation.d.ts.map +0 -1
- package/dist/audit/orchestrator/providerConfirmation.js +0 -60
- package/dist/audit/orchestrator/providerConfirmation.js.map +0 -1
- package/dist/audit/providers/agyProvider.d.ts +0 -11
- package/dist/audit/providers/agyProvider.d.ts.map +0 -1
- package/dist/audit/providers/agyProvider.js +0 -18
- package/dist/audit/providers/agyProvider.js.map +0 -1
- package/dist/audit/providers/claudeCodeProvider.d.ts +0 -11
- package/dist/audit/providers/claudeCodeProvider.d.ts.map +0 -1
- package/dist/audit/providers/claudeCodeProvider.js +0 -23
- package/dist/audit/providers/claudeCodeProvider.js.map +0 -1
- package/dist/audit/providers/claudeWorkerProvider.d.ts +0 -10
- package/dist/audit/providers/claudeWorkerProvider.d.ts.map +0 -1
- package/dist/audit/providers/claudeWorkerProvider.js +0 -15
- package/dist/audit/providers/claudeWorkerProvider.js.map +0 -1
- package/dist/audit/providers/opencodeProvider.d.ts +0 -2
- package/dist/audit/providers/opencodeProvider.d.ts.map +0 -1
- package/dist/audit/providers/opencodeProvider.js +0 -7
- package/dist/audit/providers/opencodeProvider.js.map +0 -1
- package/dist/remediate/providers/agyProvider.d.ts +0 -12
- package/dist/remediate/providers/agyProvider.d.ts.map +0 -1
- package/dist/remediate/providers/agyProvider.js +0 -19
- package/dist/remediate/providers/agyProvider.js.map +0 -1
- package/dist/remediate/providers/claudeCodeProvider.d.ts +0 -12
- package/dist/remediate/providers/claudeCodeProvider.d.ts.map +0 -1
- package/dist/remediate/providers/claudeCodeProvider.js +0 -24
- package/dist/remediate/providers/claudeCodeProvider.js.map +0 -1
- package/dist/remediate/providers/claudeWorkerProvider.d.ts +0 -11
- package/dist/remediate/providers/claudeWorkerProvider.d.ts.map +0 -1
- package/dist/remediate/providers/claudeWorkerProvider.js +0 -16
- package/dist/remediate/providers/claudeWorkerProvider.js.map +0 -1
- package/dist/remediate/providers/opencodeProvider.d.ts +0 -2
- package/dist/remediate/providers/opencodeProvider.d.ts.map +0 -1
- package/dist/remediate/providers/opencodeProvider.js +0 -7
- package/dist/remediate/providers/opencodeProvider.js.map +0 -1
- package/dist/shared/providers/providerConfirmation.d.ts +0 -141
- package/dist/shared/providers/providerConfirmation.d.ts.map +0 -1
- package/dist/shared/providers/providerConfirmation.js +0 -420
- package/dist/shared/providers/providerConfirmation.js.map +0 -1
- package/dist/shared/providers/proxyCatalog.d.ts +0 -158
- package/dist/shared/providers/proxyCatalog.d.ts.map +0 -1
- package/dist/shared/providers/proxyCatalog.js +0 -658
- package/dist/shared/providers/proxyCatalog.js.map +0 -1
- package/dist/shared/providers/sharedProviderConfirmation.d.ts +0 -802
- package/dist/shared/providers/sharedProviderConfirmation.d.ts.map +0 -1
- package/dist/shared/providers/sharedProviderConfirmation.js +0 -1865
- package/dist/shared/providers/sharedProviderConfirmation.js.map +0 -1
- package/dist/shared/types/providerConfirmation.d.ts +0 -334
- package/dist/shared/types/providerConfirmation.d.ts.map +0 -1
- package/dist/shared/types/providerConfirmation.js +0 -35
- package/dist/shared/types/providerConfirmation.js.map +0 -1
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import { type DispatchableSource } from "../types/sessionConfig.js";
|
|
2
|
-
import { type PopulateProxyCatalogResult } from "./proxyCatalog.js";
|
|
3
2
|
/**
|
|
4
3
|
* The machine-level declaration file: the backends the OPERATOR owns, hand-authored
|
|
5
|
-
* like `session-config.json`. Deliberately NOT id-keyed
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* auditor-id key; see the rationale there) — squatting the cache name would turn
|
|
9
|
-
* this read into a direct cache read, violating never-inherit by filename collision.
|
|
4
|
+
* like `session-config.json`. Deliberately NOT id-keyed: each invocation intersects
|
|
5
|
+
* the declaration with its own ambient reach instead of inheriting another
|
|
6
|
+
* auditor's resolved capability.
|
|
10
7
|
*
|
|
11
8
|
* A declaration is not a cache: it is operator INTENT, not a prior auditor's resolved
|
|
12
9
|
* state. Reading it and intersecting it with live ambient reach does not inherit
|
|
@@ -46,8 +43,6 @@ export interface AmbientSourceDeps {
|
|
|
46
43
|
* then `GET <endpoint>/v1/models` fallback) through a hidden node child. Tests inject.
|
|
47
44
|
*/
|
|
48
45
|
probeHttpReachable?: (url: string) => boolean;
|
|
49
|
-
/** Raw populate-cache reader (tests inject); defaults to reading the cache file. */
|
|
50
|
-
readCatalogFile?: (path: string) => string | null;
|
|
51
46
|
}
|
|
52
47
|
/**
|
|
53
48
|
* Escalating-budget reachability: try `probeOnce` at each budget in order, returning
|
|
@@ -62,6 +57,11 @@ export interface AmbientSourceDeps {
|
|
|
62
57
|
* acceptable.
|
|
63
58
|
*/
|
|
64
59
|
export declare function probeReachableWithEscalation(probeOnce: (budgetMs: number) => boolean, budgets?: readonly number[]): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Build liveness URLs for both ordinary OpenAI-compatible bases and proxies
|
|
62
|
+
* whose API base is `/v1` but whose health endpoint is served at the origin.
|
|
63
|
+
*/
|
|
64
|
+
export declare function buildLivenessProbeUrls(url: string): string[];
|
|
65
65
|
/** Resolve the declaration file path for this machine (state dir via `io/stateDir.ts`). */
|
|
66
66
|
export declare function resolveSourceDeclarationPath(homeDir?: string): string;
|
|
67
67
|
/**
|
|
@@ -74,29 +74,6 @@ export declare function resolveSourceDeclarationPath(homeDir?: string): string;
|
|
|
74
74
|
* the declaration is held to exactly the same bar as a `--auditor sources[]`.
|
|
75
75
|
*/
|
|
76
76
|
export declare function readSourceDeclaration(deps?: AmbientSourceDeps): DispatchableSource[];
|
|
77
|
-
/**
|
|
78
|
-
* The declared proxy lane (`proxy` top-level key in the same declaration file):
|
|
79
|
-
* the operator asserting "a generic OpenAI-compatible proxy listens here — discover
|
|
80
|
-
* and expand its models into `claude-worker` sources". Optional knobs: `top_k`
|
|
81
|
-
* (models per backend provider), `cost_per_mtok` (the free-to-operator cost axis;
|
|
82
|
-
* wins over the advert price), and `api_key_env` (env var holding the proxy's master
|
|
83
|
-
* key for authenticated endpoints).
|
|
84
|
-
*/
|
|
85
|
-
export interface ProxyDeclaration {
|
|
86
|
-
endpoint: string;
|
|
87
|
-
top_k?: number;
|
|
88
|
-
cost_per_mtok?: number;
|
|
89
|
-
api_key_env?: string;
|
|
90
|
-
/**
|
|
91
|
-
* The proxy's BACKEND burst-limits per model (see
|
|
92
|
-
* `DispatchableSource.burst_limited`). Stamped onto every expanded lane at RESOLVE
|
|
93
|
-
* time — declaration-authoritative, so flipping it never requires a re-populate —
|
|
94
|
-
* where the worker-kind compatibility rule then refuses agentic expansion
|
|
95
|
-
* ({@link laneWorkerKindConflict}) with a per-lane reason.
|
|
96
|
-
*/
|
|
97
|
-
burst_limited?: boolean;
|
|
98
|
-
}
|
|
99
|
-
/** `readProxyDeclaration`'s outcome: the lane, or why it is absent. */
|
|
100
77
|
/**
|
|
101
78
|
* `api_key_env` names an environment VARIABLE; it never carries the value. A
|
|
102
79
|
* declaration that pastes `NAME=value` (or the secret itself) used to be
|
|
@@ -104,64 +81,13 @@ export interface ProxyDeclaration {
|
|
|
104
81
|
* "NAME=value"` — which reads as a missing env var and sends the operator to
|
|
105
82
|
* their shell instead of to the typo.
|
|
106
83
|
*
|
|
107
|
-
* The check belongs to the FIELD, not to one of its readers:
|
|
108
|
-
*
|
|
109
|
-
* and the `claude-worker` reach branch accepted any non-empty string, so both
|
|
110
|
-
* inherited the misleading symptom the validated branch exists to prevent.
|
|
84
|
+
* The check belongs to the FIELD, not to one of its readers: both endpoint-backed
|
|
85
|
+
* source transports must reject the typo with the same precise explanation.
|
|
111
86
|
* Returns a precise reason, or `null` when the name is well formed. Reach
|
|
112
87
|
* branches call {@link apiKeyEnvReachReason}, which pairs this with the
|
|
113
88
|
* env-is-set half. [[validator-guards-every-field-caller-reads]]
|
|
114
89
|
*/
|
|
115
90
|
export declare function invalidEnvVarNameReason(field: string, value: string): string | null;
|
|
116
|
-
export interface ProxyDeclarationResult {
|
|
117
|
-
declaration: ProxyDeclaration | null;
|
|
118
|
-
/** Present only when a `proxy` key EXISTS but is malformed (never thrown). */
|
|
119
|
-
reason?: string;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Read the optional `proxy` block from the machine declaration. Tolerant like
|
|
123
|
-
* {@link readSourceDeclaration}: an absent / unparseable file or a missing key is
|
|
124
|
-
* simply `{declaration: null}`; a PRESENT-but-malformed block degrades to lane-absent
|
|
125
|
-
* WITH a reason (surfaced via `resolveAmbientSources`' `dropped[]`), never a throw.
|
|
126
|
-
* Malformed optional TUNING knobs (`top_k` / `cost_per_mtok`) are dropped
|
|
127
|
-
* individually — a bad tuning value must not cost the operator the whole lane.
|
|
128
|
-
* `api_key_env` is deliberately NOT in that set: it is a credential reference,
|
|
129
|
-
* and dropping it silently leaves the lane looking unauthenticated so the
|
|
130
|
-
* failure surfaces far downstream with a reason that no longer names the typo.
|
|
131
|
-
*
|
|
132
|
-
* Rejection: if a `repair_proxy` key exists, it is not recognized and surfaces a
|
|
133
|
-
* dropped reason telling the operator what key to use instead (never silent ignore).
|
|
134
|
-
*/
|
|
135
|
-
export declare function readProxyDeclaration(deps?: AmbientSourceDeps): ProxyDeclarationResult;
|
|
136
|
-
/**
|
|
137
|
-
* POPULATE the declared proxy lane (plan §populate-vs-resolve): read the
|
|
138
|
-
* machine declaration's `proxy` block and, when present, fetch its model
|
|
139
|
-
* discovery into the machine-level populate cache ({@link populateProxyCatalog}).
|
|
140
|
-
* This is the network half the resolve path must never run — call it at Gate-0
|
|
141
|
-
* build time (once per run) or on explicit refresh, NEVER from `resolveAmbientSources`.
|
|
142
|
-
*
|
|
143
|
-
* "Present + reachable" gating is the fetch itself: the discovery GET is both the
|
|
144
|
-
* liveness proof and the payload, so a separate pre-probe would only double the
|
|
145
|
-
* network. Never throws: no declared lane ⇒ `null`; a failed/unreachable fetch ⇒
|
|
146
|
-
* `{written:false, reason}` and any prior cache is left untouched — the lane then
|
|
147
|
-
* resolves from the existing cache or unexpanded with its own `dropped[]` reason,
|
|
148
|
-
* degrading Gate-0, never blocking it.
|
|
149
|
-
*/
|
|
150
|
-
export declare function populateDeclaredProxyCatalog(deps?: AmbientSourceDeps & {
|
|
151
|
-
fetchImpl?: typeof fetch;
|
|
152
|
-
}): Promise<PopulateProxyCatalogResult | null>;
|
|
153
|
-
/**
|
|
154
|
-
* Populate the proxy catalog ONLY when the resolve half would otherwise drop the
|
|
155
|
-
* lane for it: a `proxy` is declared but the cache is absent or was fetched from a
|
|
156
|
-
* different endpoint. Bounded by construction — after one success the cache exists
|
|
157
|
-
* and this is a cheap read — so a draw with no Gate-0 build moment (remediate) can
|
|
158
|
-
* call it on every config load without a per-load network fetch. Freshness (TTL /
|
|
159
|
-
* explicit refresh) is deliberately NOT this function's job (backlog).
|
|
160
|
-
* [[silent-fail-closed-on-one-draw]] — both draws must trigger populate, not just audit.
|
|
161
|
-
*/
|
|
162
|
-
export declare function populateProxyCatalogIfMissing(deps?: AmbientSourceDeps & {
|
|
163
|
-
fetchImpl?: typeof fetch;
|
|
164
|
-
}): Promise<PopulateProxyCatalogResult | null>;
|
|
165
91
|
/**
|
|
166
92
|
* Can THIS process prove it can reach this declared source?
|
|
167
93
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auditorSources.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/auditorSources.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"auditorSources.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/auditorSources.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,2BAA2B,CAAC;AAMnC;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAGnE,6EAA6E;AAC7E,MAAM,WAAW,aAAa;IAC5B,6FAA6F;IAC7F,EAAE,EAAE,MAAM,CAAC;IACX,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,sFAAsF;IACtF,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,2EAA2E;AAC3E,MAAM,WAAW,iBAAiB;IAChC,oGAAoG;IACpG,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,8DAA8D;IAC9D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACzC,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uFAAuF;IACvF,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACtD;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CAC/C;AAgCD;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EACxC,OAAO,GAAE,SAAS,MAAM,EAAmB,GAC1C,OAAO,CAKT;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAmB5D;AA8BD,2FAA2F;AAC3F,wBAAgB,4BAA4B,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAErE;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,GAAE,iBAAsB,GAC3B,kBAAkB,EAAE,CAoBtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASnF;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,kBAAkB,EAC1B,IAAI,GAAE,iBAAsB,GAC3B;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAqH1D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,GAAE,iBAAsB,GAC3B,iBAAiB,CAoBnB"}
|
|
@@ -4,15 +4,12 @@ import { laneWorkerKindConflict, } from "../types/sessionConfig.js";
|
|
|
4
4
|
import { resolveAuditCodeStateDir } from "../io/stateDir.js";
|
|
5
5
|
import { spawnSyncHidden } from "../tooling/exec.js";
|
|
6
6
|
import { validateSessionConfig } from "../validation/sessionConfig.js";
|
|
7
|
-
import { populateProxyCatalog, readProxyCatalog, } from "./proxyCatalog.js";
|
|
8
7
|
import { commandExists } from "./providerPathGuard.js";
|
|
9
8
|
/**
|
|
10
9
|
* The machine-level declaration file: the backends the OPERATOR owns, hand-authored
|
|
11
|
-
* like `session-config.json`. Deliberately NOT id-keyed
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* auditor-id key; see the rationale there) — squatting the cache name would turn
|
|
15
|
-
* this read into a direct cache read, violating never-inherit by filename collision.
|
|
10
|
+
* like `session-config.json`. Deliberately NOT id-keyed: each invocation intersects
|
|
11
|
+
* the declaration with its own ambient reach instead of inheriting another
|
|
12
|
+
* auditor's resolved capability.
|
|
16
13
|
*
|
|
17
14
|
* A declaration is not a cache: it is operator INTENT, not a prior auditor's resolved
|
|
18
15
|
* state. Reading it and intersecting it with live ambient reach does not inherit
|
|
@@ -31,8 +28,6 @@ const CLI_DEFAULT_COMMAND = {
|
|
|
31
28
|
opencode: "opencode",
|
|
32
29
|
agy: "agy",
|
|
33
30
|
};
|
|
34
|
-
/** Gated for the 2026-07-18 agy sunset: `agy` falls back to a legacy `gemini` binary. */
|
|
35
|
-
const AGY_LEGACY_COMMAND = "gemini";
|
|
36
31
|
function defaultFileReadable(path) {
|
|
37
32
|
try {
|
|
38
33
|
accessSync(path, constants.R_OK);
|
|
@@ -69,26 +64,49 @@ export function probeReachableWithEscalation(probeOnce, budgets = [1_000, 4_000]
|
|
|
69
64
|
}
|
|
70
65
|
return false;
|
|
71
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Build liveness URLs for both ordinary OpenAI-compatible bases and proxies
|
|
69
|
+
* whose API base is `/v1` but whose health endpoint is served at the origin.
|
|
70
|
+
*/
|
|
71
|
+
export function buildLivenessProbeUrls(url) {
|
|
72
|
+
const base = url.replace(/\/+$/u, "");
|
|
73
|
+
try {
|
|
74
|
+
const parsed = new URL(base);
|
|
75
|
+
const path = parsed.pathname.replace(/\/+$/u, "");
|
|
76
|
+
const origin = parsed.origin;
|
|
77
|
+
const root = path.toLowerCase().endsWith("/v1")
|
|
78
|
+
? `${origin}${path.slice(0, -3)}`.replace(/\/+$/u, "")
|
|
79
|
+
: origin;
|
|
80
|
+
return [
|
|
81
|
+
`${base}/health/liveliness`,
|
|
82
|
+
`${base}/models`,
|
|
83
|
+
`${root}/health/liveliness`,
|
|
84
|
+
`${root}/health`,
|
|
85
|
+
`${root}/v1/models`,
|
|
86
|
+
].filter((candidate, index, all) => all.indexOf(candidate) === index);
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
return [`${base}/health/liveliness`, `${base}/models`];
|
|
90
|
+
}
|
|
91
|
+
}
|
|
72
92
|
function defaultProbeHttpReachable(url) {
|
|
73
|
-
// Neutral proxy contract liveness:
|
|
74
|
-
//
|
|
75
|
-
//
|
|
76
|
-
const probeOnce = (budgetMs,
|
|
93
|
+
// Neutral proxy contract liveness: any HTTP response proves the listener is
|
|
94
|
+
// alive, including a 401 from a keyed proxy. Try the API base first, then
|
|
95
|
+
// origin-level health/model routes for proxies that mount health outside /v1.
|
|
96
|
+
const probeOnce = (budgetMs, targetUrl) => {
|
|
77
97
|
const script = "const [url, ms] = process.argv.slice(1);" +
|
|
78
98
|
"fetch(url, { signal: AbortSignal.timeout(Number(ms)) })" +
|
|
79
99
|
".then((r) => process.exit(0), () => process.exit(1));";
|
|
80
|
-
const result = spawnSyncHidden(process.execPath, ["-e", script,
|
|
100
|
+
const result = spawnSyncHidden(process.execPath, ["-e", script, targetUrl, String(budgetMs)], {
|
|
81
101
|
timeout: budgetMs + 1_500,
|
|
82
102
|
});
|
|
83
103
|
return result.status === 0;
|
|
84
104
|
};
|
|
85
105
|
for (const budgetMs of [1_000, 4_000]) {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (probeOnce(budgetMs, "/v1/models"))
|
|
91
|
-
return true;
|
|
106
|
+
for (const candidate of buildLivenessProbeUrls(url)) {
|
|
107
|
+
if (probeOnce(budgetMs, candidate))
|
|
108
|
+
return true;
|
|
109
|
+
}
|
|
92
110
|
}
|
|
93
111
|
return false;
|
|
94
112
|
}
|
|
@@ -134,7 +152,6 @@ export function readSourceDeclaration(deps = {}) {
|
|
|
134
152
|
return [];
|
|
135
153
|
return sources;
|
|
136
154
|
}
|
|
137
|
-
/** `readProxyDeclaration`'s outcome: the lane, or why it is absent. */
|
|
138
155
|
/**
|
|
139
156
|
* `api_key_env` names an environment VARIABLE; it never carries the value. A
|
|
140
157
|
* declaration that pastes `NAME=value` (or the secret itself) used to be
|
|
@@ -142,10 +159,8 @@ export function readSourceDeclaration(deps = {}) {
|
|
|
142
159
|
* "NAME=value"` — which reads as a missing env var and sends the operator to
|
|
143
160
|
* their shell instead of to the typo.
|
|
144
161
|
*
|
|
145
|
-
* The check belongs to the FIELD, not to one of its readers:
|
|
146
|
-
*
|
|
147
|
-
* and the `claude-worker` reach branch accepted any non-empty string, so both
|
|
148
|
-
* inherited the misleading symptom the validated branch exists to prevent.
|
|
162
|
+
* The check belongs to the FIELD, not to one of its readers: both endpoint-backed
|
|
163
|
+
* source transports must reject the typo with the same precise explanation.
|
|
149
164
|
* Returns a precise reason, or `null` when the name is well formed. Reach
|
|
150
165
|
* branches call {@link apiKeyEnvReachReason}, which pairs this with the
|
|
151
166
|
* env-is-set half. [[validator-guards-every-field-caller-reads]]
|
|
@@ -178,149 +193,6 @@ function apiKeyEnvReachReason(apiKeyEnv, env) {
|
|
|
178
193
|
}
|
|
179
194
|
return null;
|
|
180
195
|
}
|
|
181
|
-
/**
|
|
182
|
-
* Read the optional `proxy` block from the machine declaration. Tolerant like
|
|
183
|
-
* {@link readSourceDeclaration}: an absent / unparseable file or a missing key is
|
|
184
|
-
* simply `{declaration: null}`; a PRESENT-but-malformed block degrades to lane-absent
|
|
185
|
-
* WITH a reason (surfaced via `resolveAmbientSources`' `dropped[]`), never a throw.
|
|
186
|
-
* Malformed optional TUNING knobs (`top_k` / `cost_per_mtok`) are dropped
|
|
187
|
-
* individually — a bad tuning value must not cost the operator the whole lane.
|
|
188
|
-
* `api_key_env` is deliberately NOT in that set: it is a credential reference,
|
|
189
|
-
* and dropping it silently leaves the lane looking unauthenticated so the
|
|
190
|
-
* failure surfaces far downstream with a reason that no longer names the typo.
|
|
191
|
-
*
|
|
192
|
-
* Rejection: if a `repair_proxy` key exists, it is not recognized and surfaces a
|
|
193
|
-
* dropped reason telling the operator what key to use instead (never silent ignore).
|
|
194
|
-
*/
|
|
195
|
-
export function readProxyDeclaration(deps = {}) {
|
|
196
|
-
const path = resolveSourceDeclarationPath(deps.homeDir);
|
|
197
|
-
const raw = (deps.readDeclarationFile ?? defaultReadDeclarationFile)(path);
|
|
198
|
-
if (raw === null)
|
|
199
|
-
return { declaration: null };
|
|
200
|
-
let parsed;
|
|
201
|
-
try {
|
|
202
|
-
parsed = JSON.parse(raw);
|
|
203
|
-
}
|
|
204
|
-
catch {
|
|
205
|
-
return { declaration: null };
|
|
206
|
-
}
|
|
207
|
-
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
|
|
208
|
-
return { declaration: null };
|
|
209
|
-
}
|
|
210
|
-
// Check for unrecognized `repair_proxy` key and surface it as a dropped reason (never silent).
|
|
211
|
-
const unresolvedBlock = parsed.repair_proxy;
|
|
212
|
-
if (unresolvedBlock !== undefined) {
|
|
213
|
-
return {
|
|
214
|
-
declaration: null,
|
|
215
|
-
reason: "repair_proxy is retired — declare a proxy block instead.",
|
|
216
|
-
};
|
|
217
|
-
}
|
|
218
|
-
const block = parsed.proxy;
|
|
219
|
-
if (block === undefined)
|
|
220
|
-
return { declaration: null };
|
|
221
|
-
if (typeof block !== "object" || block === null || Array.isArray(block)) {
|
|
222
|
-
return {
|
|
223
|
-
declaration: null,
|
|
224
|
-
reason: "proxy must be a JSON object with an endpoint — fix the declaration.",
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
const { endpoint, top_k, cost_per_mtok, api_key_env, burst_limited } = block;
|
|
228
|
-
if (typeof endpoint !== "string" || endpoint.trim().length === 0) {
|
|
229
|
-
return {
|
|
230
|
-
declaration: null,
|
|
231
|
-
reason: "proxy.endpoint must be a non-empty url string — fix the declaration.",
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
const declaration = {
|
|
235
|
-
// Trailing slashes stripped so the reach probe, the discovery cache's stored
|
|
236
|
-
// endpoint, and the expanded sources all compare on one canonical form.
|
|
237
|
-
endpoint: endpoint.trim().replace(/\/+$/u, ""),
|
|
238
|
-
};
|
|
239
|
-
if (typeof top_k === "number" && Number.isInteger(top_k) && top_k > 0) {
|
|
240
|
-
declaration.top_k = top_k;
|
|
241
|
-
}
|
|
242
|
-
if (typeof cost_per_mtok === "number" &&
|
|
243
|
-
Number.isFinite(cost_per_mtok) &&
|
|
244
|
-
cost_per_mtok >= 0) {
|
|
245
|
-
declaration.cost_per_mtok = cost_per_mtok;
|
|
246
|
-
}
|
|
247
|
-
if (typeof api_key_env === "string" && api_key_env.trim().length > 0) {
|
|
248
|
-
// NOT dropped-individually like the tuning knobs above. `api_key_env` is a
|
|
249
|
-
// CREDENTIAL REFERENCE: silently discarding a malformed one leaves the lane
|
|
250
|
-
// looking unauthenticated and fails much further downstream, where the
|
|
251
|
-
// reason no longer names the typo. Fail the lane here, with the same
|
|
252
|
-
// precise text the `openai-compatible` branch uses.
|
|
253
|
-
const bad = invalidEnvVarNameReason("proxy.api_key_env", api_key_env);
|
|
254
|
-
if (bad !== null)
|
|
255
|
-
return { declaration: null, reason: bad };
|
|
256
|
-
declaration.api_key_env = api_key_env.trim();
|
|
257
|
-
}
|
|
258
|
-
if (typeof burst_limited === "boolean") {
|
|
259
|
-
declaration.burst_limited = burst_limited;
|
|
260
|
-
}
|
|
261
|
-
return { declaration };
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* The default populate fetch: time-boxed so a routable-but-dead proxy cannot hang a
|
|
265
|
-
* `next-step` at the Gate-0 build (network-tolerant means bounded, not just caught).
|
|
266
|
-
*/
|
|
267
|
-
const populateFetchWithTimeout = (input, init) => fetch(input, { ...init, signal: AbortSignal.timeout(5_000) });
|
|
268
|
-
/**
|
|
269
|
-
* POPULATE the declared proxy lane (plan §populate-vs-resolve): read the
|
|
270
|
-
* machine declaration's `proxy` block and, when present, fetch its model
|
|
271
|
-
* discovery into the machine-level populate cache ({@link populateProxyCatalog}).
|
|
272
|
-
* This is the network half the resolve path must never run — call it at Gate-0
|
|
273
|
-
* build time (once per run) or on explicit refresh, NEVER from `resolveAmbientSources`.
|
|
274
|
-
*
|
|
275
|
-
* "Present + reachable" gating is the fetch itself: the discovery GET is both the
|
|
276
|
-
* liveness proof and the payload, so a separate pre-probe would only double the
|
|
277
|
-
* network. Never throws: no declared lane ⇒ `null`; a failed/unreachable fetch ⇒
|
|
278
|
-
* `{written:false, reason}` and any prior cache is left untouched — the lane then
|
|
279
|
-
* resolves from the existing cache or unexpanded with its own `dropped[]` reason,
|
|
280
|
-
* degrading Gate-0, never blocking it.
|
|
281
|
-
*/
|
|
282
|
-
export async function populateDeclaredProxyCatalog(deps = {}) {
|
|
283
|
-
const { declaration } = readProxyDeclaration(deps);
|
|
284
|
-
if (declaration === null)
|
|
285
|
-
return null;
|
|
286
|
-
return populateProxyCatalog({
|
|
287
|
-
endpoint: declaration.endpoint,
|
|
288
|
-
...(declaration.top_k !== undefined ? { topK: declaration.top_k } : {}),
|
|
289
|
-
...(declaration.cost_per_mtok !== undefined
|
|
290
|
-
? { costPerMtok: declaration.cost_per_mtok }
|
|
291
|
-
: {}),
|
|
292
|
-
...(declaration.api_key_env !== undefined
|
|
293
|
-
? { apiKeyEnv: declaration.api_key_env }
|
|
294
|
-
: {}),
|
|
295
|
-
fetchImpl: deps.fetchImpl ?? populateFetchWithTimeout,
|
|
296
|
-
...(deps.homeDir !== undefined ? { homeDir: deps.homeDir } : {}),
|
|
297
|
-
});
|
|
298
|
-
}
|
|
299
|
-
/**
|
|
300
|
-
* Populate the proxy catalog ONLY when the resolve half would otherwise drop the
|
|
301
|
-
* lane for it: a `proxy` is declared but the cache is absent or was fetched from a
|
|
302
|
-
* different endpoint. Bounded by construction — after one success the cache exists
|
|
303
|
-
* and this is a cheap read — so a draw with no Gate-0 build moment (remediate) can
|
|
304
|
-
* call it on every config load without a per-load network fetch. Freshness (TTL /
|
|
305
|
-
* explicit refresh) is deliberately NOT this function's job (backlog).
|
|
306
|
-
* [[silent-fail-closed-on-one-draw]] — both draws must trigger populate, not just audit.
|
|
307
|
-
*/
|
|
308
|
-
export async function populateProxyCatalogIfMissing(deps = {}) {
|
|
309
|
-
const { declaration } = readProxyDeclaration(deps);
|
|
310
|
-
if (declaration === null)
|
|
311
|
-
return null;
|
|
312
|
-
const cache = readProxyCatalog(deps);
|
|
313
|
-
if (cache !== null &&
|
|
314
|
-
cache.endpoint.replace(/\/+$/u, "") === declaration.endpoint) {
|
|
315
|
-
return {
|
|
316
|
-
sources: cache.sources,
|
|
317
|
-
written: false,
|
|
318
|
-
reason: "populate cache already present",
|
|
319
|
-
dropped: [],
|
|
320
|
-
};
|
|
321
|
-
}
|
|
322
|
-
return populateDeclaredProxyCatalog(deps);
|
|
323
|
-
}
|
|
324
196
|
/**
|
|
325
197
|
* Can THIS process prove it can reach this declared source?
|
|
326
198
|
*
|
|
@@ -421,10 +293,6 @@ export function verifySourceReach(source, deps = {}) {
|
|
|
421
293
|
const fallback = CLI_DEFAULT_COMMAND[source.transport];
|
|
422
294
|
if (exists(fallback))
|
|
423
295
|
return { verified: true };
|
|
424
|
-
// Gated for the 2026-07-18 sunset, mirroring agyProvider's own fallback.
|
|
425
|
-
if (source.transport === "agy" && exists(AGY_LEGACY_COMMAND)) {
|
|
426
|
-
return { verified: true };
|
|
427
|
-
}
|
|
428
296
|
return { verified: false, reason: `launcher "${fallback}" is not on PATH.` };
|
|
429
297
|
}
|
|
430
298
|
case "subprocess-template": {
|
|
@@ -450,9 +318,8 @@ export function verifySourceReach(source, deps = {}) {
|
|
|
450
318
|
}
|
|
451
319
|
case "claude-worker": {
|
|
452
320
|
// The proxied isolated Claude-harness worker: its reach IS the proxy's
|
|
453
|
-
// liveness (endpoint = the proxy url).
|
|
454
|
-
//
|
|
455
|
-
// the same bar. `api_key_env` is optional here (keyless proxy default).
|
|
321
|
+
// liveness (endpoint = the proxy url). Explicit declarations are held to the
|
|
322
|
+
// same bar as every other endpoint source. `api_key_env` is optional here.
|
|
456
323
|
if (!source.endpoint?.trim()) {
|
|
457
324
|
return {
|
|
458
325
|
verified: false,
|
|
@@ -507,9 +374,8 @@ export function resolveAmbientSources(deps = {}) {
|
|
|
507
374
|
else
|
|
508
375
|
dropped.push({ id: sourceId(source), reason: reach.reason });
|
|
509
376
|
}
|
|
510
|
-
resolveProxyLane(deps, sources, dropped);
|
|
511
377
|
// Worker-kind × pool-class compatibility, applied ONCE over the assembled set so
|
|
512
|
-
// declared
|
|
378
|
+
// all declared lanes are held to the same rule. Per-lane, so one
|
|
513
379
|
// incompatible lane never costs the operator the rest of the pool (unlike a
|
|
514
380
|
// validator error, which degrades the whole declaration).
|
|
515
381
|
const compatible = [];
|
|
@@ -522,95 +388,4 @@ export function resolveAmbientSources(deps = {}) {
|
|
|
522
388
|
}
|
|
523
389
|
return { sources: compatible, dropped };
|
|
524
390
|
}
|
|
525
|
-
/**
|
|
526
|
-
* The proxy lane of the resolve half (plan §populate-vs-resolve): a declared
|
|
527
|
-
* `proxy` whose liveness probe passes expands from the POPULATE CACHE — never
|
|
528
|
-
* a mid-resolve fetch. Fail-open, mirroring the declared-source contract: every
|
|
529
|
-
* outcome short of expansion lands in `dropped[]` with an operator-facing reason
|
|
530
|
-
* (malformed declaration / probe failure / cache absent-stale-empty), so the lane is
|
|
531
|
-
* never silently discarded.
|
|
532
|
-
*/
|
|
533
|
-
function resolveProxyLane(deps, sources, dropped) {
|
|
534
|
-
const { declaration, reason } = readProxyDeclaration(deps);
|
|
535
|
-
if (reason !== undefined) {
|
|
536
|
-
dropped.push({ id: "proxy", reason });
|
|
537
|
-
return;
|
|
538
|
-
}
|
|
539
|
-
if (declaration === null)
|
|
540
|
-
return;
|
|
541
|
-
const { endpoint } = declaration;
|
|
542
|
-
const laneId = `proxy:${endpoint}`;
|
|
543
|
-
// Reach-verify the declared master key BEFORE the liveness probe. A proxy's
|
|
544
|
-
// health endpoint is typically unauthenticated (LiteLLM's /health/liveliness
|
|
545
|
-
// is), so the probe passes with no key and the lane then fails downstream at
|
|
546
|
-
// populate — surfacing "cache absent, run the populate" when the operator DID
|
|
547
|
-
// run it and the real cause is the unset var. Mirrors the same check the
|
|
548
|
-
// expanded per-model claude-worker sources get in `verifySourceReach`.
|
|
549
|
-
const env = deps.env ?? process.env;
|
|
550
|
-
if (declaration.api_key_env !== undefined) {
|
|
551
|
-
if (!(env[declaration.api_key_env] ?? "").trim()) {
|
|
552
|
-
dropped.push({
|
|
553
|
-
id: laneId,
|
|
554
|
-
reason: `env var "${declaration.api_key_env}" is unset or empty in this process.`,
|
|
555
|
-
});
|
|
556
|
-
return;
|
|
557
|
-
}
|
|
558
|
-
}
|
|
559
|
-
const probe = deps.probeHttpReachable ?? defaultProbeHttpReachable;
|
|
560
|
-
if (!probe(endpoint)) {
|
|
561
|
-
dropped.push({
|
|
562
|
-
id: laneId,
|
|
563
|
-
reason: `proxy at "${endpoint}" failed the liveness probe — lane dropped for this invocation.`,
|
|
564
|
-
});
|
|
565
|
-
return;
|
|
566
|
-
}
|
|
567
|
-
const catalog = readProxyCatalog(deps);
|
|
568
|
-
if (catalog === null) {
|
|
569
|
-
dropped.push({
|
|
570
|
-
id: laneId,
|
|
571
|
-
reason: "proxy is reachable but the populate cache is absent/invalid — run the populate (populateProxyCatalog) to expand this lane.",
|
|
572
|
-
});
|
|
573
|
-
return;
|
|
574
|
-
}
|
|
575
|
-
if (catalog.endpoint.replace(/\/+$/u, "") !== endpoint) {
|
|
576
|
-
dropped.push({
|
|
577
|
-
id: laneId,
|
|
578
|
-
reason: `populate cache was fetched from "${catalog.endpoint}", not the declared "${endpoint}" — re-run the populate.`,
|
|
579
|
-
});
|
|
580
|
-
return;
|
|
581
|
-
}
|
|
582
|
-
if (catalog.sources.length === 0) {
|
|
583
|
-
dropped.push({
|
|
584
|
-
id: laneId,
|
|
585
|
-
reason: "proxy expansion is empty (no reachable backend models at populate time) — lane present but unexpanded.",
|
|
586
|
-
});
|
|
587
|
-
return;
|
|
588
|
-
}
|
|
589
|
-
// Declared-wins dedup: an expanded lane whose (service, model)
|
|
590
|
-
// identity a DECLARED source already covers is skipped, so one pool identity
|
|
591
|
-
// never maps to two sources (the launch bridge's pool→source map is 1:1 by
|
|
592
|
-
// assumption — a duplicate would arbitrate the transport by silent map-order
|
|
593
|
-
// clobber). The operator's explicit lane always beats auto-expansion; routing
|
|
594
|
-
// through the proxy for that model is still available by declaring the
|
|
595
|
-
// claude-worker source explicitly.
|
|
596
|
-
const declaredIdentities = new Set(sources.map((s) => `${s.service ?? s.transport}/${s.model ?? ""}`));
|
|
597
|
-
for (const expanded of catalog.sources) {
|
|
598
|
-
const identity = `${expanded.service ?? expanded.transport}/${expanded.model ?? ""}`;
|
|
599
|
-
if (declaredIdentities.has(identity)) {
|
|
600
|
-
dropped.push({
|
|
601
|
-
id: sourceId(expanded),
|
|
602
|
-
reason: `expanded lane skipped — a declared source already covers backend identity "${identity}" (declared wins over expansion).`,
|
|
603
|
-
});
|
|
604
|
-
continue;
|
|
605
|
-
}
|
|
606
|
-
// `burst_limited` is stamped from the CURRENT declaration, not the populate
|
|
607
|
-
// cache — declaration-authoritative in BOTH directions: an explicit `false`
|
|
608
|
-
// strips a cache-carried flag just as `true` adds one, so flipping the knob
|
|
609
|
-
// takes effect on the next resolve without a re-populate (a stale cache can
|
|
610
|
-
// neither launder the flag off nor pin it on).
|
|
611
|
-
sources.push(typeof declaration.burst_limited === "boolean"
|
|
612
|
-
? { ...expanded, burst_limited: declaration.burst_limited }
|
|
613
|
-
: expanded);
|
|
614
|
-
}
|
|
615
|
-
}
|
|
616
391
|
//# sourceMappingURL=auditorSources.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auditorSources.js","sourceRoot":"","sources":["../../../src/shared/providers/auditorSources.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auditorSources.js","sourceRoot":"","sources":["../../../src/shared/providers/auditorSources.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type ResolvedProviderName } from "../types/sessionConfig.js";
|
|
2
|
+
/** A mechanical source-pool exclusion emitted by the local self-spawn guard. */
|
|
3
|
+
export type DispatchExclusionPattern = `transport:${ResolvedProviderName}`;
|
|
4
|
+
export interface ExcludableBackend {
|
|
5
|
+
transport: string;
|
|
6
|
+
service?: string;
|
|
7
|
+
model?: string;
|
|
8
|
+
endpoint?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface DispatchExclusion {
|
|
11
|
+
excludes(backend: ExcludableBackend): boolean;
|
|
12
|
+
excludedBy(backend: ExcludableBackend): DispatchExclusionPattern | null;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Reject source lanes that would recursively spawn the active host agent.
|
|
16
|
+
* Provider/model ordering and failover deliberately belong to the dispatch broker.
|
|
17
|
+
*/
|
|
18
|
+
export declare function buildSelfSpawnExclusion(options?: {
|
|
19
|
+
env?: NodeJS.ProcessEnv;
|
|
20
|
+
activeHostProvider?: ResolvedProviderName | null;
|
|
21
|
+
}): DispatchExclusion;
|
|
22
|
+
//# sourceMappingURL=dispatchExclusion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatchExclusion.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/dispatchExclusion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGtF,gFAAgF;AAChF,MAAM,MAAM,wBAAwB,GAAG,aAAa,oBAAoB,EAAE,CAAC;AAE3E,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAC9C,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,wBAAwB,GAAG,IAAI,CAAC;CACzE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,kBAAkB,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CAC7C,GACL,iBAAiB,CAenB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { PROVIDER_NAMES } from "../types/sessionConfig.js";
|
|
2
|
+
import { isSelfSpawnBlocked } from "./providerPathGuard.js";
|
|
3
|
+
/**
|
|
4
|
+
* Reject source lanes that would recursively spawn the active host agent.
|
|
5
|
+
* Provider/model ordering and failover deliberately belong to the dispatch broker.
|
|
6
|
+
*/
|
|
7
|
+
export function buildSelfSpawnExclusion(options = {}) {
|
|
8
|
+
const env = options.env ?? process.env;
|
|
9
|
+
const blocked = PROVIDER_NAMES
|
|
10
|
+
.filter((name) => name !== "auto")
|
|
11
|
+
.filter((name) => isSelfSpawnBlocked(name, env));
|
|
12
|
+
if (options.activeHostProvider)
|
|
13
|
+
blocked.push(options.activeHostProvider);
|
|
14
|
+
const blockedSet = new Set(blocked);
|
|
15
|
+
const excludedBy = (backend) => blockedSet.has(backend.transport)
|
|
16
|
+
? `transport:${backend.transport}`
|
|
17
|
+
: null;
|
|
18
|
+
return {
|
|
19
|
+
excludes: (backend) => excludedBy(backend) !== null,
|
|
20
|
+
excludedBy,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=dispatchExclusion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatchExclusion.js","sourceRoot":"","sources":["../../../src/shared/providers/dispatchExclusion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAA6B,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAiB5D;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,UAGI,EAAE;IAEN,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,OAAO,GAAG,cAAc;SAC3B,MAAM,CAAC,CAAC,IAAI,EAAgC,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC;SAC/D,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,OAAO,CAAC,kBAAkB;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAuB,OAAO,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,CAAC,OAA0B,EAAmC,EAAE,CACjF,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,SAAiC,CAAC;QACvD,CAAC,CAAE,aAAa,OAAO,CAAC,SAAS,EAA+B;QAChE,CAAC,CAAC,IAAI,CAAC;IACX,OAAO;QACL,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI;QACnD,UAAU;KACX,CAAC;AACJ,CAAC"}
|