audit-tools 0.28.7 → 0.28.9
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/audit-code-wrapper-install-hosts.mjs +133 -27
- package/dist/audit/cli/confirmIntentStep.d.ts +1 -0
- package/dist/audit/cli/confirmIntentStep.d.ts.map +1 -1
- package/dist/audit/cli/confirmIntentStep.js +14 -10
- package/dist/audit/cli/confirmIntentStep.js.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.js +4 -3
- package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
- package/dist/audit/cli/dispatch.d.ts +15 -1
- package/dist/audit/cli/dispatch.d.ts.map +1 -1
- package/dist/audit/cli/dispatch.js +54 -19
- package/dist/audit/cli/dispatch.js.map +1 -1
- package/dist/audit/cli/hybridDispatch.d.ts +46 -0
- package/dist/audit/cli/hybridDispatch.d.ts.map +1 -0
- package/dist/audit/cli/hybridDispatch.js +77 -0
- package/dist/audit/cli/hybridDispatch.js.map +1 -0
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +111 -2
- 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 +20 -10
- package/dist/audit/cli/quotaCommand.js.map +1 -1
- package/dist/audit/cli/reviewRun.d.ts +8 -0
- package/dist/audit/cli/reviewRun.d.ts.map +1 -1
- package/dist/audit/cli/reviewRun.js +1 -1
- package/dist/audit/cli/reviewRun.js.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.d.ts +57 -4
- package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.js +137 -10
- package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
- package/dist/audit/cli/scoreAuditCommand.d.ts +16 -0
- package/dist/audit/cli/scoreAuditCommand.d.ts.map +1 -0
- package/dist/audit/cli/scoreAuditCommand.js +82 -0
- package/dist/audit/cli/scoreAuditCommand.js.map +1 -0
- package/dist/audit/cli/submitPacketCommand.d.ts.map +1 -1
- package/dist/audit/cli/submitPacketCommand.js +8 -1
- package/dist/audit/cli/submitPacketCommand.js.map +1 -1
- package/dist/audit/cli.d.ts.map +1 -1
- package/dist/audit/cli.js +5 -1
- package/dist/audit/cli.js.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.d.ts +9 -1
- package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.js +19 -1
- package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.d.ts +2 -0
- package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.js +11 -1
- package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +1 -1
- package/dist/audit/orchestrator/executorRunners.js.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.d.ts +9 -1
- package/dist/audit/orchestrator/intakeExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.js +16 -3
- package/dist/audit/orchestrator/intakeExecutors.js.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointExecutor.js +3 -0
- package/dist/audit/orchestrator/intentCheckpointExecutor.js.map +1 -1
- package/dist/audit/orchestrator/intentInterpreter.d.ts +21 -7
- package/dist/audit/orchestrator/intentInterpreter.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentInterpreter.js +30 -11
- package/dist/audit/orchestrator/intentInterpreter.js.map +1 -1
- package/dist/audit/orchestrator/intentScopeDisposition.d.ts +49 -0
- package/dist/audit/orchestrator/intentScopeDisposition.d.ts.map +1 -0
- package/dist/audit/orchestrator/intentScopeDisposition.js +57 -0
- package/dist/audit/orchestrator/intentScopeDisposition.js.map +1 -0
- package/dist/audit/orchestrator/rollingDispatch.d.ts +9 -0
- package/dist/audit/orchestrator/rollingDispatch.d.ts.map +1 -1
- package/dist/audit/orchestrator/rollingDispatch.js +10 -0
- package/dist/audit/orchestrator/rollingDispatch.js.map +1 -1
- package/dist/audit/orchestrator/scope.d.ts +1 -0
- package/dist/audit/orchestrator/scope.d.ts.map +1 -1
- package/dist/audit/orchestrator/scope.js +2 -7
- package/dist/audit/orchestrator/scope.js.map +1 -1
- package/dist/audit/quota/index.d.ts +5 -0
- package/dist/audit/quota/index.d.ts.map +1 -1
- package/dist/audit/reporting/scoreAudit.d.ts +161 -0
- package/dist/audit/reporting/scoreAudit.d.ts.map +1 -0
- package/dist/audit/reporting/scoreAudit.js +224 -0
- package/dist/audit/reporting/scoreAudit.js.map +1 -0
- package/dist/audit/types/activeDispatch.d.ts +29 -1
- package/dist/audit/types/activeDispatch.d.ts.map +1 -1
- package/dist/audit/types/activeDispatch.js.map +1 -1
- package/dist/audit/types/analyzerCapability.d.ts +6 -6
- package/dist/audit/validation/auditResults.d.ts +13 -0
- package/dist/audit/validation/auditResults.d.ts.map +1 -1
- package/dist/audit/validation/auditResults.js +35 -12
- package/dist/audit/validation/auditResults.js.map +1 -1
- package/dist/remediate/contractPipeline/changeClassification.d.ts +146 -0
- package/dist/remediate/contractPipeline/changeClassification.d.ts.map +1 -0
- package/dist/remediate/contractPipeline/changeClassification.js +398 -0
- package/dist/remediate/contractPipeline/changeClassification.js.map +1 -0
- package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/derive.js +9 -0
- package/dist/remediate/contractPipeline/derive.js.map +1 -1
- package/dist/remediate/intent/intentOrdering.d.ts +51 -0
- package/dist/remediate/intent/intentOrdering.d.ts.map +1 -0
- package/dist/remediate/intent/intentOrdering.js +150 -0
- package/dist/remediate/intent/intentOrdering.js.map +1 -0
- package/dist/remediate/phases/plan.d.ts.map +1 -1
- package/dist/remediate/phases/plan.js +14 -1
- package/dist/remediate/phases/plan.js.map +1 -1
- package/dist/remediate/providers/index.d.ts +32 -0
- package/dist/remediate/providers/index.d.ts.map +1 -1
- package/dist/remediate/providers/index.js +28 -1
- package/dist/remediate/providers/index.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts +15 -1
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +282 -14
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/dispatch.d.ts +56 -1
- package/dist/remediate/steps/dispatch.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch.js +120 -29
- package/dist/remediate/steps/dispatch.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +53 -2
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +253 -81
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/providerNodeDispatch.d.ts +8 -1
- package/dist/remediate/steps/providerNodeDispatch.d.ts.map +1 -1
- package/dist/remediate/steps/providerNodeDispatch.js +7 -2
- package/dist/remediate/steps/providerNodeDispatch.js.map +1 -1
- package/dist/remediate/steps/rollingSession.d.ts +55 -1
- package/dist/remediate/steps/rollingSession.d.ts.map +1 -1
- package/dist/remediate/steps/rollingSession.js +128 -19
- package/dist/remediate/steps/rollingSession.js.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.d.ts +23 -8
- package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.js +43 -38
- package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
- package/dist/shared/dispatch/coordinator.d.ts +170 -0
- package/dist/shared/dispatch/coordinator.d.ts.map +1 -0
- package/dist/shared/dispatch/coordinator.js +177 -0
- package/dist/shared/dispatch/coordinator.js.map +1 -0
- package/dist/shared/dispatch/hybridDispatch.d.ts +74 -0
- package/dist/shared/dispatch/hybridDispatch.d.ts.map +1 -0
- package/dist/shared/dispatch/hybridDispatch.js +54 -0
- package/dist/shared/dispatch/hybridDispatch.js.map +1 -0
- package/dist/shared/dispatch/settledPools.d.ts +21 -0
- package/dist/shared/dispatch/settledPools.d.ts.map +1 -0
- package/dist/shared/dispatch/settledPools.js +34 -0
- package/dist/shared/dispatch/settledPools.js.map +1 -0
- package/dist/shared/index.d.ts +16 -6
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +15 -3
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/intent/clauseInterpreter.d.ts +19 -0
- package/dist/shared/intent/clauseInterpreter.d.ts.map +1 -1
- package/dist/shared/intent/clauseInterpreter.js +19 -0
- package/dist/shared/intent/clauseInterpreter.js.map +1 -1
- package/dist/shared/io/json.d.ts +25 -0
- package/dist/shared/io/json.d.ts.map +1 -1
- package/dist/shared/io/json.js +67 -0
- package/dist/shared/io/json.js.map +1 -1
- package/dist/shared/providers/opencodeProvider.d.ts.map +1 -1
- package/dist/shared/providers/opencodeProvider.js +12 -0
- package/dist/shared/providers/opencodeProvider.js.map +1 -1
- package/dist/shared/providers/providerConfirmation.d.ts.map +1 -1
- package/dist/shared/providers/providerConfirmation.js +9 -1
- package/dist/shared/providers/providerConfirmation.js.map +1 -1
- package/dist/shared/providers/providerFactory.d.ts +1 -0
- package/dist/shared/providers/providerFactory.d.ts.map +1 -1
- package/dist/shared/providers/providerFactory.js +10 -8
- package/dist/shared/providers/providerFactory.js.map +1 -1
- package/dist/shared/providers/sharedProviderConfirmation.d.ts +134 -0
- package/dist/shared/providers/sharedProviderConfirmation.d.ts.map +1 -0
- package/dist/shared/providers/sharedProviderConfirmation.js +244 -0
- package/dist/shared/providers/sharedProviderConfirmation.js.map +1 -0
- package/dist/shared/quota/apiPool.d.ts +67 -0
- package/dist/shared/quota/apiPool.d.ts.map +1 -0
- package/dist/shared/quota/apiPool.js +139 -0
- package/dist/shared/quota/apiPool.js.map +1 -0
- package/dist/shared/quota/capacity.d.ts +29 -1
- package/dist/shared/quota/capacity.d.ts.map +1 -1
- package/dist/shared/quota/capacity.js +5 -0
- package/dist/shared/quota/capacity.js.map +1 -1
- package/dist/shared/quota/claimRegistry.d.ts +64 -0
- package/dist/shared/quota/claimRegistry.d.ts.map +1 -0
- package/dist/shared/quota/claimRegistry.js +157 -0
- package/dist/shared/quota/claimRegistry.js.map +1 -0
- package/dist/shared/quota/compositeQuotaSource.d.ts +10 -1
- package/dist/shared/quota/compositeQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/compositeQuotaSource.js +34 -6
- package/dist/shared/quota/compositeQuotaSource.js.map +1 -1
- package/dist/shared/quota/httpQuotaSource.d.ts +9 -1
- package/dist/shared/quota/httpQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/httpQuotaSource.js +33 -8
- package/dist/shared/quota/httpQuotaSource.js.map +1 -1
- package/dist/shared/quota/learnedQuotaSource.d.ts +7 -1
- package/dist/shared/quota/learnedQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/learnedQuotaSource.js +18 -7
- package/dist/shared/quota/learnedQuotaSource.js.map +1 -1
- package/dist/shared/quota/quotaSource.d.ts +41 -0
- package/dist/shared/quota/quotaSource.d.ts.map +1 -1
- package/dist/shared/quota/quotaSource.js +19 -0
- package/dist/shared/quota/quotaSource.js.map +1 -1
- package/dist/shared/types/contractPipeline/obligations.d.ts +42 -0
- package/dist/shared/types/contractPipeline/obligations.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline.d.ts +1 -1
- package/dist/shared/types/contractPipeline.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline.js.map +1 -1
- package/dist/shared/types/intentCheckpoint.d.ts +14 -0
- package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
- package/dist/shared/types/intentCheckpoint.js +10 -0
- package/dist/shared/types/intentCheckpoint.js.map +1 -1
- package/dist/shared/types/sessionConfig.d.ts +60 -0
- package/dist/shared/types/sessionConfig.d.ts.map +1 -1
- package/dist/shared/types/sessionConfig.js +13 -0
- package/dist/shared/types/sessionConfig.js.map +1 -1
- package/package.json +3 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { QuotaSource, QuotaUsageSnapshot } from "./quotaSource.js";
|
|
1
|
+
import type { QuotaProbeResult, QuotaSource, QuotaUsageSnapshot } from "./quotaSource.js";
|
|
2
2
|
/**
|
|
3
3
|
* Shared scaffolding for PROACTIVE per-provider quota sources (Claude, Codex,
|
|
4
4
|
* Copilot, Antigravity, OpenCode-broker). Each subclass only supplies the
|
|
@@ -62,6 +62,14 @@ export declare abstract class BaseHttpQuotaSource implements QuotaSource {
|
|
|
62
62
|
*/
|
|
63
63
|
protected abstract fetchSnapshot(provider: string, model: string | null, nowMs: number): Promise<QuotaUsageSnapshot | null>;
|
|
64
64
|
queryCurrentUsage(providerModelKey: string): Promise<QuotaUsageSnapshot | null>;
|
|
65
|
+
/**
|
|
66
|
+
* Probe with an explicit status (see {@link QuotaProbeResult}). A non-matching
|
|
67
|
+
* provider key or a network-skipped probe is `not_applicable`; a real query
|
|
68
|
+
* that yields no snapshot (missing creds, 401/5xx, bad payload) is `degraded`
|
|
69
|
+
* — the silent-degrade signal a bare `null` from `queryCurrentUsage` hides.
|
|
70
|
+
* Both paths return through here so the cache and the status stay consistent.
|
|
71
|
+
*/
|
|
72
|
+
probeUsage(providerModelKey: string): Promise<QuotaProbeResult>;
|
|
65
73
|
/** Context for the reusable `fetchXxxUsage` helpers. */
|
|
66
74
|
protected fetchContext(): UsageFetchContext;
|
|
67
75
|
protected shouldSkipNetwork(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpQuotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/httpQuotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"httpQuotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/httpQuotaSource.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/** A handled provider with a snapshot is `ok`; attempted-but-empty is `degraded`. */
|
|
2
|
+
function classifyProbe(cached) {
|
|
3
|
+
if (cached.snapshot)
|
|
4
|
+
return "ok";
|
|
5
|
+
return cached.attempted ? "degraded" : "not_applicable";
|
|
6
|
+
}
|
|
1
7
|
const DEFAULT_CACHE_TTL_MS = 45_000;
|
|
2
8
|
export class BaseHttpQuotaSource {
|
|
3
9
|
fetchImpl;
|
|
@@ -14,19 +20,38 @@ export class BaseHttpQuotaSource {
|
|
|
14
20
|
this.userAgent = options.userAgent ?? defaultUserAgent;
|
|
15
21
|
}
|
|
16
22
|
async queryCurrentUsage(providerModelKey) {
|
|
23
|
+
return (await this.probeUsage(providerModelKey)).snapshot;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Probe with an explicit status (see {@link QuotaProbeResult}). A non-matching
|
|
27
|
+
* provider key or a network-skipped probe is `not_applicable`; a real query
|
|
28
|
+
* that yields no snapshot (missing creds, 401/5xx, bad payload) is `degraded`
|
|
29
|
+
* — the silent-degrade signal a bare `null` from `queryCurrentUsage` hides.
|
|
30
|
+
* Both paths return through here so the cache and the status stay consistent.
|
|
31
|
+
*/
|
|
32
|
+
async probeUsage(providerModelKey) {
|
|
17
33
|
const { provider, model } = parseProviderModelKey(providerModelKey);
|
|
18
|
-
|
|
19
|
-
|
|
34
|
+
// Gated out for this provider — no I/O, and no signal was ever expected.
|
|
35
|
+
if (!this.handlesProvider(provider)) {
|
|
36
|
+
return { snapshot: null, status: "not_applicable" };
|
|
37
|
+
}
|
|
20
38
|
const nowMs = this.now();
|
|
21
39
|
const cached = this.cache.get(providerModelKey);
|
|
22
40
|
if (cached && nowMs - cached.fetchedAtMs < this.cacheTtlMs) {
|
|
23
|
-
return cached.snapshot;
|
|
41
|
+
return { snapshot: cached.snapshot, status: classifyProbe(cached) };
|
|
42
|
+
}
|
|
43
|
+
// The live probe was intentionally skipped (hermeticity / disabled) — absent
|
|
44
|
+
// by design, not a degrade.
|
|
45
|
+
if (this.shouldSkipNetwork()) {
|
|
46
|
+
const result = { fetchedAtMs: nowMs, snapshot: null, attempted: false };
|
|
47
|
+
this.cache.set(providerModelKey, result);
|
|
48
|
+
return { snapshot: null, status: "not_applicable" };
|
|
24
49
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
this.cache.set(providerModelKey,
|
|
29
|
-
return snapshot;
|
|
50
|
+
// A real query for a handled provider: a null result is a silent degrade.
|
|
51
|
+
const snapshot = await this.fetchSnapshot(provider, model, nowMs);
|
|
52
|
+
const result = { fetchedAtMs: nowMs, snapshot, attempted: true };
|
|
53
|
+
this.cache.set(providerModelKey, result);
|
|
54
|
+
return { snapshot, status: classifyProbe(result) };
|
|
30
55
|
}
|
|
31
56
|
/** Context for the reusable `fetchXxxUsage` helpers. */
|
|
32
57
|
fetchContext() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpQuotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/httpQuotaSource.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httpQuotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/httpQuotaSource.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import type { QuotaSource, QuotaUsageSnapshot } from "./quotaSource.js";
|
|
1
|
+
import type { QuotaProbeResult, QuotaSource, QuotaUsageSnapshot } from "./quotaSource.js";
|
|
2
2
|
export declare class LearnedQuotaSource implements QuotaSource {
|
|
3
3
|
readonly name = "learned";
|
|
4
4
|
private halfLifeHours;
|
|
5
5
|
constructor(halfLifeHours?: number);
|
|
6
6
|
queryCurrentUsage(providerModelKey: string): Promise<QuotaUsageSnapshot | null>;
|
|
7
|
+
/**
|
|
8
|
+
* No learned entry yet is `not_applicable`, never `degraded`: the learned
|
|
9
|
+
* source is the reactive fallback, so the absence of history is the normal
|
|
10
|
+
* cold-start state, not a lost signal.
|
|
11
|
+
*/
|
|
12
|
+
probeUsage(providerModelKey: string): Promise<QuotaProbeResult>;
|
|
7
13
|
}
|
|
8
14
|
//# sourceMappingURL=learnedQuotaSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"learnedQuotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/learnedQuotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"learnedQuotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/learnedQuotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAG1F,qBAAa,kBAAmB,YAAW,WAAW;IACpD,QAAQ,CAAC,IAAI,aAAa;IAE1B,OAAO,CAAC,aAAa,CAAS;gBAElB,aAAa,SAAK;IAIxB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAIrF;;;;OAIG;IACG,UAAU,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAsBtE"}
|
|
@@ -6,20 +6,31 @@ export class LearnedQuotaSource {
|
|
|
6
6
|
this.halfLifeHours = halfLifeHours;
|
|
7
7
|
}
|
|
8
8
|
async queryCurrentUsage(providerModelKey) {
|
|
9
|
+
return (await this.probeUsage(providerModelKey)).snapshot;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* No learned entry yet is `not_applicable`, never `degraded`: the learned
|
|
13
|
+
* source is the reactive fallback, so the absence of history is the normal
|
|
14
|
+
* cold-start state, not a lost signal.
|
|
15
|
+
*/
|
|
16
|
+
async probeUsage(providerModelKey) {
|
|
9
17
|
const state = await readQuotaState();
|
|
10
18
|
const entry = state.entries[providerModelKey];
|
|
11
19
|
if (!entry)
|
|
12
|
-
return null;
|
|
20
|
+
return { snapshot: null, status: "not_applicable" };
|
|
13
21
|
const maxSafe = computeMaxSafeConcurrency(entry, this.halfLifeHours);
|
|
14
22
|
const isInCooldown = entry.cooldown_until != null &&
|
|
15
23
|
new Date(entry.cooldown_until).getTime() > Date.now();
|
|
16
24
|
return {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
25
|
+
snapshot: {
|
|
26
|
+
remaining_pct: isInCooldown ? 0 : null,
|
|
27
|
+
reset_at: isInCooldown ? entry.cooldown_until : null,
|
|
28
|
+
requests_remaining: maxSafe,
|
|
29
|
+
tokens_remaining: null,
|
|
30
|
+
captured_at: entry.updated_at,
|
|
31
|
+
source: "learned",
|
|
32
|
+
},
|
|
33
|
+
status: "ok",
|
|
23
34
|
};
|
|
24
35
|
}
|
|
25
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"learnedQuotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/learnedQuotaSource.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,SAAS,CAAC;IAElB,aAAa,CAAS;IAE9B,YAAY,aAAa,GAAG,EAAE;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,gBAAwB;QAC9C,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"learnedQuotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/learnedQuotaSource.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,SAAS,CAAC;IAElB,aAAa,CAAS;IAE9B,YAAY,aAAa,GAAG,EAAE;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,gBAAwB;QAC9C,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,gBAAwB;QACvC,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;QAEhE,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACrE,MAAM,YAAY,GAChB,KAAK,CAAC,cAAc,IAAI,IAAI;YAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAExD,OAAO;YACL,QAAQ,EAAE;gBACR,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBACtC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;gBACpD,kBAAkB,EAAE,OAAO;gBAC3B,gBAAgB,EAAE,IAAI;gBACtB,WAAW,EAAE,KAAK,CAAC,UAAU;gBAC7B,MAAM,EAAE,SAAS;aAClB;YACD,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -22,8 +22,49 @@ export declare const QuotaUsageSnapshotSchema: z.ZodObject<{
|
|
|
22
22
|
source: string;
|
|
23
23
|
}>;
|
|
24
24
|
export type QuotaUsageSnapshot = z.infer<typeof QuotaUsageSnapshotSchema>;
|
|
25
|
+
/**
|
|
26
|
+
* Outcome of probing a quota source for one provider/model key, disambiguating
|
|
27
|
+
* the two cases a bare `null` snapshot conflates:
|
|
28
|
+
*
|
|
29
|
+
* - `ok` — a live snapshot was mapped (`snapshot` is non-null).
|
|
30
|
+
* - `degraded` — the source HANDLES this provider and was actually queried,
|
|
31
|
+
* but produced no snapshot (missing/expired creds, 401/5xx,
|
|
32
|
+
* network error, or an unmappable payload). The signal that was
|
|
33
|
+
* *expected* was silently lost — the operator-visible failure
|
|
34
|
+
* mode that `queryCurrentUsage`'s `null` hides.
|
|
35
|
+
* - `not_applicable` — the source does not answer for this provider (gated out
|
|
36
|
+
* with no I/O), or the live probe was intentionally skipped
|
|
37
|
+
* (hermeticity guard / proactive-quota disabled). No signal was
|
|
38
|
+
* ever expected, so its absence is not a degrade.
|
|
39
|
+
*
|
|
40
|
+
* This is the contract behind the `CapacityPool.quotaSignalDegraded` marker: a
|
|
41
|
+
* pool whose probe is `degraded` is dispatching blind where it expected a live
|
|
42
|
+
* quota reading, and that fact is attached to the pool rather than swallowed.
|
|
43
|
+
*/
|
|
44
|
+
export type QuotaProbeStatus = "ok" | "degraded" | "not_applicable";
|
|
45
|
+
export interface QuotaProbeResult {
|
|
46
|
+
snapshot: QuotaUsageSnapshot | null;
|
|
47
|
+
status: QuotaProbeStatus;
|
|
48
|
+
}
|
|
25
49
|
export interface QuotaSource {
|
|
26
50
|
readonly name: string;
|
|
27
51
|
queryCurrentUsage(providerModelKey: string): Promise<QuotaUsageSnapshot | null>;
|
|
52
|
+
/**
|
|
53
|
+
* Like {@link queryCurrentUsage}, but reports WHY the snapshot is null: a
|
|
54
|
+
* source that was queried and silently degraded (`degraded`) vs. one that
|
|
55
|
+
* never applied (`not_applicable`). Optional on the interface so plain
|
|
56
|
+
* `{ name, queryCurrentUsage }` stubs remain valid; {@link probeQuotaSource}
|
|
57
|
+
* derives a best-effort result for sources that don't implement it.
|
|
58
|
+
*/
|
|
59
|
+
probeUsage?(providerModelKey: string): Promise<QuotaProbeResult>;
|
|
28
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Probe a quota source, using its native {@link QuotaSource.probeUsage} when it
|
|
63
|
+
* has one and otherwise deriving a conservative result from
|
|
64
|
+
* {@link QuotaSource.queryCurrentUsage}: a snapshot is `ok`, a thrown error is
|
|
65
|
+
* `degraded` (it was attempted and failed), and a plain `null` is reported as
|
|
66
|
+
* `not_applicable` (a source without `probeUsage` cannot distinguish a silent
|
|
67
|
+
* degrade from a non-match, so it must not over-report a degrade).
|
|
68
|
+
*/
|
|
69
|
+
export declare function probeQuotaSource(source: QuotaSource, providerModelKey: string): Promise<QuotaProbeResult>;
|
|
29
70
|
//# sourceMappingURL=quotaSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;EAS1B,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"quotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;EAS1B,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAChF;;;;;;OAMG;IACH,UAAU,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAClE;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAQ3B"}
|
|
@@ -9,4 +9,23 @@ export const QuotaUsageSnapshotSchema = z
|
|
|
9
9
|
source: z.string(),
|
|
10
10
|
})
|
|
11
11
|
.strict();
|
|
12
|
+
/**
|
|
13
|
+
* Probe a quota source, using its native {@link QuotaSource.probeUsage} when it
|
|
14
|
+
* has one and otherwise deriving a conservative result from
|
|
15
|
+
* {@link QuotaSource.queryCurrentUsage}: a snapshot is `ok`, a thrown error is
|
|
16
|
+
* `degraded` (it was attempted and failed), and a plain `null` is reported as
|
|
17
|
+
* `not_applicable` (a source without `probeUsage` cannot distinguish a silent
|
|
18
|
+
* degrade from a non-match, so it must not over-report a degrade).
|
|
19
|
+
*/
|
|
20
|
+
export async function probeQuotaSource(source, providerModelKey) {
|
|
21
|
+
if (source.probeUsage)
|
|
22
|
+
return source.probeUsage(providerModelKey);
|
|
23
|
+
try {
|
|
24
|
+
const snapshot = await source.queryCurrentUsage(providerModelKey);
|
|
25
|
+
return { snapshot, status: snapshot ? "ok" : "not_applicable" };
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return { snapshot: null, status: "degraded" };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
12
31
|
//# sourceMappingURL=quotaSource.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"quotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC;KACD,MAAM,EAAE,CAAC;AA0CZ;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAmB,EACnB,gBAAwB;IAExB,IAAI,MAAM,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAChD,CAAC;AACH,CAAC"}
|
|
@@ -12,6 +12,39 @@ export declare const CONTRACT_PIPELINE_TEST_VALIDATOR_PLAN_VERSION: "remediate-c
|
|
|
12
12
|
export declare const CONTRACT_PIPELINE_CONTRACT_ASSESSMENT_REPORT_VERSION: "remediate-code-contract-pipeline/contract-assessment-report/v1alpha1";
|
|
13
13
|
export declare const CONTRACT_PIPELINE_COUNTEREXAMPLE_VERSION: "remediate-code-contract-pipeline/counterexample/v1alpha1";
|
|
14
14
|
export declare const CONTRACT_PIPELINE_JUDGE_REPORT_VERSION: "remediate-code-contract-pipeline/judge-report/v1alpha1";
|
|
15
|
+
/**
|
|
16
|
+
* Change-vs-addition classification for one obligation (DC-5 / CE-013).
|
|
17
|
+
*
|
|
18
|
+
* Whether an obligation *changes existing behavior* or *adds new behavior*
|
|
19
|
+
* decides its test burden: a behavior CHANGE must be covered by a PAIRED
|
|
20
|
+
* positive+negative test spec whose negative is scoped to the changed
|
|
21
|
+
* symbol/file (so a regression is caught), whereas a pure ADDITION has no prior
|
|
22
|
+
* behavior to regress and is never forced to pair.
|
|
23
|
+
*
|
|
24
|
+
* The verdict is reached deterministically FIRST — `touches_existing_symbol`
|
|
25
|
+
* means the obligation references a symbol/file that already exists in the
|
|
26
|
+
* baseline corpus — and an LLM may then CONFIRM or OVERRIDE it. The method is
|
|
27
|
+
* recorded on `determined_by` so the classification is never silent (the
|
|
28
|
+
* "deterministic by default; LLM only for judgment — bounded and recorded"
|
|
29
|
+
* invariant).
|
|
30
|
+
*/
|
|
31
|
+
export interface ObligationChangeClassification {
|
|
32
|
+
/** A `change` touches prior behavior (→ paired test); an `addition` does not. */
|
|
33
|
+
change_kind: "change" | "addition";
|
|
34
|
+
/**
|
|
35
|
+
* Existing symbol/file tokens the change touches. These are the scope anchors
|
|
36
|
+
* a paired negative assertion must name — an unscoped, repo-wide negative
|
|
37
|
+
* (CE-006) is rejected because it matches none of them. Empty for an addition.
|
|
38
|
+
*/
|
|
39
|
+
touched_symbols: string[];
|
|
40
|
+
/**
|
|
41
|
+
* How the verdict was reached. The deterministic heuristic runs first; an LLM
|
|
42
|
+
* confirmation/override (when present) is recorded here, never discarded.
|
|
43
|
+
*/
|
|
44
|
+
determined_by: "touches_existing_symbol" | "no_existing_symbol" | "llm_confirmed" | "llm_override";
|
|
45
|
+
/** Recorded rationale when an LLM confirmed or overrode the deterministic call. */
|
|
46
|
+
rationale?: string;
|
|
47
|
+
}
|
|
15
48
|
/** One implementation obligation derived from the design. */
|
|
16
49
|
export interface ObligationEntry {
|
|
17
50
|
id: string;
|
|
@@ -25,6 +58,15 @@ export interface ObligationEntry {
|
|
|
25
58
|
priority?: number;
|
|
26
59
|
/** Traceability: where this obligation originated. */
|
|
27
60
|
source?: "design_spec" | "critique" | "counterexample" | "manual";
|
|
61
|
+
/**
|
|
62
|
+
* DC-5: change-vs-addition classification. Present on testable
|
|
63
|
+
* (invariant/behavioral) obligations the deriver classified; absent on
|
|
64
|
+
* structural obligations (no test burden) and on obligations from sources
|
|
65
|
+
* that predate the classifier. The paired-test gate treats an *unclassified*
|
|
66
|
+
* testable obligation as a CHANGE (fail-closed): pairing is only relaxed when
|
|
67
|
+
* an obligation is explicitly classified as an addition.
|
|
68
|
+
*/
|
|
69
|
+
change_classification?: ObligationChangeClassification;
|
|
28
70
|
}
|
|
29
71
|
export interface ObligationLedger {
|
|
30
72
|
contract_version: typeof CONTRACT_PIPELINE_OBLIGATION_LEDGER_VERSION;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"obligations.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/contractPipeline/obligations.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,eAAO,MAAM,2CAA2C,EACtD,6DAAsE,CAAC;AAEzE,eAAO,MAAM,6CAA6C,EACxD,+DAAwE,CAAC;AAE3E,eAAO,MAAM,oDAAoD,EAC/D,sEAA+E,CAAC;AAElF,eAAO,MAAM,wCAAwC,EACnD,0DAAmE,CAAC;AAEtE,eAAO,MAAM,sCAAsC,EACjD,wDAAiE,CAAC;AAIpE,6DAA6D;AAC7D,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,MAAM,CAAC;IACzD,6DAA6D;IAC7D,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,yCAAyC;IACzC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,MAAM,CAAC,EAAE,aAAa,GAAG,UAAU,GAAG,gBAAgB,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"obligations.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/contractPipeline/obligations.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ export type { GoalSpec, ContextBundleEntry, ContextBundle } from "./contractPipe
|
|
|
28
28
|
export { CONTRACT_PIPELINE_DESIGN_SPEC_VERSION, CONTRACT_PIPELINE_CONCEPTUAL_DESIGN_CRITIQUE_VERSION, } from "./contractPipeline/design.js";
|
|
29
29
|
export type { DesignSpecInvariant, DesignSpecModule, DesignSpecSideEffect, DesignSpecExternalDependency, DesignSpecTrustBoundary, DesignSpec, DesignCritiqueItem, ConceptualDesignCritique, } from "./contractPipeline/design.js";
|
|
30
30
|
export { CONTRACT_PIPELINE_OBLIGATION_LEDGER_VERSION, CONTRACT_PIPELINE_TEST_VALIDATOR_PLAN_VERSION, CONTRACT_PIPELINE_CONTRACT_ASSESSMENT_REPORT_VERSION, CONTRACT_PIPELINE_COUNTEREXAMPLE_VERSION, CONTRACT_PIPELINE_JUDGE_REPORT_VERSION, } from "./contractPipeline/obligations.js";
|
|
31
|
-
export type { ObligationEntry, ObligationLedger, TestSpec, TestValidatorPlan, ContractAssessmentFinding, ContractAssessmentReport, Counterexample, CounterexampleReport, CounterexampleClassification, JudgedCounterexample, JudgeRepairTarget, JudgeRepairDirective, JudgeReport, } from "./contractPipeline/obligations.js";
|
|
31
|
+
export type { ObligationChangeClassification, ObligationEntry, ObligationLedger, TestSpec, TestValidatorPlan, ContractAssessmentFinding, ContractAssessmentReport, Counterexample, CounterexampleReport, CounterexampleClassification, JudgedCounterexample, JudgeRepairTarget, JudgeRepairDirective, JudgeReport, } from "./contractPipeline/obligations.js";
|
|
32
32
|
export { CONTRACT_PIPELINE_IMPLEMENTATION_DAG_VERSION } from "./contractPipeline/implementation.js";
|
|
33
33
|
export type { ImplementationDAGNode, ImplementationDAGEdge, ImplementationDAG, } from "./contractPipeline/implementation.js";
|
|
34
34
|
export { CONTRACT_PIPELINE_VERIFICATION_REPORT_VERSION, CONTRACT_PIPELINE_SEAM_NEGOTIATION_VERSION, } from "./contractPipeline/verification.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contractPipeline.d.ts","sourceRoot":"","sources":["../../../src/shared/types/contractPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE9F,OAAO,EACL,qCAAqC,EACrC,oDAAoD,GACrD,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,4BAA4B,EAC5B,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,2CAA2C,EAC3C,6CAA6C,EAC7C,oDAAoD,EACpD,wCAAwC,EACxC,sCAAsC,GACvC,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,EACd,oBAAoB,EACpB,4BAA4B,EAC5B,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,GACZ,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,4CAA4C,EAAE,MAAM,sCAAsC,CAAC;AACpG,YAAY,EACV,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,6CAA6C,EAC7C,0CAA0C,GAC3C,MAAM,oCAAoC,CAAC;AAC5C,YAAY,EACV,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,qBAAqB,GACtB,MAAM,oCAAoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"contractPipeline.d.ts","sourceRoot":"","sources":["../../../src/shared/types/contractPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE9F,OAAO,EACL,qCAAqC,EACrC,oDAAoD,GACrD,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,4BAA4B,EAC5B,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,2CAA2C,EAC3C,6CAA6C,EAC7C,oDAAoD,EACpD,wCAAwC,EACxC,sCAAsC,GACvC,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,8BAA8B,EAC9B,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,EACd,oBAAoB,EACpB,4BAA4B,EAC5B,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,GACZ,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,4CAA4C,EAAE,MAAM,sCAAsC,CAAC;AACpG,YAAY,EACV,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,6CAA6C,EAC7C,0CAA0C,GAC3C,MAAM,oCAAoC,CAAC;AAC5C,YAAY,EACV,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,qBAAqB,GACtB,MAAM,oCAAoC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contractPipeline.js","sourceRoot":"","sources":["../../../src/shared/types/contractPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,qCAAqC,EACrC,oDAAoD,GACrD,MAAM,8BAA8B,CAAC;AAYtC,OAAO,EACL,2CAA2C,EAC3C,6CAA6C,EAC7C,oDAAoD,EACpD,wCAAwC,EACxC,sCAAsC,GACvC,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"contractPipeline.js","sourceRoot":"","sources":["../../../src/shared/types/contractPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,qCAAqC,EACrC,oDAAoD,GACrD,MAAM,8BAA8B,CAAC;AAYtC,OAAO,EACL,2CAA2C,EAC3C,6CAA6C,EAC7C,oDAAoD,EACpD,wCAAwC,EACxC,sCAAsC,GACvC,MAAM,mCAAmC,CAAC;AAkB3C,OAAO,EAAE,4CAA4C,EAAE,MAAM,sCAAsC,CAAC;AAOpG,OAAO,EACL,6CAA6C,EAC7C,0CAA0C,GAC3C,MAAM,oCAAoC,CAAC"}
|
|
@@ -64,6 +64,16 @@ export declare const IntentCheckpointSchema: z.ZodObject<{
|
|
|
64
64
|
* contract constraints threaded into planning and worker prompts.
|
|
65
65
|
*/
|
|
66
66
|
constraint_clauses: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
67
|
+
/**
|
|
68
|
+
* Stable clause identity — the RESOLUTION KEY (CE-004). An entry
|
|
69
|
+
* resolves the clause whose identity equals this id, regardless of
|
|
70
|
+
* how the question renders. Keyed off the clause text by
|
|
71
|
+
* `clauseIdentity`; optional for back-compat (a legacy entry without
|
|
72
|
+
* it falls back to matching on `checkpoint_question`), but every
|
|
73
|
+
* fresh entry carries it so two distinct clauses that render to the
|
|
74
|
+
* same question are answered individually.
|
|
75
|
+
*/
|
|
76
|
+
clause_id: z.ZodOptional<z.ZodString>;
|
|
67
77
|
/** The original unencodable clause text. */
|
|
68
78
|
text: z.ZodString;
|
|
69
79
|
/** The blocking checkpoint question generated for this clause. */
|
|
@@ -73,10 +83,12 @@ export declare const IntentCheckpointSchema: z.ZodObject<{
|
|
|
73
83
|
}, "strict", z.ZodTypeAny, {
|
|
74
84
|
text: string;
|
|
75
85
|
checkpoint_question: string;
|
|
86
|
+
clause_id?: string | undefined;
|
|
76
87
|
host_answer?: string | undefined;
|
|
77
88
|
}, {
|
|
78
89
|
text: string;
|
|
79
90
|
checkpoint_question: string;
|
|
91
|
+
clause_id?: string | undefined;
|
|
80
92
|
host_answer?: string | undefined;
|
|
81
93
|
}>, "many">>;
|
|
82
94
|
/**
|
|
@@ -156,6 +168,7 @@ export declare const IntentCheckpointSchema: z.ZodObject<{
|
|
|
156
168
|
constraint_clauses?: {
|
|
157
169
|
text: string;
|
|
158
170
|
checkpoint_question: string;
|
|
171
|
+
clause_id?: string | undefined;
|
|
159
172
|
host_answer?: string | undefined;
|
|
160
173
|
}[] | undefined;
|
|
161
174
|
disposition_overrides?: {
|
|
@@ -192,6 +205,7 @@ export declare const IntentCheckpointSchema: z.ZodObject<{
|
|
|
192
205
|
constraint_clauses?: {
|
|
193
206
|
text: string;
|
|
194
207
|
checkpoint_question: string;
|
|
208
|
+
clause_id?: string | undefined;
|
|
195
209
|
host_answer?: string | undefined;
|
|
196
210
|
}[] | undefined;
|
|
197
211
|
disposition_overrides?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intentCheckpoint.d.ts","sourceRoot":"","sources":["../../../src/shared/types/intentCheckpoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB;;;IAI/B;;;;OAIG;;IAEH,yDAAyD;;IAEzD,wEAAwE;;IAExE;;;;OAIG;;IAEH,qEAAqE;;;;;;;;;;;IAIrE,gDAAgD;;IAEhD,gEAAgE;;;;;;;;;;;;;;;;;IAUhE;;;;;;OAMG;;QAKK,4CAA4C;;QAE5C,kEAAkE;;QAElE,kEAAkE
|
|
1
|
+
{"version":3,"file":"intentCheckpoint.d.ts","sourceRoot":"","sources":["../../../src/shared/types/intentCheckpoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB;;;IAI/B;;;;OAIG;;IAEH,yDAAyD;;IAEzD,wEAAwE;;IAExE;;;;OAIG;;IAEH,qEAAqE;;;;;;;;;;;IAIrE,gDAAgD;;IAEhD,gEAAgE;;;;;;;;;;;;;;;;;IAUhE;;;;;;OAMG;;QAKK;;;;;;;;WAQG;;QAEH,4CAA4C;;QAE5C,kEAAkE;;QAElE,kEAAkE;;;;;;;;;;;;;IAM1E;;;;;OAKG;;;;;;;;;;;;;;IAYH;;;;OAIG;;;;;;;;;;;IAQH;;;;;;;;;;;OAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASI,CAAC;AACZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
|
|
@@ -54,6 +54,16 @@ export const IntentCheckpointSchema = z
|
|
|
54
54
|
constraint_clauses: z
|
|
55
55
|
.array(z
|
|
56
56
|
.object({
|
|
57
|
+
/**
|
|
58
|
+
* Stable clause identity — the RESOLUTION KEY (CE-004). An entry
|
|
59
|
+
* resolves the clause whose identity equals this id, regardless of
|
|
60
|
+
* how the question renders. Keyed off the clause text by
|
|
61
|
+
* `clauseIdentity`; optional for back-compat (a legacy entry without
|
|
62
|
+
* it falls back to matching on `checkpoint_question`), but every
|
|
63
|
+
* fresh entry carries it so two distinct clauses that render to the
|
|
64
|
+
* same question are answered individually.
|
|
65
|
+
*/
|
|
66
|
+
clause_id: z.string().optional(),
|
|
57
67
|
/** The original unencodable clause text. */
|
|
58
68
|
text: z.string(),
|
|
59
69
|
/** The blocking checkpoint question generated for this clause. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intentCheckpoint.js","sourceRoot":"","sources":["../../../src/shared/types/intentCheckpoint.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"intentCheckpoint.js","sourceRoot":"","sources":["../../../src/shared/types/intentCheckpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -97,6 +97,57 @@ export declare const PROVIDER_SECTION_KEYS: {
|
|
|
97
97
|
readonly "vscode-task": "vscode_task";
|
|
98
98
|
readonly antigravity: "antigravity";
|
|
99
99
|
};
|
|
100
|
+
/**
|
|
101
|
+
* The non-IDE backends a {@link DispatchableSource} can run. Excludes the
|
|
102
|
+
* conversation host (`claude-code`) and the IDE-bound providers (`vscode-task` /
|
|
103
|
+
* `antigravity`), which are driven through their host/IDE, not as a generic
|
|
104
|
+
* dispatchable source with an endpoint + parameters.
|
|
105
|
+
*/
|
|
106
|
+
export declare const DISPATCHABLE_SOURCE_PROVIDERS: readonly ["openai-compatible", "codex", "opencode", "local-subprocess", "subprocess-template"];
|
|
107
|
+
export type DispatchableSourceProvider = (typeof DISPATCHABLE_SOURCE_PROVIDERS)[number];
|
|
108
|
+
/**
|
|
109
|
+
* A generic dispatchable backend source — the uniform shape the dispatch engine
|
|
110
|
+
* spills work onto, applicable to ANY non-IDE source (an OpenAI-compatible API like
|
|
111
|
+
* NIM / vLLM / LM Studio, a headless CLI like codex / opencode, a subprocess
|
|
112
|
+
* template, …). A source is its `{provider, endpoint, parameters, quota}`, so the
|
|
113
|
+
* operator can configure MANY of them (two NIM endpoints, a local vLLM + a hosted
|
|
114
|
+
* model, a CLI pool) and each becomes its own CapacityPool with its own rate limit.
|
|
115
|
+
*
|
|
116
|
+
* `endpoint` + `parameters` are interpreted per provider: for `openai-compatible`
|
|
117
|
+
* the endpoint is the API `base_url` and `parameters` carries `temperature` /
|
|
118
|
+
* `headers` / `max_output_tokens` / …; for a CLI (`codex` / `opencode` /
|
|
119
|
+
* `local-subprocess`) the endpoint is the launcher command and `parameters` carries
|
|
120
|
+
* `extra_args` / `sandbox_mode` / `command_template` / …. The bridge to each
|
|
121
|
+
* provider's concrete config block lives in `sourceProviderConfig` (shared).
|
|
122
|
+
*/
|
|
123
|
+
export interface DispatchableSource {
|
|
124
|
+
/**
|
|
125
|
+
* Stable id for this source — the CapacityPool id + the key learned quota is
|
|
126
|
+
* recorded under. Defaults to `${provider}:${model ?? endpoint}` when omitted, so
|
|
127
|
+
* two sources of the same provider stay distinct as long as their model/endpoint
|
|
128
|
+
* differ (give them explicit ids otherwise).
|
|
129
|
+
*/
|
|
130
|
+
id?: string;
|
|
131
|
+
/** The non-IDE backend that runs this source. */
|
|
132
|
+
provider: DispatchableSourceProvider;
|
|
133
|
+
/** API base URL (`openai-compatible`) or launcher command (CLI providers). */
|
|
134
|
+
endpoint?: string;
|
|
135
|
+
/** Model id, where the backend takes one. Never defaulted (no hardcoded model identity). */
|
|
136
|
+
model?: string;
|
|
137
|
+
/** Env var holding the API key (API sources). Preferred over `api_key`. */
|
|
138
|
+
api_key_env?: string;
|
|
139
|
+
/** Inline API key (discouraged — prefer `api_key_env`). */
|
|
140
|
+
api_key?: string;
|
|
141
|
+
/**
|
|
142
|
+
* Backend-specific extra parameters, merged into the provider's config block:
|
|
143
|
+
* `temperature` / `headers` / `max_output_tokens` / `response_format_json` /
|
|
144
|
+
* `include_referenced_files` (openai-compatible); `extra_args` / `sandbox_mode`
|
|
145
|
+
* (codex); `extra_args` (opencode); `command_template` / `env` (subprocess).
|
|
146
|
+
*/
|
|
147
|
+
parameters?: Record<string, unknown>;
|
|
148
|
+
/** Per-source quota / rate-limit (rpm, tpm, context/output tokens). */
|
|
149
|
+
quota?: QuotaModelLimits;
|
|
150
|
+
}
|
|
100
151
|
export interface BlockQuotaConfig {
|
|
101
152
|
context_tokens?: number;
|
|
102
153
|
reserved_output_tokens?: number;
|
|
@@ -274,6 +325,15 @@ export interface SessionConfig {
|
|
|
274
325
|
openai_compatible?: OpenAiCompatibleConfig;
|
|
275
326
|
vscode_task?: VSCodeTaskConfig;
|
|
276
327
|
antigravity?: AntigravityConfig;
|
|
328
|
+
/**
|
|
329
|
+
* Additional dispatchable backend sources the engine spills onto, beyond the
|
|
330
|
+
* primary `provider`. Each is a generic `{provider, endpoint, parameters, quota}`
|
|
331
|
+
* (see {@link DispatchableSource}) and becomes its own CapacityPool — so any
|
|
332
|
+
* non-IDE source (multiple NIM/vLLM endpoints, a CLI pool, …) is dispatchable
|
|
333
|
+
* uniformly. A legacy `openai_compatible` block (when it isn't the primary
|
|
334
|
+
* provider) is folded in as one implicit source for back-compat.
|
|
335
|
+
*/
|
|
336
|
+
sources?: DispatchableSource[];
|
|
277
337
|
agent_task_batch_size?: number;
|
|
278
338
|
parallel_workers?: number;
|
|
279
339
|
block_quota?: BlockQuotaConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionConfig.d.ts","sourceRoot":"","sources":["../../../src/shared/types/sessionConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessionConfig.d.ts","sourceRoot":"","sources":["../../../src/shared/types/sessionConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,19 @@ export const PROVIDER_SECTION_KEYS = {
|
|
|
20
20
|
"vscode-task": "vscode_task",
|
|
21
21
|
antigravity: "antigravity",
|
|
22
22
|
};
|
|
23
|
+
/**
|
|
24
|
+
* The non-IDE backends a {@link DispatchableSource} can run. Excludes the
|
|
25
|
+
* conversation host (`claude-code`) and the IDE-bound providers (`vscode-task` /
|
|
26
|
+
* `antigravity`), which are driven through their host/IDE, not as a generic
|
|
27
|
+
* dispatchable source with an endpoint + parameters.
|
|
28
|
+
*/
|
|
29
|
+
export const DISPATCHABLE_SOURCE_PROVIDERS = [
|
|
30
|
+
"openai-compatible",
|
|
31
|
+
"codex",
|
|
32
|
+
"opencode",
|
|
33
|
+
"local-subprocess",
|
|
34
|
+
"subprocess-template",
|
|
35
|
+
];
|
|
23
36
|
/**
|
|
24
37
|
* Per-analyzer resolution policy for the optional graph-enrichment pass
|
|
25
38
|
* (`analyzers.<id>`). Resolution order is repo node_modules → version-keyed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionConfig.js","sourceRoot":"","sources":["../../../src/shared/types/sessionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,kBAAkB;IAClB,qBAAqB;IACrB,aAAa;IACb,OAAO;IACP,UAAU;IACV,mBAAmB;IACnB,aAAa;IACb,aAAa;CACL,CAAC;AAIX,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,UAAU,CAAU,CAAC;AA6FjE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,qBAAqB,EAAE,qBAAqB;IAC5C,aAAa,EAAE,aAAa;IAC5B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,mBAAmB,EAAE,mBAAmB;IACxC,aAAa,EAAE,aAAa;IAC5B,WAAW,EAAE,aAAa;CAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"sessionConfig.js","sourceRoot":"","sources":["../../../src/shared/types/sessionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,kBAAkB;IAClB,qBAAqB;IACrB,aAAa;IACb,OAAO;IACP,UAAU;IACV,mBAAmB;IACnB,aAAa;IACb,aAAa;CACL,CAAC;AAIX,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,UAAU,CAAU,CAAC;AA6FjE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,qBAAqB,EAAE,qBAAqB;IAC5C,aAAa,EAAE,aAAa;IAC5B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,mBAAmB,EAAE,mBAAmB;IACxC,aAAa,EAAE,aAAa;IAC5B,WAAW,EAAE,aAAa;CAClB,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,mBAAmB;IACnB,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,qBAAqB;CACb,CAAC;AA+JX;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM;IACN,WAAW;IACX,WAAW;IACX,MAAM;IACN,MAAM;CACE,CAAC;AACX,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "audit-tools",
|
|
3
|
-
"version": "0.28.
|
|
3
|
+
"version": "0.28.9",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Portable hybrid code auditing + remediation orchestrators for arbitrary repositories.",
|
|
6
6
|
"type": "module",
|
|
@@ -45,7 +45,8 @@
|
|
|
45
45
|
"test:shared": "npm run build && node --import tsx/esm --test tests/shared/*.test.mjs",
|
|
46
46
|
"test:remediate": "vitest run",
|
|
47
47
|
"test:single": "npm run build && node --import tsx/esm --test",
|
|
48
|
-
"verify:release": "npm run check && npm test && npm run
|
|
48
|
+
"verify:release": "npm run check && npm test && npm run verify:hosts && npm run smoke:packaged-audit-code && npm run smoke:packaged-remediate-code",
|
|
49
|
+
"verify:hosts": "node scripts/audit/verify-hosts.mjs",
|
|
49
50
|
"smoke:linked-audit-code": "node scripts/audit/smoke-linked-audit-code.mjs",
|
|
50
51
|
"smoke:packaged-audit-code": "node scripts/audit/smoke-packaged-audit-code.mjs",
|
|
51
52
|
"smoke:linked-remediate-code": "node scripts/remediate/smoke-linked-remediate-code.mjs",
|