@claudexor/cli 3.19.0 → 3.22.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/dist/account-catalog.d.ts +5 -6
- package/dist/account-catalog.d.ts.map +1 -1
- package/dist/account-catalog.js +24 -9
- package/dist/account-catalog.js.map +1 -1
- package/dist/account-observations.d.ts +31 -0
- package/dist/account-observations.d.ts.map +1 -0
- package/dist/account-observations.js +135 -0
- package/dist/account-observations.js.map +1 -0
- package/dist/accounts-projection.d.ts +5 -9
- package/dist/accounts-projection.d.ts.map +1 -1
- package/dist/accounts-projection.js +22 -41
- package/dist/accounts-projection.js.map +1 -1
- package/dist/accounts-services.d.ts +10 -1
- package/dist/accounts-services.d.ts.map +1 -1
- package/dist/accounts-services.js +50 -34
- package/dist/accounts-services.js.map +1 -1
- package/dist/acp-surface-runner.d.ts.map +1 -1
- package/dist/acp-surface-runner.js +2 -0
- package/dist/acp-surface-runner.js.map +1 -1
- package/dist/agy-quota-source.d.ts.map +1 -1
- package/dist/agy-quota-source.js +19 -33
- package/dist/agy-quota-source.js.map +1 -1
- package/dist/claude-oauth-credential.d.ts +16 -0
- package/dist/claude-oauth-credential.d.ts.map +1 -0
- package/dist/claude-oauth-credential.js +82 -0
- package/dist/claude-oauth-credential.js.map +1 -0
- package/dist/claude-oauth-fetch.d.ts +9 -0
- package/dist/claude-oauth-fetch.d.ts.map +1 -0
- package/dist/claude-oauth-fetch.js +67 -0
- package/dist/claude-oauth-fetch.js.map +1 -0
- package/dist/claude-oauth-usage.d.ts +7 -38
- package/dist/claude-oauth-usage.d.ts.map +1 -1
- package/dist/claude-oauth-usage.js +166 -180
- package/dist/claude-oauth-usage.js.map +1 -1
- package/dist/claudexord.d.ts.map +1 -1
- package/dist/claudexord.js +2 -2
- package/dist/claudexord.js.map +1 -1
- package/dist/cli-io.d.ts +2 -0
- package/dist/cli-io.d.ts.map +1 -1
- package/dist/cli-io.js +6 -5
- package/dist/cli-io.js.map +1 -1
- package/dist/codex-quota-source.d.ts +6 -2
- package/dist/codex-quota-source.d.ts.map +1 -1
- package/dist/codex-quota-source.js +62 -95
- package/dist/codex-quota-source.js.map +1 -1
- package/dist/continue-from-run.d.ts +27 -0
- package/dist/continue-from-run.d.ts.map +1 -0
- package/dist/continue-from-run.js +77 -0
- package/dist/continue-from-run.js.map +1 -0
- package/dist/control-services.d.ts +36 -3
- package/dist/control-services.d.ts.map +1 -1
- package/dist/control-services.js +15 -20
- package/dist/control-services.js.map +1 -1
- package/dist/credential-commands.d.ts.map +1 -1
- package/dist/credential-commands.js +12 -6
- package/dist/credential-commands.js.map +1 -1
- package/dist/daemon-agent-runner.d.ts.map +1 -1
- package/dist/daemon-agent-runner.js +4 -6
- package/dist/daemon-agent-runner.js.map +1 -1
- package/dist/gc-receipt-notes.d.ts +14 -0
- package/dist/gc-receipt-notes.d.ts.map +1 -0
- package/dist/gc-receipt-notes.js +28 -0
- package/dist/gc-receipt-notes.js.map +1 -0
- package/dist/harness-command-specs.d.ts +1 -1
- package/dist/harness-command-specs.d.ts.map +1 -1
- package/dist/harness-command-specs.js +8 -1
- package/dist/harness-command-specs.js.map +1 -1
- package/dist/harness-install-proof.d.ts.map +1 -1
- package/dist/harness-install-proof.js +14 -18
- package/dist/harness-install-proof.js.map +1 -1
- package/dist/harness-install-recipes.d.ts +2 -1
- package/dist/harness-install-recipes.d.ts.map +1 -1
- package/dist/harness-install-recipes.js +12 -9
- package/dist/harness-install-recipes.js.map +1 -1
- package/dist/harness-installer.d.ts +1 -1
- package/dist/harness-installer.d.ts.map +1 -1
- package/dist/harness-installer.js +8 -9
- package/dist/harness-installer.js.map +1 -1
- package/dist/live.d.ts.map +1 -1
- package/dist/live.js +8 -7
- package/dist/live.js.map +1 -1
- package/dist/mcp-catalog-query.js +3 -3
- package/dist/mcp-catalog-query.js.map +1 -1
- package/dist/mcp-run-projections.d.ts +17 -1
- package/dist/mcp-run-projections.d.ts.map +1 -1
- package/dist/mcp-run-projections.js +27 -1
- package/dist/mcp-run-projections.js.map +1 -1
- package/dist/model-account-evidence.d.ts +18 -0
- package/dist/model-account-evidence.d.ts.map +1 -0
- package/dist/model-account-evidence.js +71 -0
- package/dist/model-account-evidence.js.map +1 -0
- package/dist/model-services.d.ts.map +1 -1
- package/dist/model-services.js +78 -83
- package/dist/model-services.js.map +1 -1
- package/dist/native-login.d.ts +5 -0
- package/dist/native-login.d.ts.map +1 -1
- package/dist/native-login.js +18 -2
- package/dist/native-login.js.map +1 -1
- package/dist/ops-commands.d.ts.map +1 -1
- package/dist/ops-commands.js +22 -25
- package/dist/ops-commands.js.map +1 -1
- package/dist/orphan-sweeper.d.ts.map +1 -1
- package/dist/orphan-sweeper.js +11 -1
- package/dist/orphan-sweeper.js.map +1 -1
- package/dist/plugins.js +1 -1
- package/dist/plugins.js.map +1 -1
- package/dist/quota-command.js +3 -4
- package/dist/quota-command.js.map +1 -1
- package/dist/quota-refresh-diagnostics.d.ts +33 -0
- package/dist/quota-refresh-diagnostics.d.ts.map +1 -0
- package/dist/quota-refresh-diagnostics.js +9 -0
- package/dist/quota-refresh-diagnostics.js.map +1 -0
- package/dist/quota-refreshers.d.ts +5 -4
- package/dist/quota-refreshers.d.ts.map +1 -1
- package/dist/quota-refreshers.js +11 -4
- package/dist/quota-refreshers.js.map +1 -1
- package/dist/quota-services.d.ts +20 -2
- package/dist/quota-services.d.ts.map +1 -1
- package/dist/registry.d.ts +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +6 -2
- package/dist/registry.js.map +1 -1
- package/dist/retention-service.d.ts +7 -1
- package/dist/retention-service.d.ts.map +1 -1
- package/dist/retention-service.js +84 -5
- package/dist/retention-service.js.map +1 -1
- package/dist/run-orchestrator.d.ts +0 -6
- package/dist/run-orchestrator.d.ts.map +1 -1
- package/dist/run-orchestrator.js +41 -10
- package/dist/run-orchestrator.js.map +1 -1
- package/dist/settings-service.d.ts +14 -6
- package/dist/settings-service.d.ts.map +1 -1
- package/dist/settings-service.js +11 -5
- package/dist/settings-service.js.map +1 -1
- package/dist/setup-jobs.js +6 -6
- package/dist/setup-jobs.js.map +1 -1
- package/dist/setup-login-capability.d.ts.map +1 -1
- package/dist/setup-login-capability.js +6 -2
- package/dist/setup-login-capability.js.map +1 -1
- package/dist/setup-login-child-lifecycle.d.ts.map +1 -1
- package/dist/setup-login-child-lifecycle.js +16 -4
- package/dist/setup-login-child-lifecycle.js.map +1 -1
- package/dist/setup-login-fallback.d.ts +54 -0
- package/dist/setup-login-fallback.d.ts.map +1 -0
- package/dist/setup-login-fallback.js +95 -0
- package/dist/setup-login-fallback.js.map +1 -0
- package/dist/setup-login-inline.d.ts +8 -46
- package/dist/setup-login-inline.d.ts.map +1 -1
- package/dist/setup-login-inline.js +79 -104
- package/dist/setup-login-inline.js.map +1 -1
- package/dist/setup-login-input-prompt.d.ts +7 -0
- package/dist/setup-login-input-prompt.d.ts.map +1 -0
- package/dist/setup-login-input-prompt.js +27 -0
- package/dist/setup-login-input-prompt.js.map +1 -0
- package/dist/setup-login-runner.d.ts.map +1 -1
- package/dist/setup-login-runner.js +15 -11
- package/dist/setup-login-runner.js.map +1 -1
- package/dist/status-projection-cache.d.ts +3 -0
- package/dist/status-projection-cache.d.ts.map +1 -1
- package/dist/status-projection-cache.js +4 -1
- package/dist/status-projection-cache.js.map +1 -1
- package/dist/thread-delivery.d.ts.map +1 -1
- package/dist/thread-delivery.js +14 -13
- package/dist/thread-delivery.js.map +1 -1
- package/dist/thread-purge.d.ts +52 -0
- package/dist/thread-purge.d.ts.map +1 -0
- package/dist/thread-purge.js +27 -0
- package/dist/thread-purge.js.map +1 -0
- package/package.json +25 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-catalog-query.js","sourceRoot":"","sources":["../src/mcp-catalog-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAkD,EAClD,WAAW,GAAG,KAAK,EACnB,OAAO,GAAwB,EAAE;IAEjC,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC;IACvF,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACnD,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IAC5B,sEAAsE;IACtE,
|
|
1
|
+
{"version":3,"file":"mcp-catalog-query.js","sourceRoot":"","sources":["../src/mcp-catalog-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAkD,EAClD,WAAW,GAAG,KAAK,EACnB,OAAO,GAAwB,EAAE;IAEjC,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC;IACvF,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACnD,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IAC5B,sEAAsE;IACtE,8EAA8E;IAC9E,oEAAoE;IACpE,yEAAyE;IACzE,mEAAmE;IACnE,MAAM,IAAI,GACR,IAAI,KAAK,UAAU;QACjB,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,IAAI,KAAK,YAAY;YACrB,CAAC,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI;gBACtB,CAAC,CAAC,oCAAoC;gBACtC,CAAC,CAAC,sBAAsB;YAC1B,CAAC,CAAC,qBAAqB,CAAC;IAC9B,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAA4B,CAAC;IAClF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,iBAAiB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1F,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC,CAAE,IAAI,CAAC,WAAW,CAA+B;QAClD,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,IAAI;QACP,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzF,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SecretLikeDisclosure } from "@claudexor/schema";
|
|
1
2
|
import { type ExpectedRunFactsIdentity } from "./run-facts-projection.js";
|
|
2
3
|
export declare function projectImmediateRunDetail(detail: Record<string, unknown> | null, expected?: ExpectedRunFactsIdentity): {
|
|
3
4
|
parentRunId: string | null;
|
|
@@ -24,6 +25,7 @@ export declare function projectImmediateRunDetail(detail: Record<string, unknown
|
|
|
24
25
|
locator: string | null;
|
|
25
26
|
description: string;
|
|
26
27
|
}[] | undefined;
|
|
28
|
+
unverified_reason?: "footer_missing" | "footer_not_json" | "footer_not_object" | "legacy_output_invalid" | "report_contradictory" | "report_malformed" | "report_missing" | undefined;
|
|
27
29
|
} | undefined;
|
|
28
30
|
};
|
|
29
31
|
deliverable: {
|
|
@@ -92,6 +94,7 @@ export declare function projectImmediateRunDetail(detail: Record<string, unknown
|
|
|
92
94
|
locator: string | null;
|
|
93
95
|
description: string;
|
|
94
96
|
}[] | undefined;
|
|
97
|
+
unverified_reason?: "footer_missing" | "footer_not_json" | "footer_not_object" | "legacy_output_invalid" | "report_contradictory" | "report_malformed" | "report_missing" | undefined;
|
|
95
98
|
} | undefined;
|
|
96
99
|
} | null;
|
|
97
100
|
applyEligibility: import("./run-detail-projections.js").ApplyEligibilityProjection | null;
|
|
@@ -108,10 +111,16 @@ export declare function projectImmediateRunDetail(detail: Record<string, unknown
|
|
|
108
111
|
limit: number | null;
|
|
109
112
|
actual: number | null;
|
|
110
113
|
native_code: string;
|
|
114
|
+
} | {
|
|
115
|
+
kind: "vendor_cli_too_old";
|
|
116
|
+
native_code: "claude_code_version_too_old";
|
|
117
|
+
source: "claude_stdout";
|
|
118
|
+
binary_path: string | null;
|
|
119
|
+
installed_version: string | null;
|
|
111
120
|
} | undefined;
|
|
112
121
|
phase: string;
|
|
113
122
|
category: "auth" | "budget" | "cancelled" | "config_error" | "harness_error" | "harness_unavailable" | "internal" | "policy" | "project" | "unknown" | "validation";
|
|
114
|
-
code: "access_profile_incompatible" | "budget_overshoot" | "cost_unverifiable" | "credential_pool_exhausted" | "delegated_confinement_unavailable" | "delegated_evidence_incomplete" | "delegated_home_unavailable" | "delegation_child_drain_timeout" | "estimate_headroom" | "finite_zero" | "hard_cap" | "input_too_large" | "retired_access_profile" | "subscription_window_exhausted" | "unknown_paid_in_flight" | null;
|
|
123
|
+
code: "access_profile_incompatible" | "budget_overshoot" | "cost_unverifiable" | "credential_pool_exhausted" | "delegated_confinement_unavailable" | "delegated_evidence_incomplete" | "delegated_home_unavailable" | "delegation_child_drain_timeout" | "estimate_headroom" | "finite_zero" | "hard_cap" | "input_too_large" | "retired_access_profile" | "subscription_window_exhausted" | "unknown_paid_in_flight" | "vendor_cli_too_old" | null;
|
|
115
124
|
harnessId: string | null;
|
|
116
125
|
attemptId: string | null;
|
|
117
126
|
safeMessage: string;
|
|
@@ -128,6 +137,13 @@ export declare function projectImmediateRunDetail(detail: Record<string, unknown
|
|
|
128
137
|
nextActions: string[];
|
|
129
138
|
} | null;
|
|
130
139
|
};
|
|
140
|
+
/**
|
|
141
|
+
* INV-062 disclosure as a consumable fact. `run_result` answers with the
|
|
142
|
+
* primary output first, so the summary.md disclosure line never reaches an MCP
|
|
143
|
+
* host; this projects the same record from `workProduct.meta`. Null when the
|
|
144
|
+
* run hid nothing (or the record is absent/malformed).
|
|
145
|
+
*/
|
|
146
|
+
export declare function projectSecretLikeDisclosure(detail: Record<string, unknown> | null): SecretLikeDisclosure | null;
|
|
131
147
|
/** One typed read projection for inspect/status/result from a single detail snapshot. */
|
|
132
148
|
export declare function projectRecoveryRunDetail(mode: string, runId: string, detail: Record<string, unknown>, delegationParentRunId?: string): Record<string, unknown>;
|
|
133
149
|
/** Only canonical detail-integrity failures preserve a public recovery handle. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-run-projections.d.ts","sourceRoot":"","sources":["../src/mcp-run-projections.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp-run-projections.d.ts","sourceRoot":"","sources":["../src/mcp-run-projections.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,oBAAoB,EAErB,MAAM,mBAAmB,CAAC;AAc3B,OAAO,EAAmB,KAAK,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAE3F,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACtC,QAAQ,GAAE,wBAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBxC;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACrC,oBAAoB,GAAG,IAAI,CAgB7B;AAED,yFAAyF;AACzF,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,qBAAqB,CAAC,EAAE,MAAM,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiFzB;AAED,kFAAkF;AAClF,wBAAgB,sCAAsC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQ9E;AAED,gFAAgF;AAChF,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,GACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBzB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isTerminalLifecycle, RunFactsInvalidError } from "@claudexor/schema";
|
|
1
|
+
import { isTerminalLifecycle, RunFactsInvalidError, SecretLikeDisclosure, } from "@claudexor/schema";
|
|
2
2
|
import { CliError } from "./cli-error.js";
|
|
3
3
|
import { describeRunDetailProblem, projectApplyEligibility, projectOutcomeBanner, presentRunPrimaryOutput, projectRunFailure, projectRunCouncil, projectRunLineage, projectRunPrimaryOutput, projectRunSpendUsd, } from "./run-detail-projections.js";
|
|
4
4
|
import { projectRunOutcomeFacts } from "./daemon-outcome.js";
|
|
@@ -19,6 +19,30 @@ export function projectImmediateRunDetail(detail, expected = {}) {
|
|
|
19
19
|
...projectRunLineage(detail),
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* INV-062 disclosure as a consumable fact. `run_result` answers with the
|
|
24
|
+
* primary output first, so the summary.md disclosure line never reaches an MCP
|
|
25
|
+
* host; this projects the same record from `workProduct.meta`. Null when the
|
|
26
|
+
* run hid nothing (or the record is absent/malformed).
|
|
27
|
+
*/
|
|
28
|
+
export function projectSecretLikeDisclosure(detail) {
|
|
29
|
+
const meta = detail?.["workProduct"]
|
|
30
|
+
?.meta;
|
|
31
|
+
const finding = meta?.["secret_like"];
|
|
32
|
+
const redactedCopy = meta?.["persisted_patch"] === "redacted";
|
|
33
|
+
if (!finding && !redactedCopy)
|
|
34
|
+
return null;
|
|
35
|
+
const parsed = SecretLikeDisclosure.safeParse({
|
|
36
|
+
totalMatches: finding?.["total_matches"] ?? 0,
|
|
37
|
+
answerMatches: finding?.["answer_matches"] ?? 0,
|
|
38
|
+
files: finding?.["files"] ?? [],
|
|
39
|
+
binaryPaths: finding?.["binary_paths"] ?? [],
|
|
40
|
+
mediaWithheld: finding?.["media_withheld"] ?? [],
|
|
41
|
+
persistedPatch: redactedCopy ? "redacted" : "exact",
|
|
42
|
+
exactPatchRecorded: redactedCopy ? typeof meta?.["exact_patch_object"] === "string" : null,
|
|
43
|
+
});
|
|
44
|
+
return parsed.success ? parsed.data : null;
|
|
45
|
+
}
|
|
22
46
|
/** One typed read projection for inspect/status/result from a single detail snapshot. */
|
|
23
47
|
export function projectRecoveryRunDetail(mode, runId, detail, delegationParentRunId) {
|
|
24
48
|
const summary = (detail["summary"] ?? {});
|
|
@@ -69,6 +93,7 @@ export function projectRecoveryRunDetail(mode, runId, detail, delegationParentRu
|
|
|
69
93
|
delegation: summary["delegation"] && typeof summary["delegation"] === "object"
|
|
70
94
|
? summary["delegation"]
|
|
71
95
|
: null,
|
|
96
|
+
secretLike: projectSecretLikeDisclosure(detail),
|
|
72
97
|
};
|
|
73
98
|
if (mode !== "__run_result") {
|
|
74
99
|
return {
|
|
@@ -124,6 +149,7 @@ export function projectDegradedRecoveryRunDetail(runId, error) {
|
|
|
124
149
|
parentRunId: null,
|
|
125
150
|
delegatedFromRunId: null,
|
|
126
151
|
delegation: null,
|
|
152
|
+
secretLike: null,
|
|
127
153
|
detailProblem: describeRunDetailProblem(error),
|
|
128
154
|
};
|
|
129
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-run-projections.js","sourceRoot":"","sources":["../src/mcp-run-projections.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"mcp-run-projections.js","sourceRoot":"","sources":["../src/mcp-run-projections.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { CredentialUnusableLedger, QuotaRegistry } from "@claudexor/daemon";
|
|
2
|
+
import type { ControlProblem, ModelUsage } from "@claudexor/schema";
|
|
3
|
+
/** Bind at the real catalog/inference boundary, before any provider work.
|
|
4
|
+
* Raw models translate their typed result into the same observation owner
|
|
5
|
+
* as native sessions; the original result and dispatch custody are unchanged. */
|
|
6
|
+
export declare function bindModelAccountEvidence(args: {
|
|
7
|
+
harnessId: string;
|
|
8
|
+
profileId: string;
|
|
9
|
+
model: string | null;
|
|
10
|
+
unusable: CredentialUnusableLedger;
|
|
11
|
+
quota: () => QuotaRegistry;
|
|
12
|
+
}): {
|
|
13
|
+
current: () => boolean;
|
|
14
|
+
honorCatalog: (observedAt: string) => void;
|
|
15
|
+
finish: () => void;
|
|
16
|
+
observe: (problem: ControlProblem | null, usage?: ModelUsage, model?: string | null, dispatched?: boolean) => void;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=model-account-evidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-account-evidence.d.ts","sourceRoot":"","sources":["../src/model-account-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAgB,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAElF;;iFAEiF;AACjF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,KAAK,EAAE,MAAM,aAAa,CAAC;CAC5B;IASG,OAAO;IACP,YAAY,eAAe,MAAM;IACjC,MAAM;IACN,OAAO,YACI,cAAc,GAAG,IAAI,UACtB,UAAU,UACV,MAAM,GAAG,IAAI;EAuD1B"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { createCredentialExecutionObserver } from "@claudexor/orchestrator";
|
|
2
|
+
/** Bind at the real catalog/inference boundary, before any provider work.
|
|
3
|
+
* Raw models translate their typed result into the same observation owner
|
|
4
|
+
* as native sessions; the original result and dispatch custody are unchanged. */
|
|
5
|
+
export function bindModelAccountEvidence(args) {
|
|
6
|
+
const binding = args.unusable.bind({
|
|
7
|
+
harnessId: args.harnessId,
|
|
8
|
+
profileId: args.profileId,
|
|
9
|
+
route: "vendor_native",
|
|
10
|
+
requestedModel: args.model,
|
|
11
|
+
});
|
|
12
|
+
const observer = createCredentialExecutionObserver(args.unusable, binding);
|
|
13
|
+
return {
|
|
14
|
+
current: () => args.unusable.current(binding),
|
|
15
|
+
honorCatalog: (observedAt) => args.unusable.honorBound(binding, null, observedAt),
|
|
16
|
+
finish: () => observer.finish(),
|
|
17
|
+
observe: (problem, usage, model, dispatched = false) => {
|
|
18
|
+
const event = {
|
|
19
|
+
type: usage ? "usage" : "error",
|
|
20
|
+
ts: new Date().toISOString(),
|
|
21
|
+
session_id: "model-operation",
|
|
22
|
+
credential_route: "vendor_native",
|
|
23
|
+
credential_profile_id: args.profileId,
|
|
24
|
+
observed_model: model ?? undefined,
|
|
25
|
+
...(usage
|
|
26
|
+
? {
|
|
27
|
+
usage: {
|
|
28
|
+
input_tokens: usage.input_tokens ?? undefined,
|
|
29
|
+
output_tokens: usage.output_tokens ?? undefined,
|
|
30
|
+
cached_input_tokens: usage.cached_input_tokens ?? undefined,
|
|
31
|
+
},
|
|
32
|
+
}
|
|
33
|
+
: {}),
|
|
34
|
+
};
|
|
35
|
+
const context = problem?.context ?? {};
|
|
36
|
+
if (typeof context.resetsAt === "string" || typeof context.retryAfterMs === "number") {
|
|
37
|
+
event.rate_limit = {
|
|
38
|
+
resets_at: typeof context.resetsAt === "string" ? context.resetsAt : null,
|
|
39
|
+
retry_delay_ms: typeof context.retryAfterMs === "number" ? context.retryAfterMs : null,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
observer.observe(event);
|
|
43
|
+
// model_unavailable also names local preparation/catalog failures.
|
|
44
|
+
// Only a dispatched generation's typed refusal can condemn that model.
|
|
45
|
+
const category = problem?.code === "auth_required"
|
|
46
|
+
? "authentication_failed"
|
|
47
|
+
: dispatched && args.model !== null && problem?.code === "model_unavailable"
|
|
48
|
+
? "model_not_found"
|
|
49
|
+
: null;
|
|
50
|
+
if (category) {
|
|
51
|
+
observer.observe({
|
|
52
|
+
...event,
|
|
53
|
+
type: "error",
|
|
54
|
+
usage: undefined,
|
|
55
|
+
rate_limit: undefined,
|
|
56
|
+
status: { kind: "api_retry", error_category: category },
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
observer.observe({
|
|
60
|
+
...event,
|
|
61
|
+
type: "completed",
|
|
62
|
+
usage: undefined,
|
|
63
|
+
rate_limit: undefined,
|
|
64
|
+
payload: { exit_code: problem ? 1 : 0, harness_reported_error: problem !== null },
|
|
65
|
+
});
|
|
66
|
+
if (args.unusable.current(binding))
|
|
67
|
+
args.quota().ingest(args.harnessId, event);
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=model-account-evidence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-account-evidence.js","sourceRoot":"","sources":["../src/model-account-evidence.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-services.d.ts","sourceRoot":"","sources":["../src/model-services.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,0BAA0B,EAC/B,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAIL,YAAY,
|
|
1
|
+
{"version":3,"file":"model-services.d.ts","sourceRoot":"","sources":["../src/model-services.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,0BAA0B,EAC/B,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAIL,YAAY,EAIb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI9D;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,yBAAgC,CAAC;AAErE,UAAU,WAAW;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,UAAU,YAAa,SAAQ,IAAI,CAAC,0BAA0B,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,CAAC;IAChG,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;IACjD,KAAK,EAAE,MAAM,aAAa,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,YAAY,CAAC;IAC5B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,wBAAwB,CAAC;IACpC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC,aAAa,CAAC,EAAE,OAAO,qBAAqB,CAAC;CAC9C;AAMD;kFACkF;AAClF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY;;;QAoVhD,YAAY,UAAgB,UAAU;;;;;;;;;QAUtC,YAAY,aACA,MAAM,wBACM,MAAM,mBACX,MAAM;;;;;;;;;;;;;;;;;;;;;;;QAazB,mBAAmB,aAAmB,MAAM,wBAAwB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4B1E,oBAAoB;QACpB,iBAAiB,OAAa,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACpC,eAAe,OAAa,MAAM;;;;QAClC,sBAAsB,OAAa,MAAM,UAAU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEzD,oBAAoB;;yBAGd,eAAe,KAAG,eAAe;;EAa5C"}
|
package/dist/model-services.js
CHANGED
|
@@ -2,13 +2,14 @@ import { credentialProfilePolicyState } from "@claudexor/core";
|
|
|
2
2
|
import { loadConfig } from "@claudexor/config";
|
|
3
3
|
import { ModelOperations, ModelSubstitutionLedger, } from "@claudexor/daemon";
|
|
4
4
|
import { createCodexModelAdapter, describeCodexClientVersion } from "@claudexor/harness-codex";
|
|
5
|
-
import {
|
|
5
|
+
import { probeCredentialProfileStatus, profileStatusAdmits, resolveAccountForRun, resolveCredentialProfile, composeCredentialProfileEvidence, applicableCredentialUnusable, vendorCredentialObservation, } from "@claudexor/orchestrator";
|
|
6
6
|
import { ControlModelCatalogResponse, ControlModelAccountCatalogResponse, ControlProblem, GlobalConfig, } from "@claudexor/schema";
|
|
7
7
|
import { errorCode, noProjectRepoRoot, redactSecrets } from "@claudexor/util";
|
|
8
8
|
import { accountsMigrationGate } from "./accounts-unified-migration.js";
|
|
9
9
|
import { buildRegistry } from "./registry.js";
|
|
10
10
|
import { credentialUnusableLedger } from "./run-orchestrator.js";
|
|
11
11
|
import { catalogProfiles, enumerateAccountCatalogs } from "./account-catalog.js";
|
|
12
|
+
import { bindModelAccountEvidence } from "./model-account-evidence.js";
|
|
12
13
|
/**
|
|
13
14
|
* Daemon-lifetime model-substitution observations: in-memory and bounded, like
|
|
14
15
|
* the unusable-credential ledger, and cleared at the same credential-generation
|
|
@@ -28,6 +29,7 @@ export function createModelServices(deps) {
|
|
|
28
29
|
const config = deps.config ?? (() => loadConfig(noProjectRepoRoot()).global);
|
|
29
30
|
const unusable = deps.unusable ?? credentialUnusableLedger;
|
|
30
31
|
const substitutions = deps.substitutions ?? modelSubstitutionLedger;
|
|
32
|
+
const quotaEvidence = () => ({ ...deps.quota().read(), honored: unusable.honored() });
|
|
31
33
|
const lifetime = new AbortController();
|
|
32
34
|
const getSource = (id) => {
|
|
33
35
|
const source = sources.find((entry) => entry.adapter.id === id);
|
|
@@ -58,16 +60,13 @@ export function createModelServices(deps) {
|
|
|
58
60
|
}
|
|
59
61
|
}
|
|
60
62
|
const probe = registry.get(harnessId)?.probeCredentialProfile?.bind(registry.get(harnessId));
|
|
61
|
-
const quota =
|
|
63
|
+
const quota = quotaEvidence();
|
|
62
64
|
if (pinnedProfile) {
|
|
63
65
|
// Preserve a confirmed sign-in remedy across subsequent pinned calls.
|
|
64
66
|
// Local probe failures and generic unavailability do not prove revocation.
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
entry.profile_id === pinnedProfile.profile_id &&
|
|
69
|
-
entry.code === "auth_revoked" &&
|
|
70
|
-
(entry.model === null || entry.model === model));
|
|
67
|
+
const evidence = { quota, unusable: unusable.live(), model, route: "vendor_native" };
|
|
68
|
+
const refusal = applicableCredentialUnusable(pinnedProfile, evidence);
|
|
69
|
+
const revoked = refusal?.code === "auth_revoked" ? refusal : null;
|
|
71
70
|
const vendor = vendorCredentialObservation(quota, harnessId, pinnedProfile.profile_id);
|
|
72
71
|
const revokedAt = revoked?.observed_at ?? (vendor?.outcome === "revoked" ? vendor.observed_at : null);
|
|
73
72
|
if (revokedAt)
|
|
@@ -83,7 +82,7 @@ export function createModelServices(deps) {
|
|
|
83
82
|
},
|
|
84
83
|
}),
|
|
85
84
|
});
|
|
86
|
-
const status =
|
|
85
|
+
const status = composeCredentialProfileEvidence(await probeCredentialProfileStatus(pinnedProfile, probe), evidence);
|
|
87
86
|
if (!profileStatusAdmits(pinnedProfile, status))
|
|
88
87
|
throw modelError("auth_unavailable", "The pinned model account has no verified current authentication");
|
|
89
88
|
}
|
|
@@ -93,7 +92,7 @@ export function createModelServices(deps) {
|
|
|
93
92
|
// The same pool resolver chooses any next candidate; this loop never generates.
|
|
94
93
|
while (true) {
|
|
95
94
|
signal.throwIfAborted();
|
|
96
|
-
const currentQuota =
|
|
95
|
+
const currentQuota = quotaEvidence();
|
|
97
96
|
let profile;
|
|
98
97
|
try {
|
|
99
98
|
profile = await resolveAccountForRun({
|
|
@@ -183,6 +182,13 @@ export function createModelServices(deps) {
|
|
|
183
182
|
throw modelError("model_account_unavailable", "Connect a managed account for model calls");
|
|
184
183
|
signal.throwIfAborted();
|
|
185
184
|
let catalog;
|
|
185
|
+
const evidence = bindModelAccountEvidence({
|
|
186
|
+
harnessId,
|
|
187
|
+
profileId: profile.profile_id,
|
|
188
|
+
model,
|
|
189
|
+
unusable,
|
|
190
|
+
quota: deps.quota,
|
|
191
|
+
});
|
|
186
192
|
try {
|
|
187
193
|
catalog = ControlModelCatalogResponse.parse(await source.adapter.catalog({ profile, signal }));
|
|
188
194
|
}
|
|
@@ -203,7 +209,7 @@ export function createModelServices(deps) {
|
|
|
203
209
|
// evidence maintenance fails or a concurrent refresh retires its block.
|
|
204
210
|
excluded.add(profile.profile_id);
|
|
205
211
|
try {
|
|
206
|
-
|
|
212
|
+
evidence.observe(refusal);
|
|
207
213
|
}
|
|
208
214
|
catch (error) {
|
|
209
215
|
deps.warn?.(`Model quota evidence was not recorded: ${redactSecrets(String(error))}`);
|
|
@@ -212,9 +218,19 @@ export function createModelServices(deps) {
|
|
|
212
218
|
throw Object.assign(modelError(refusal.code, refusal.message), { problem: refusal });
|
|
213
219
|
continue;
|
|
214
220
|
}
|
|
221
|
+
finally {
|
|
222
|
+
try {
|
|
223
|
+
evidence.finish();
|
|
224
|
+
}
|
|
225
|
+
catch (error) {
|
|
226
|
+
deps.warn?.(`Model account evidence finalization failed: ${redactSecrets(String(error))}`);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
215
229
|
if (catalog.source !== source.adapter.id ||
|
|
216
230
|
catalog.credentialProfileId !== profile.profile_id)
|
|
217
231
|
throw modelError("model_catalog_identity_mismatch", "The model catalog does not identify the selected account");
|
|
232
|
+
if (catalog.provenance === "provider_http" && catalog.observedAt)
|
|
233
|
+
evidence.honorCatalog(catalog.observedAt);
|
|
218
234
|
if (model === null || catalog.models.some((entry) => entry.id === model))
|
|
219
235
|
return { profile, catalog };
|
|
220
236
|
if (account.mode === "pin")
|
|
@@ -222,55 +238,6 @@ export function createModelServices(deps) {
|
|
|
222
238
|
excluded.add(profile.profile_id);
|
|
223
239
|
}
|
|
224
240
|
};
|
|
225
|
-
const observe = async (source, profile, problem, usage, model) => {
|
|
226
|
-
const ts = new Date().toISOString();
|
|
227
|
-
const event = {
|
|
228
|
-
type: usage ? "usage" : "error",
|
|
229
|
-
ts,
|
|
230
|
-
session_id: "model-operation",
|
|
231
|
-
credential_route: "vendor_native",
|
|
232
|
-
credential_profile_id: profile.profile_id,
|
|
233
|
-
observed_model: model ?? undefined,
|
|
234
|
-
usage: {
|
|
235
|
-
input_tokens: usage?.input_tokens ?? undefined,
|
|
236
|
-
output_tokens: usage?.output_tokens ?? undefined,
|
|
237
|
-
cached_input_tokens: usage?.cached_input_tokens ?? undefined,
|
|
238
|
-
},
|
|
239
|
-
};
|
|
240
|
-
// A cooldown is an assertion about time, so only the vendor's own reset or
|
|
241
|
-
// retry delay may produce one. Without either field the registry would
|
|
242
|
-
// invent a window instead of admitting it does not know.
|
|
243
|
-
const context = problem?.context ?? {};
|
|
244
|
-
if (typeof context.resetsAt === "string" || typeof context.retryAfterMs === "number") {
|
|
245
|
-
event.rate_limit = {
|
|
246
|
-
resets_at: typeof context.resetsAt === "string" ? context.resetsAt : null,
|
|
247
|
-
retry_delay_ms: typeof context.retryAfterMs === "number" ? context.retryAfterMs : null,
|
|
248
|
-
};
|
|
249
|
-
}
|
|
250
|
-
deps.quota().ingest(source.credentialHarness, event);
|
|
251
|
-
unusable.observeEvent(source.credentialHarness, event);
|
|
252
|
-
if (problem?.code === "auth_required") {
|
|
253
|
-
const observation = await differentialSubjectVerdict({
|
|
254
|
-
harnessId: source.credentialHarness,
|
|
255
|
-
profile,
|
|
256
|
-
model: model ?? null,
|
|
257
|
-
quota: deps.quota().read(),
|
|
258
|
-
transients: [
|
|
259
|
-
{
|
|
260
|
-
kind: "unknown",
|
|
261
|
-
category: "auth_failed",
|
|
262
|
-
retryable: false,
|
|
263
|
-
retryDelayMs: null,
|
|
264
|
-
httpStatus: null,
|
|
265
|
-
signal: null,
|
|
266
|
-
adapterCode: "auth_required",
|
|
267
|
-
},
|
|
268
|
-
],
|
|
269
|
-
});
|
|
270
|
-
if (observation)
|
|
271
|
-
unusable.record(observation);
|
|
272
|
-
}
|
|
273
|
-
};
|
|
274
241
|
const operations = new ModelOperations({
|
|
275
242
|
commands: deps.commands,
|
|
276
243
|
resources: deps.resources,
|
|
@@ -285,31 +252,58 @@ export function createModelServices(deps) {
|
|
|
285
252
|
adapter: {
|
|
286
253
|
...source.adapter,
|
|
287
254
|
invoke: async (input, context) => {
|
|
288
|
-
const
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
? { ...served, modelMismatch: { requested: input.model, observed } }
|
|
297
|
-
: served;
|
|
298
|
-
// Evidence maintenance must not erase an already-received model result.
|
|
255
|
+
const evidence = bindModelAccountEvidence({
|
|
256
|
+
harnessId: source.credentialHarness,
|
|
257
|
+
profileId: profile.profile_id,
|
|
258
|
+
model: input.model,
|
|
259
|
+
unusable,
|
|
260
|
+
quota: deps.quota,
|
|
261
|
+
});
|
|
262
|
+
let dispatched = false;
|
|
299
263
|
try {
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
}
|
|
307
|
-
|
|
264
|
+
const served = await source.adapter.invoke(input, {
|
|
265
|
+
...context,
|
|
266
|
+
catalog,
|
|
267
|
+
onDispatch: async (route) => {
|
|
268
|
+
await context.onDispatch(route);
|
|
269
|
+
dispatched = true;
|
|
270
|
+
},
|
|
271
|
+
});
|
|
272
|
+
// A typed fact about this generation, never a changed outcome: set
|
|
273
|
+
// only when a terminal response disclosed a model and its exact id
|
|
274
|
+
// differs from the requested one. The caller decides what to do.
|
|
275
|
+
const observed = served.route.model;
|
|
276
|
+
const result = (served.outcome === "completed" || served.outcome === "incomplete") &&
|
|
277
|
+
observed !== null &&
|
|
278
|
+
observed !== input.model
|
|
279
|
+
? { ...served, modelMismatch: { requested: input.model, observed } }
|
|
280
|
+
: served;
|
|
281
|
+
// Evidence maintenance must not erase an already-received model result.
|
|
282
|
+
try {
|
|
283
|
+
// The next Auto selection for this model prefers other accounts.
|
|
284
|
+
if (result.modelMismatch && evidence.current())
|
|
285
|
+
substitutions.record({
|
|
286
|
+
harness_id: source.credentialHarness,
|
|
287
|
+
profile_id: profile.profile_id,
|
|
288
|
+
requested_model: result.modelMismatch.requested,
|
|
289
|
+
});
|
|
290
|
+
if (result.route.source === source.adapter.id &&
|
|
291
|
+
result.route.credentialProfileId === profile.profile_id)
|
|
292
|
+
evidence.observe(result.problem, result.usage, result.route.model, dispatched && result.outcome === "failed");
|
|
293
|
+
}
|
|
294
|
+
catch (error) {
|
|
295
|
+
deps.warn?.(`Model account evidence was not recorded: ${redactSecrets(String(error))}`);
|
|
296
|
+
}
|
|
297
|
+
return result;
|
|
308
298
|
}
|
|
309
|
-
|
|
310
|
-
|
|
299
|
+
finally {
|
|
300
|
+
try {
|
|
301
|
+
evidence.finish();
|
|
302
|
+
}
|
|
303
|
+
catch (error) {
|
|
304
|
+
deps.warn?.(`Model account evidence finalization failed: ${redactSecrets(String(error))}`);
|
|
305
|
+
}
|
|
311
306
|
}
|
|
312
|
-
return result;
|
|
313
307
|
},
|
|
314
308
|
},
|
|
315
309
|
};
|
|
@@ -337,8 +331,9 @@ export function createModelServices(deps) {
|
|
|
337
331
|
},
|
|
338
332
|
modelAccountCatalog: async (sourceId, credentialProfileId) => {
|
|
339
333
|
const source = getSource(sourceId);
|
|
340
|
-
const context = { config: config(), quota:
|
|
334
|
+
const context = { config: config(), quota: quotaEvidence(), unusable: unusable.live() };
|
|
341
335
|
const accounts = await enumerateAccountCatalogs({
|
|
336
|
+
observationKey: `model-source:${sourceId}`,
|
|
342
337
|
context,
|
|
343
338
|
adapter: registry.get(source.credentialHarness),
|
|
344
339
|
profiles: catalogProfiles(context, source.credentialHarness, credentialProfileId, true),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-services.js","sourceRoot":"","sources":["../src/model-services.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-services.js","sourceRoot":"","sources":["../src/model-services.ts"],"names":[],"mappings":"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"}
|
package/dist/native-login.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import { type HarnessInterpreter } from "@claudexor/core";
|
|
1
2
|
import type { ManagedLogin } from "@claudexor/schema";
|
|
2
3
|
export interface NativeLoginSpec {
|
|
3
4
|
binary: string;
|
|
4
5
|
args: string[];
|
|
5
6
|
displayCommand: string;
|
|
7
|
+
interpreter?: HarnessInterpreter;
|
|
8
|
+
launchAdvisory?: string;
|
|
6
9
|
/** D-17: "device_code" = the codex app-server flow (no Terminal).
|
|
7
10
|
* "url_disclosure" = daemon-hosted vendor login whose sign-in URL is
|
|
8
11
|
* captured into the disclosure sidecar (cursor). "url_disclosure_with_input"
|
|
@@ -47,5 +50,7 @@ export declare function nativeLoginDisplayCommand(harness: string): string | nul
|
|
|
47
50
|
export declare function nativeLoginTerminalExports(harness: string, source?: NodeJS.ProcessEnv): string;
|
|
48
51
|
/** Native login must never inherit a provider key or endpoint override. */
|
|
49
52
|
export declare function nativeLoginEnv(harness: string, source?: NodeJS.ProcessEnv, configDirOverride?: string): NodeJS.ProcessEnv;
|
|
53
|
+
/** Same resolver evidence when login cannot produce a runnable command. */
|
|
54
|
+
export declare function nativeLoginUnavailableDetail(harness: string): string | null;
|
|
50
55
|
export {};
|
|
51
56
|
//# sourceMappingURL=native-login.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-login.d.ts","sourceRoot":"","sources":["../src/native-login.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"native-login.d.ts","sourceRoot":"","sources":["../src/native-login.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,kBAAkB,EACxB,MAAM,iBAAiB,CAAC;AAczB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;qCAKiC;IACjC,SAAS,CAAC,EAAE,UAAU,GAAG,aAAa,GAAG,gBAAgB,GAAG,2BAA2B,CAAC;IACxF,qFAAqF;IACrF,aAAa,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAChD;uEACmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;kFAC8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;AAQxD;;8CAE8C;AAC9C,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAErF,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAqD1C;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAK5D,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,cAAqC,EAC/C,SAAS,CAAC,EAAE,cAAc,GACzB,eAAe,GAAG,IAAI,CAqExB;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAExE;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAM,CAAC,UAAwB,GACtC,MAAM,CAeR;AAED,2EAA2E;AAC3E,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,iBAAiB,CAAC,EAAE,MAAM,GACzB,MAAM,CAAC,UAAU,CAgFnB;AAED,2EAA2E;AAC3E,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG3E"}
|