audit-tools 0.45.0 → 0.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -2
- package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
- package/dist/audit/cli/charterExtractionPrompt.js +11 -1
- package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
- package/dist/audit/cli/cleanupCommand.d.ts +25 -0
- package/dist/audit/cli/cleanupCommand.d.ts.map +1 -1
- package/dist/audit/cli/cleanupCommand.js +69 -0
- package/dist/audit/cli/cleanupCommand.js.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.js +52 -76
- package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
- package/dist/audit/cli/dispatch/packetFilter.d.ts +1 -1
- package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
- package/dist/audit/cli/fanoutLanes.js +6 -1
- package/dist/audit/cli/fanoutLanes.js.map +1 -1
- package/dist/audit/cli/laneSubmissions.d.ts +13 -0
- package/dist/audit/cli/laneSubmissions.d.ts.map +1 -1
- package/dist/audit/cli/laneSubmissions.js +38 -27
- package/dist/audit/cli/laneSubmissions.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +8 -6
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +3 -2
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +37 -35
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/reviewRun.d.ts +1 -1
- package/dist/audit/cli/reviewRun.d.ts.map +1 -1
- package/dist/audit/cli/reviewRun.js +2 -9
- package/dist/audit/cli/reviewRun.js.map +1 -1
- package/dist/audit/cli/sampleRunCommand.d.ts.map +1 -1
- package/dist/audit/cli/sampleRunCommand.js +12 -1
- package/dist/audit/cli/sampleRunCommand.js.map +1 -1
- package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.js +9 -1
- package/dist/audit/cli/semanticReviewStep.js.map +1 -1
- package/dist/audit/cli/steps.d.ts +6 -6
- package/dist/audit/contracts/workerSchemas.d.ts +36 -26
- package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
- package/dist/audit/contracts/workerSchemas.js +11 -1
- package/dist/audit/contracts/workerSchemas.js.map +1 -1
- package/dist/audit/contracts/wrapperResponse.d.ts +52 -28
- package/dist/audit/contracts/wrapperResponse.d.ts.map +1 -1
- package/dist/audit/contracts/wrapperResponse.js +8 -5
- package/dist/audit/contracts/wrapperResponse.js.map +1 -1
- package/dist/audit/decompose/sources.d.ts.map +1 -1
- package/dist/audit/decompose/sources.js +21 -5
- package/dist/audit/decompose/sources.js.map +1 -1
- package/dist/audit/extractors/analyzers/registry.d.ts +8 -5
- package/dist/audit/extractors/analyzers/registry.d.ts.map +1 -1
- package/dist/audit/extractors/analyzers/registry.js +28 -7
- package/dist/audit/extractors/analyzers/registry.js.map +1 -1
- package/dist/audit/extractors/designAssessment.js +1 -1
- package/dist/audit/extractors/gitHistory.d.ts +1 -1
- package/dist/audit/extractors/gitHistory.js +1 -1
- package/dist/audit/extractors/graph.d.ts +1 -1
- package/dist/audit/extractors/graph.js +1 -1
- package/dist/audit/extractors/risk.d.ts +1 -1
- package/dist/audit/extractors/risk.js +1 -1
- package/dist/audit/io/artifacts.d.ts.map +1 -1
- package/dist/audit/io/artifacts.js +5 -5
- package/dist/audit/io/artifacts.js.map +1 -1
- package/dist/audit/orchestrator/acquisitionExecutor.d.ts +11 -6
- package/dist/audit/orchestrator/acquisitionExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/acquisitionExecutor.js +1 -1
- package/dist/audit/orchestrator/acquisitionExecutor.js.map +1 -1
- package/dist/audit/orchestrator/advance.d.ts +14 -10
- package/dist/audit/orchestrator/advance.d.ts.map +1 -1
- package/dist/audit/orchestrator/advance.js +49 -24
- package/dist/audit/orchestrator/advance.js.map +1 -1
- package/dist/audit/orchestrator/advanceTypes.d.ts +14 -0
- package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
- package/dist/audit/orchestrator/autoFixExecutor.d.ts +20 -1
- package/dist/audit/orchestrator/autoFixExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/autoFixExecutor.js +77 -15
- package/dist/audit/orchestrator/autoFixExecutor.js.map +1 -1
- package/dist/audit/orchestrator/dependencyMap.js +1 -1
- package/dist/audit/orchestrator/dependencyMap.js.map +1 -1
- package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +18 -4
- package/dist/audit/orchestrator/executorRunners.js.map +1 -1
- package/dist/audit/orchestrator/executors.d.ts +54 -0
- package/dist/audit/orchestrator/executors.d.ts.map +1 -1
- package/dist/audit/orchestrator/executors.js +352 -0
- package/dist/audit/orchestrator/executors.js.map +1 -1
- package/dist/audit/orchestrator/hostInputPause.d.ts +20 -11
- package/dist/audit/orchestrator/hostInputPause.d.ts.map +1 -1
- package/dist/audit/orchestrator/hostInputPause.js +17 -11
- package/dist/audit/orchestrator/hostInputPause.js.map +1 -1
- package/dist/audit/orchestrator/localCommands.d.ts +24 -1
- package/dist/audit/orchestrator/localCommands.d.ts.map +1 -1
- package/dist/audit/orchestrator/localCommands.js +44 -9
- package/dist/audit/orchestrator/localCommands.js.map +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts +13 -0
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +13 -0
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/orchestrator/requeueCommand.d.ts +1 -1
- package/dist/audit/orchestrator/runtimeCommand.d.ts +32 -1
- package/dist/audit/orchestrator/runtimeCommand.d.ts.map +1 -1
- package/dist/audit/orchestrator/runtimeCommand.js +90 -3
- package/dist/audit/orchestrator/runtimeCommand.js.map +1 -1
- package/dist/audit/orchestrator/structureExecutors.js +1 -1
- package/dist/audit/orchestrator/structureExecutors.js.map +1 -1
- package/dist/audit/orchestrator/syntaxResolutionExecutor.d.ts +11 -1
- package/dist/audit/orchestrator/syntaxResolutionExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/syntaxResolutionExecutor.js +25 -9
- package/dist/audit/orchestrator/syntaxResolutionExecutor.js.map +1 -1
- package/dist/audit/supervisor/operatorHandoff.d.ts +0 -1
- package/dist/audit/supervisor/operatorHandoff.d.ts.map +1 -1
- package/dist/audit/supervisor/operatorHandoff.js +2 -1
- package/dist/audit/supervisor/operatorHandoff.js.map +1 -1
- package/dist/audit/types.d.ts +18 -18
- package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/derive.js +1 -0
- package/dist/remediate/contractPipeline/derive.js.map +1 -1
- package/dist/remediate/contractPipeline/semanticProjection.d.ts +5 -4
- package/dist/remediate/contractPipeline/semanticProjection.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/semanticProjection.js +34 -19
- package/dist/remediate/contractPipeline/semanticProjection.js.map +1 -1
- package/dist/remediate/index.d.ts.map +1 -1
- package/dist/remediate/index.js +3 -2
- package/dist/remediate/index.js.map +1 -1
- package/dist/remediate/phases/close.d.ts +37 -2
- package/dist/remediate/phases/close.d.ts.map +1 -1
- package/dist/remediate/phases/close.js +100 -31
- package/dist/remediate/phases/close.js.map +1 -1
- package/dist/remediate/phases/closeVerifyAnalyzerLeads.js +2 -2
- package/dist/remediate/phases/closeVerifyAnalyzerLeads.js.map +1 -1
- package/dist/remediate/phases/triage.d.ts.map +1 -1
- package/dist/remediate/phases/triage.js +61 -19
- package/dist/remediate/phases/triage.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts +13 -0
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +82 -3
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.js +297 -139
- package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +37 -7
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/types/options.d.ts +1 -1
- package/dist/shared/analyzers/acquisitionEngine.d.ts +61 -28
- package/dist/shared/analyzers/acquisitionEngine.d.ts.map +1 -1
- package/dist/shared/analyzers/acquisitionEngine.js +83 -24
- package/dist/shared/analyzers/acquisitionEngine.js.map +1 -1
- package/dist/shared/analyzers/binaryAcquisition.d.ts +8 -2
- package/dist/shared/analyzers/binaryAcquisition.d.ts.map +1 -1
- package/dist/shared/analyzers/binaryAcquisition.js +4 -4
- package/dist/shared/analyzers/binaryAcquisition.js.map +1 -1
- package/dist/shared/constitutionalDocPaths.d.ts.map +1 -1
- package/dist/shared/constitutionalDocPaths.js +7 -0
- package/dist/shared/constitutionalDocPaths.js.map +1 -1
- package/dist/shared/engine/obligationEngine.d.ts +44 -3
- package/dist/shared/engine/obligationEngine.d.ts.map +1 -1
- package/dist/shared/engine/obligationEngine.js +53 -7
- package/dist/shared/engine/obligationEngine.js.map +1 -1
- package/dist/shared/findings/dedupe.d.ts.map +1 -1
- package/dist/shared/findings/dedupe.js +8 -0
- package/dist/shared/findings/dedupe.js.map +1 -1
- package/dist/shared/friction/frictionRecord.d.ts +42 -2
- package/dist/shared/friction/frictionRecord.d.ts.map +1 -1
- package/dist/shared/friction/frictionRecord.js +111 -3
- package/dist/shared/friction/frictionRecord.js.map +1 -1
- package/dist/shared/friction/triage.d.ts +15 -0
- package/dist/shared/friction/triage.d.ts.map +1 -1
- package/dist/shared/friction/triage.js +33 -2
- package/dist/shared/friction/triage.js.map +1 -1
- package/dist/shared/index.d.ts +13 -9
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +14 -7
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/io/fileLock.d.ts.map +1 -1
- package/dist/shared/io/fileLock.js +22 -3
- package/dist/shared/io/fileLock.js.map +1 -1
- package/dist/shared/io/frictionCapture.d.ts +73 -19
- package/dist/shared/io/frictionCapture.d.ts.map +1 -1
- package/dist/shared/io/frictionCapture.js +21 -30
- package/dist/shared/io/frictionCapture.js.map +1 -1
- package/dist/shared/io/lockedJsonStore.d.ts +24 -3
- package/dist/shared/io/lockedJsonStore.d.ts.map +1 -1
- package/dist/shared/io/lockedJsonStore.js +35 -7
- package/dist/shared/io/lockedJsonStore.js.map +1 -1
- package/dist/shared/io/stepContractWriter.d.ts +3 -3
- package/dist/shared/io/stepContractWriter.d.ts.map +1 -1
- package/dist/shared/io/stepContractWriter.js +97 -13
- package/dist/shared/io/stepContractWriter.js.map +1 -1
- package/dist/shared/submission/expectedSubmissions.d.ts +18 -0
- package/dist/shared/submission/expectedSubmissions.d.ts.map +1 -1
- package/dist/shared/submission/expectedSubmissions.js +17 -0
- package/dist/shared/submission/expectedSubmissions.js.map +1 -1
- package/dist/shared/submission/handRecovery.d.ts.map +1 -1
- package/dist/shared/submission/handRecovery.js +9 -11
- package/dist/shared/submission/handRecovery.js.map +1 -1
- package/dist/shared/submission/hostHandoffCore.d.ts +155 -0
- package/dist/shared/submission/hostHandoffCore.d.ts.map +1 -0
- package/dist/shared/submission/hostHandoffCore.js +210 -0
- package/dist/shared/submission/hostHandoffCore.js.map +1 -0
- package/dist/shared/submission/submissionLedger.d.ts +5 -1
- package/dist/shared/submission/submissionLedger.d.ts.map +1 -1
- package/dist/shared/submission/submissionLedger.js +33 -3
- package/dist/shared/submission/submissionLedger.js.map +1 -1
- package/dist/shared/tooling/commandShape.d.ts +29 -0
- package/dist/shared/tooling/commandShape.d.ts.map +1 -1
- package/dist/shared/tooling/commandShape.js +82 -10
- package/dist/shared/tooling/commandShape.js.map +1 -1
- package/dist/shared/tooling/exec.d.ts +32 -0
- package/dist/shared/tooling/exec.d.ts.map +1 -1
- package/dist/shared/tooling/exec.js +189 -0
- package/dist/shared/tooling/exec.js.map +1 -1
- package/docs/audit-pkg/contracts.md +2 -1
- package/docs/audit-pkg/operator-guide.md +5 -2
- package/docs/audit-pkg/product.md +22 -6
- package/package.json +10 -6
- package/schemas/audit-code-v1alpha1.schema.json +297 -0
- package/schemas/audit_result.schema.json +4 -0
- package/schemas/audit_results.schema.json +4 -0
- package/scripts/shared/install-host-assets.mjs +8 -5
- package/skills/audit-code/SKILL.md +4 -2
- package/skills/audit-code/audit-code.prompt.md +5 -2
- package/skills/audit-code/opencode-command-template.txt +1 -1
- package/wrapper/audit-code-wrapper-lib.mjs +81 -16
- package/wrapper/installer-verb-help.mjs +14 -4
- package/docs/audit-pkg/development.md +0 -113
- package/docs/audit-pkg/release.md +0 -140
|
@@ -1,3 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Artifacts no executor produces. `advanceAudit` writes the supervisor pair on
|
|
3
|
+
* every fold, the environment probe writes the tooling manifest, and workers
|
|
4
|
+
* append their own reflections — so these carry an explicit declaration rather
|
|
5
|
+
* than an empty producer cell in the rendered table.
|
|
6
|
+
*
|
|
7
|
+
* Ordered by artifact fileName (content-derived stable key).
|
|
8
|
+
*/
|
|
9
|
+
export const LIFECYCLE_PRODUCTIONS = [
|
|
10
|
+
{
|
|
11
|
+
artifact: "agent-feedback.jsonl",
|
|
12
|
+
writer: "audit workers (append-only)",
|
|
13
|
+
reason: "opt-in meta-audit reflections appended by whoever ran the task; treated as always-updated when metadata is computed",
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
artifact: "artifact_metadata.json",
|
|
17
|
+
writer: "advanceAudit (src/audit/orchestrator/advance.ts)",
|
|
18
|
+
reason: "the staleness bookkeeping the fold itself recomputes from every run's write-set",
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
artifact: "audit_state.json",
|
|
22
|
+
writer: "advanceAudit (src/audit/orchestrator/advance.ts)",
|
|
23
|
+
reason: "the derived obligation state the fold persists after each executor run",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
artifact: "tooling_manifest.json",
|
|
27
|
+
writer: "the environment probe (src/audit/orchestrator/advance.ts)",
|
|
28
|
+
reason: "probed from the host environment, not derived from any upstream artifact",
|
|
29
|
+
},
|
|
30
|
+
];
|
|
1
31
|
/**
|
|
2
32
|
* Returns true when the executor identified by `id` is a host-delegation point
|
|
3
33
|
* (i.e. it pauses the deterministic pipeline and asks the active LLM agent to
|
|
@@ -11,11 +41,33 @@ export const EXECUTOR_REGISTRY = [
|
|
|
11
41
|
id: "intake_executor",
|
|
12
42
|
kind: "deterministic",
|
|
13
43
|
obligation_ids: ["repo_manifest", "file_disposition"],
|
|
44
|
+
produces: [
|
|
45
|
+
{
|
|
46
|
+
artifact: "file_disposition.json",
|
|
47
|
+
role: "primary",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
artifact: "repo_manifest.json",
|
|
51
|
+
role: "primary",
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
artifact: "scope_summary.json",
|
|
55
|
+
role: "side_channel",
|
|
56
|
+
note: "host-facing scope digest; the in-process channel is ExecutorRunResult.scope_summary, so it is deliberately outside ARTIFACT_DEFINITIONS and the staleness DAG",
|
|
57
|
+
},
|
|
58
|
+
],
|
|
14
59
|
},
|
|
15
60
|
{
|
|
16
61
|
id: "intent_checkpoint_executor",
|
|
17
62
|
kind: "host_delegation",
|
|
18
63
|
obligation_ids: ["intent_checkpoint_current"],
|
|
64
|
+
produces: [
|
|
65
|
+
{
|
|
66
|
+
artifact: "intent_checkpoint.json",
|
|
67
|
+
role: "primary",
|
|
68
|
+
note: "written by the host at the confirm-intent pause, at the path the CLI binds",
|
|
69
|
+
},
|
|
70
|
+
],
|
|
19
71
|
},
|
|
20
72
|
{
|
|
21
73
|
// DD-9 intent-equivalence gate. host_delegation: a prose-only delta emits
|
|
@@ -25,6 +77,7 @@ export const EXECUTOR_REGISTRY = [
|
|
|
25
77
|
id: "intent_equivalence_executor",
|
|
26
78
|
kind: "host_delegation",
|
|
27
79
|
obligation_ids: ["intent_equivalence_current"],
|
|
80
|
+
produces: [],
|
|
28
81
|
},
|
|
29
82
|
{
|
|
30
83
|
// Item B consent surfacing is a FOLD-LEVEL pause on this executor (see
|
|
@@ -34,11 +87,53 @@ export const EXECUTOR_REGISTRY = [
|
|
|
34
87
|
id: "external_analyzer_acquisition_executor",
|
|
35
88
|
kind: "deterministic",
|
|
36
89
|
obligation_ids: ["external_analyzers_current"],
|
|
90
|
+
produces: [
|
|
91
|
+
{
|
|
92
|
+
artifact: "external_analyzer_acquisition.json",
|
|
93
|
+
role: "primary",
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
artifact: "external_analyzer_results.json",
|
|
97
|
+
role: "refresh",
|
|
98
|
+
note: "upserts each tool's normalized findings, and declares the artifact ONLY when a tool actually contributed, so an unchanged results array never churns its downstreams",
|
|
99
|
+
},
|
|
100
|
+
],
|
|
37
101
|
},
|
|
38
102
|
{
|
|
39
103
|
id: "structure_executor",
|
|
40
104
|
kind: "deterministic",
|
|
41
105
|
obligation_ids: ["structure_artifacts"],
|
|
106
|
+
produces: [
|
|
107
|
+
{
|
|
108
|
+
artifact: "critical_flows.json",
|
|
109
|
+
role: "primary",
|
|
110
|
+
note: "merges the persisted critical-flow-fallback.json when one exists",
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
artifact: "file_disposition.json",
|
|
114
|
+
role: "refresh",
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
artifact: "git_history.json",
|
|
118
|
+
role: "primary",
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
artifact: "graph_bundle.json",
|
|
122
|
+
role: "primary",
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
artifact: "risk_register.json",
|
|
126
|
+
role: "primary",
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
artifact: "surface_manifest.json",
|
|
130
|
+
role: "primary",
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
artifact: "unit_manifest.json",
|
|
134
|
+
role: "primary",
|
|
135
|
+
},
|
|
136
|
+
],
|
|
42
137
|
},
|
|
43
138
|
{
|
|
44
139
|
// Critical-flow LLM fallback. host_delegation (NON-DRAINABLE): when the
|
|
@@ -49,26 +144,62 @@ export const EXECUTOR_REGISTRY = [
|
|
|
49
144
|
id: "critical_flow_fallback_executor",
|
|
50
145
|
kind: "host_delegation",
|
|
51
146
|
obligation_ids: ["critical_flow_fallback_current"],
|
|
147
|
+
produces: [
|
|
148
|
+
{
|
|
149
|
+
artifact: "critical-flow-fallback.json",
|
|
150
|
+
role: "primary",
|
|
151
|
+
note: "durable host input the structure phase merges on the next fold",
|
|
152
|
+
},
|
|
153
|
+
],
|
|
52
154
|
},
|
|
53
155
|
{
|
|
54
156
|
id: "graph_enrichment_executor",
|
|
55
157
|
kind: "deterministic",
|
|
56
158
|
obligation_ids: ["graph_enrichment_current"],
|
|
159
|
+
produces: [
|
|
160
|
+
{
|
|
161
|
+
artifact: "analyzer_capability.json",
|
|
162
|
+
role: "primary",
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
artifact: "graph_bundle.json",
|
|
166
|
+
role: "refresh",
|
|
167
|
+
note: "merges analyzer edges",
|
|
168
|
+
},
|
|
169
|
+
],
|
|
57
170
|
},
|
|
58
171
|
{
|
|
59
172
|
id: "design_assessment_executor",
|
|
60
173
|
kind: "deterministic",
|
|
61
174
|
obligation_ids: ["design_assessment_current"],
|
|
175
|
+
produces: [
|
|
176
|
+
{
|
|
177
|
+
artifact: "design_assessment.json",
|
|
178
|
+
role: "primary",
|
|
179
|
+
},
|
|
180
|
+
],
|
|
62
181
|
},
|
|
63
182
|
{
|
|
64
183
|
id: "structure_decomposition_executor",
|
|
65
184
|
kind: "deterministic",
|
|
66
185
|
obligation_ids: ["structure_decomposition_current"],
|
|
186
|
+
produces: [
|
|
187
|
+
{
|
|
188
|
+
artifact: "structure_decomposition.json",
|
|
189
|
+
role: "primary",
|
|
190
|
+
},
|
|
191
|
+
],
|
|
67
192
|
},
|
|
68
193
|
{
|
|
69
194
|
id: "docs_digest_executor",
|
|
70
195
|
kind: "deterministic",
|
|
71
196
|
obligation_ids: ["docs_digest_current"],
|
|
197
|
+
produces: [
|
|
198
|
+
{
|
|
199
|
+
artifact: "docs_digest.json",
|
|
200
|
+
role: "primary",
|
|
201
|
+
},
|
|
202
|
+
],
|
|
72
203
|
},
|
|
73
204
|
{
|
|
74
205
|
// Phase C charter extraction. host_delegation: at a deep+ ceiling it emits an
|
|
@@ -78,6 +209,12 @@ export const EXECUTOR_REGISTRY = [
|
|
|
78
209
|
id: "charter_extraction_executor",
|
|
79
210
|
kind: "host_delegation",
|
|
80
211
|
obligation_ids: ["charter_extraction_current"],
|
|
212
|
+
produces: [
|
|
213
|
+
{
|
|
214
|
+
artifact: "charter_register.json",
|
|
215
|
+
role: "primary",
|
|
216
|
+
},
|
|
217
|
+
],
|
|
81
218
|
},
|
|
82
219
|
{
|
|
83
220
|
// Phase C.2 delta-mining, mirrors charter_extraction. host_delegation: at a
|
|
@@ -88,16 +225,37 @@ export const EXECUTOR_REGISTRY = [
|
|
|
88
225
|
id: "charter_delta_executor",
|
|
89
226
|
kind: "host_delegation",
|
|
90
227
|
obligation_ids: ["charter_delta_current"],
|
|
228
|
+
produces: [
|
|
229
|
+
{
|
|
230
|
+
artifact: "charter_register.json",
|
|
231
|
+
role: "refresh",
|
|
232
|
+
note: "settles the register's pending deltas",
|
|
233
|
+
},
|
|
234
|
+
],
|
|
91
235
|
},
|
|
92
236
|
{
|
|
93
237
|
id: "design_review_contract",
|
|
94
238
|
kind: "host_delegation",
|
|
95
239
|
obligation_ids: ["design_review_contract_completed"],
|
|
240
|
+
produces: [
|
|
241
|
+
{
|
|
242
|
+
artifact: "design_assessment.json",
|
|
243
|
+
role: "refresh",
|
|
244
|
+
note: "merges the consumed pass verdict at the CLI ingestion site",
|
|
245
|
+
},
|
|
246
|
+
],
|
|
96
247
|
},
|
|
97
248
|
{
|
|
98
249
|
id: "design_review_conceptual",
|
|
99
250
|
kind: "host_delegation",
|
|
100
251
|
obligation_ids: ["design_review_conceptual_completed"],
|
|
252
|
+
produces: [
|
|
253
|
+
{
|
|
254
|
+
artifact: "design_assessment.json",
|
|
255
|
+
role: "refresh",
|
|
256
|
+
note: "merges the consumed pass verdict at the CLI ingestion site",
|
|
257
|
+
},
|
|
258
|
+
],
|
|
101
259
|
},
|
|
102
260
|
{
|
|
103
261
|
// Phase D charter-clarification triangulation loop. host_delegation (NON-
|
|
@@ -108,6 +266,12 @@ export const EXECUTOR_REGISTRY = [
|
|
|
108
266
|
id: "charter_clarification_executor",
|
|
109
267
|
kind: "host_delegation",
|
|
110
268
|
obligation_ids: ["charter_clarification_current"],
|
|
269
|
+
produces: [
|
|
270
|
+
{
|
|
271
|
+
artifact: "charter_clarification.json",
|
|
272
|
+
role: "primary",
|
|
273
|
+
},
|
|
274
|
+
],
|
|
111
275
|
},
|
|
112
276
|
{
|
|
113
277
|
// Phase E systemic improvement-seeking challenge loop. host_delegation (NON-
|
|
@@ -118,21 +282,130 @@ export const EXECUTOR_REGISTRY = [
|
|
|
118
282
|
id: "systemic_challenge_executor",
|
|
119
283
|
kind: "host_delegation",
|
|
120
284
|
obligation_ids: ["systemic_challenge_current"],
|
|
285
|
+
produces: [
|
|
286
|
+
{
|
|
287
|
+
artifact: "systemic_challenge.json",
|
|
288
|
+
role: "primary",
|
|
289
|
+
},
|
|
290
|
+
],
|
|
121
291
|
},
|
|
122
292
|
{
|
|
123
293
|
id: "planning_executor",
|
|
124
294
|
kind: "deterministic",
|
|
125
295
|
obligation_ids: ["planning_artifacts"],
|
|
296
|
+
produces: [
|
|
297
|
+
{
|
|
298
|
+
artifact: "audit_plan_metrics.json",
|
|
299
|
+
role: "primary",
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
artifact: "audit_tasks.json",
|
|
303
|
+
role: "primary",
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
artifact: "coverage_matrix.json",
|
|
307
|
+
role: "primary",
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
artifact: "flow_coverage.json",
|
|
311
|
+
role: "primary",
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
artifact: "requeue_tasks.json",
|
|
315
|
+
role: "primary",
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
artifact: "runtime_validation_report.json",
|
|
319
|
+
role: "refresh",
|
|
320
|
+
note: "when runtime-validation tasks exist",
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
artifact: "runtime_validation_tasks.json",
|
|
324
|
+
role: "primary",
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
artifact: "scope.json",
|
|
328
|
+
role: "primary",
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
artifact: "task_affinity_graph.json",
|
|
332
|
+
role: "primary",
|
|
333
|
+
},
|
|
334
|
+
],
|
|
126
335
|
},
|
|
127
336
|
{
|
|
128
337
|
id: "result_ingestion_executor",
|
|
129
338
|
kind: "deterministic",
|
|
130
339
|
obligation_ids: ["audit_results_ingested"],
|
|
340
|
+
produces: [
|
|
341
|
+
{
|
|
342
|
+
artifact: "access_memory.json",
|
|
343
|
+
role: "primary",
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
artifact: "audit_plan_metrics.json",
|
|
347
|
+
role: "refresh",
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
artifact: "audit_results.jsonl",
|
|
351
|
+
role: "primary",
|
|
352
|
+
note: "appends validated results returned through semantic_review_executor",
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
artifact: "audit_tasks.json",
|
|
356
|
+
role: "refresh",
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
artifact: "coverage_matrix.json",
|
|
360
|
+
role: "refresh",
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
artifact: "flow_coverage.json",
|
|
364
|
+
role: "refresh",
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
artifact: "requeue_tasks.json",
|
|
368
|
+
role: "refresh",
|
|
369
|
+
},
|
|
370
|
+
{
|
|
371
|
+
artifact: "runtime_validation_report.json",
|
|
372
|
+
role: "refresh",
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
artifact: "runtime_validation_tasks.json",
|
|
376
|
+
role: "refresh",
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
artifact: "task_affinity_graph.json",
|
|
380
|
+
role: "refresh",
|
|
381
|
+
},
|
|
382
|
+
],
|
|
131
383
|
},
|
|
132
384
|
{
|
|
133
385
|
id: "runtime_validation_executor",
|
|
134
386
|
kind: "deterministic",
|
|
135
387
|
obligation_ids: ["runtime_validation_current"],
|
|
388
|
+
produces: [
|
|
389
|
+
{
|
|
390
|
+
artifact: "audit_plan_metrics.json",
|
|
391
|
+
role: "refresh",
|
|
392
|
+
note: "selective deepening",
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
artifact: "audit_tasks.json",
|
|
396
|
+
role: "refresh",
|
|
397
|
+
note: "selective deepening",
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
artifact: "runtime_validation_report.json",
|
|
401
|
+
role: "primary",
|
|
402
|
+
},
|
|
403
|
+
{
|
|
404
|
+
artifact: "task_affinity_graph.json",
|
|
405
|
+
role: "refresh",
|
|
406
|
+
note: "selective deepening",
|
|
407
|
+
},
|
|
408
|
+
],
|
|
136
409
|
},
|
|
137
410
|
{
|
|
138
411
|
// No obligation_ids: dispatched only via an explicit preferredExecutor
|
|
@@ -140,16 +413,64 @@ export const EXECUTOR_REGISTRY = [
|
|
|
140
413
|
id: "runtime_validation_update_executor",
|
|
141
414
|
kind: "deterministic",
|
|
142
415
|
obligation_ids: [],
|
|
416
|
+
produces: [
|
|
417
|
+
{
|
|
418
|
+
artifact: "audit_plan_metrics.json",
|
|
419
|
+
role: "refresh",
|
|
420
|
+
note: "selective deepening; preferredExecutor only",
|
|
421
|
+
},
|
|
422
|
+
{
|
|
423
|
+
artifact: "audit_tasks.json",
|
|
424
|
+
role: "refresh",
|
|
425
|
+
note: "selective deepening; preferredExecutor only",
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
artifact: "runtime_validation_report.json",
|
|
429
|
+
role: "refresh",
|
|
430
|
+
note: "preferredExecutor only",
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
artifact: "task_affinity_graph.json",
|
|
434
|
+
role: "refresh",
|
|
435
|
+
note: "selective deepening; preferredExecutor only",
|
|
436
|
+
},
|
|
437
|
+
],
|
|
143
438
|
},
|
|
144
439
|
{
|
|
145
440
|
id: "synthesis_executor",
|
|
146
441
|
kind: "deterministic",
|
|
147
442
|
obligation_ids: ["synthesis_current"],
|
|
443
|
+
produces: [
|
|
444
|
+
{
|
|
445
|
+
artifact: "audit-findings.json",
|
|
446
|
+
role: "primary",
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
artifact: "audit-report.md",
|
|
450
|
+
role: "primary",
|
|
451
|
+
},
|
|
452
|
+
],
|
|
148
453
|
},
|
|
149
454
|
{
|
|
150
455
|
id: "synthesis_narrative_executor",
|
|
151
456
|
kind: "host_delegation",
|
|
152
457
|
obligation_ids: ["synthesis_narrative_current"],
|
|
458
|
+
produces: [
|
|
459
|
+
{
|
|
460
|
+
artifact: "audit-findings.json",
|
|
461
|
+
role: "refresh",
|
|
462
|
+
note: "re-render with the narrative",
|
|
463
|
+
},
|
|
464
|
+
{
|
|
465
|
+
artifact: "audit-report.md",
|
|
466
|
+
role: "refresh",
|
|
467
|
+
note: "re-render with the narrative",
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
artifact: "synthesis-narrative.json",
|
|
471
|
+
role: "primary",
|
|
472
|
+
},
|
|
473
|
+
],
|
|
153
474
|
},
|
|
154
475
|
{
|
|
155
476
|
// No obligation_ids: dispatched only via an explicit preferredExecutor
|
|
@@ -157,26 +478,57 @@ export const EXECUTOR_REGISTRY = [
|
|
|
157
478
|
id: "external_analyzer_import_executor",
|
|
158
479
|
kind: "deterministic",
|
|
159
480
|
obligation_ids: [],
|
|
481
|
+
produces: [
|
|
482
|
+
{
|
|
483
|
+
artifact: "external_analyzer_results.json",
|
|
484
|
+
role: "refresh",
|
|
485
|
+
note: "preferredExecutor only",
|
|
486
|
+
},
|
|
487
|
+
],
|
|
160
488
|
},
|
|
161
489
|
{
|
|
162
490
|
id: "auto_fix_executor",
|
|
163
491
|
kind: "deterministic",
|
|
164
492
|
obligation_ids: ["auto_fixes_applied"],
|
|
493
|
+
produces: [
|
|
494
|
+
{
|
|
495
|
+
artifact: "auto_fixes_applied.json",
|
|
496
|
+
role: "primary",
|
|
497
|
+
},
|
|
498
|
+
],
|
|
165
499
|
},
|
|
166
500
|
{
|
|
167
501
|
id: "syntax_resolution_executor",
|
|
168
502
|
kind: "deterministic",
|
|
169
503
|
obligation_ids: ["syntax_resolved"],
|
|
504
|
+
produces: [
|
|
505
|
+
{
|
|
506
|
+
artifact: "external_analyzer_results.json",
|
|
507
|
+
role: "primary",
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
artifact: "syntax_resolution_status.json",
|
|
511
|
+
role: "primary",
|
|
512
|
+
},
|
|
513
|
+
],
|
|
170
514
|
},
|
|
171
515
|
{
|
|
172
516
|
id: "semantic_review_executor",
|
|
173
517
|
kind: "host_delegation",
|
|
174
518
|
obligation_ids: ["audit_tasks_completed"],
|
|
519
|
+
produces: [],
|
|
175
520
|
},
|
|
176
521
|
{
|
|
177
522
|
id: "friction_capture_executor",
|
|
178
523
|
kind: "deterministic",
|
|
179
524
|
obligation_ids: ["friction_capture_current"],
|
|
525
|
+
produces: [
|
|
526
|
+
{
|
|
527
|
+
artifact: "friction/run.json",
|
|
528
|
+
role: "side_channel",
|
|
529
|
+
note: "run-scoped friction ledger under the run directory rather than a bundle artifact; it has no DAG dependents",
|
|
530
|
+
},
|
|
531
|
+
],
|
|
180
532
|
},
|
|
181
533
|
];
|
|
182
534
|
// O(1) lookup indexes over the registry, built once at module load. Uniqueness
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executors.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/executors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"executors.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/executors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ArtifactBundle } from "../io/artifacts.js";
|
|
2
|
-
import type { AnalyzerSetting, GraphEdge } from "audit-tools/shared";
|
|
2
|
+
import type { AnalyzerConsentTokenGrant, AnalyzerSetting, GraphEdge } from "audit-tools/shared";
|
|
3
3
|
import type { AnalyzerPlanEntry } from "../extractors/analyzers/types.js";
|
|
4
4
|
import { EXTERNAL_ANALYZER_CANDIDATES } from "audit-tools/shared";
|
|
5
5
|
/**
|
|
@@ -20,8 +20,15 @@ export interface HostInputPauseInputs {
|
|
|
20
20
|
externalAcquisitionEnabled?: boolean;
|
|
21
21
|
/** Item B: recorded per-candidate consent decisions (session config). */
|
|
22
22
|
analyzerConsent?: Record<string, "granted" | "declined">;
|
|
23
|
-
/**
|
|
24
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Item B: a per-run, tool-SCOPED consent grant. Typed as the
|
|
25
|
+
* {@link AnalyzerConsentTokenGrant} shape — never a bare string — so the
|
|
26
|
+
* scoped consent-fold below can ask exactly which candidates the grant names:
|
|
27
|
+
* a candidate outside the grant's `tools` is still owed its offer. A bare
|
|
28
|
+
* string would read as "admits everything", which is precisely the unscoped
|
|
29
|
+
* path this type retires.
|
|
30
|
+
*/
|
|
31
|
+
acquisitionConsentToken?: AnalyzerConsentTokenGrant;
|
|
25
32
|
}
|
|
26
33
|
/**
|
|
27
34
|
* The undecided analyzer-install entries the graph-enrichment step still owes the
|
|
@@ -34,14 +41,16 @@ export interface HostInputPauseInputs {
|
|
|
34
41
|
export declare function graphEnrichmentUnresolvedAnalyzers(bundle: ArtifactBundle, inputs: HostInputPauseInputs): AnalyzerPlanEntry[];
|
|
35
42
|
/**
|
|
36
43
|
* Item B (consent surfacing): the consent-gated analyzer candidates that are
|
|
37
|
-
* APPLICABLE to this repo and have NO recorded decision
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* mechanical-analyzer-layer program
|
|
43
|
-
*
|
|
44
|
-
* recorded decision (declined is never re-offered)
|
|
44
|
+
* APPLICABLE to this repo and have NO recorded decision AND are not admitted by
|
|
45
|
+
* this run's consent grant — the set the operator is still owed a batched offer
|
|
46
|
+
* on. The SINGLE source of the analyzer-consent fold, consumed by BOTH the
|
|
47
|
+
* `next-step` fold (which relays the list as the offer step) and the drain stop
|
|
48
|
+
* predicate (which halts before the acquisition executor would silently skip
|
|
49
|
+
* them — the silent-fail-closed defect the mechanical-analyzer-layer program
|
|
50
|
+
* exists to fix). Nothing is owed when acquisition is off, the candidate has a
|
|
51
|
+
* recorded decision (declined is never re-offered), the setting is `skip`, or
|
|
52
|
+
* THIS RUN's grant names the candidate. A grant that does not name a candidate
|
|
53
|
+
* leaves it owed — scope is honored per candidate, never widened to the run.
|
|
45
54
|
*/
|
|
46
55
|
export declare function pendingAnalyzerConsent(inputs: HostInputPauseInputs): typeof EXTERNAL_ANALYZER_CANDIDATES;
|
|
47
56
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostInputPause.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/hostInputPause.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"hostInputPause.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/hostInputPause.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,yBAAyB,EACzB,eAAe,EACf,SAAS,EACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAU1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,mFAAmF;IACnF,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,uFAAuF;IACvF,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;IACzD;;;;;;;OAOG;IACH,uBAAuB,CAAC,EAAE,yBAAyB,CAAC;CACrD;AAED;;;;;;;GAOG;AACH,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,oBAAoB,GAC3B,iBAAiB,EAAE,CAarB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,oBAAoB,GAC3B,OAAO,4BAA4B,CAoBrC;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,oBAAoB,GAC3B,SAAS,EAAE,CAGb;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,cAAc,EACtB,MAAM,GAAE,oBAAyB,GAChC,OAAO,CAgBT;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EACxC,MAAM,GAAE,oBAAyB,GAChC,OAAO,CAMT"}
|
|
@@ -23,21 +23,24 @@ export function graphEnrichmentUnresolvedAnalyzers(bundle, inputs) {
|
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Item B (consent surfacing): the consent-gated analyzer candidates that are
|
|
26
|
-
* APPLICABLE to this repo and have NO recorded decision
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
* mechanical-analyzer-layer program
|
|
32
|
-
*
|
|
33
|
-
* recorded decision (declined is never re-offered)
|
|
26
|
+
* APPLICABLE to this repo and have NO recorded decision AND are not admitted by
|
|
27
|
+
* this run's consent grant — the set the operator is still owed a batched offer
|
|
28
|
+
* on. The SINGLE source of the analyzer-consent fold, consumed by BOTH the
|
|
29
|
+
* `next-step` fold (which relays the list as the offer step) and the drain stop
|
|
30
|
+
* predicate (which halts before the acquisition executor would silently skip
|
|
31
|
+
* them — the silent-fail-closed defect the mechanical-analyzer-layer program
|
|
32
|
+
* exists to fix). Nothing is owed when acquisition is off, the candidate has a
|
|
33
|
+
* recorded decision (declined is never re-offered), the setting is `skip`, or
|
|
34
|
+
* THIS RUN's grant names the candidate. A grant that does not name a candidate
|
|
35
|
+
* leaves it owed — scope is honored per candidate, never widened to the run.
|
|
34
36
|
*/
|
|
35
37
|
export function pendingAnalyzerConsent(inputs) {
|
|
36
38
|
if (inputs.externalAcquisitionEnabled !== true || !inputs.root)
|
|
37
39
|
return [];
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
const grant = inputs.acquisitionConsentToken;
|
|
41
|
+
const grantedTools = grant && grant.value.trim().length > 0 && Array.isArray(grant.tools)
|
|
42
|
+
? new Set(grant.tools)
|
|
43
|
+
: undefined;
|
|
41
44
|
const root = inputs.root;
|
|
42
45
|
return EXTERNAL_ANALYZER_CANDIDATES.filter((candidate) => {
|
|
43
46
|
if (candidate.defaultRun)
|
|
@@ -46,6 +49,9 @@ export function pendingAnalyzerConsent(inputs) {
|
|
|
46
49
|
return false;
|
|
47
50
|
if (inputs.analyzerConsent?.[candidate.id] !== undefined)
|
|
48
51
|
return false;
|
|
52
|
+
// Scoped: only a grant that names THIS candidate suppresses its offer.
|
|
53
|
+
if (grantedTools?.has(candidate.id))
|
|
54
|
+
return false;
|
|
49
55
|
try {
|
|
50
56
|
return candidate.detect(root);
|
|
51
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostInputPause.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/hostInputPause.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hostInputPause.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/hostInputPause.ts"],"names":[],"mappings":"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"}
|