@cleocode/core 2026.9.25 → 2026.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/import-tasks.d.ts.map +1 -1
- package/dist/admin/import-tasks.js +5 -2
- package/dist/admin/import-tasks.js.map +1 -1
- package/dist/admin/import.d.ts.map +1 -1
- package/dist/admin/import.js +7 -2
- package/dist/admin/import.js.map +1 -1
- package/dist/build-provenance.json +2 -2
- package/dist/cloud/index.d.ts +1 -0
- package/dist/cloud/index.d.ts.map +1 -1
- package/dist/cloud/index.js +1 -0
- package/dist/cloud/index.js.map +1 -1
- package/dist/cloud/nexus-attach.d.ts +94 -0
- package/dist/cloud/nexus-attach.d.ts.map +1 -0
- package/dist/cloud/nexus-attach.js +192 -0
- package/dist/cloud/nexus-attach.js.map +1 -0
- package/dist/cloud/nexus-auth.d.ts +41 -4
- package/dist/cloud/nexus-auth.d.ts.map +1 -1
- package/dist/cloud/nexus-auth.js +151 -38
- package/dist/cloud/nexus-auth.js.map +1 -1
- package/dist/cloud/nexus-cloud-status.d.ts +132 -0
- package/dist/cloud/nexus-cloud-status.d.ts.map +1 -0
- package/dist/cloud/nexus-cloud-status.js +440 -0
- package/dist/cloud/nexus-cloud-status.js.map +1 -0
- package/dist/cloud/nexus-cloud.d.ts +179 -0
- package/dist/cloud/nexus-cloud.d.ts.map +1 -0
- package/dist/cloud/nexus-cloud.js +296 -0
- package/dist/cloud/nexus-cloud.js.map +1 -0
- package/dist/cloud/nexus-credentials.js +2 -2
- package/dist/cloud/nexus-credentials.js.map +1 -1
- package/dist/cloud/nexus-device.d.ts +834 -0
- package/dist/cloud/nexus-device.d.ts.map +1 -0
- package/dist/cloud/nexus-device.js +1727 -0
- package/dist/cloud/nexus-device.js.map +1 -0
- package/dist/cloud/nexus-enrol.d.ts +241 -0
- package/dist/cloud/nexus-enrol.d.ts.map +1 -0
- package/dist/cloud/nexus-enrol.js +1163 -0
- package/dist/cloud/nexus-enrol.js.map +1 -0
- package/dist/cloud/nexus-link.d.ts +10 -0
- package/dist/cloud/nexus-link.d.ts.map +1 -1
- package/dist/cloud/nexus-link.js +172 -11
- package/dist/cloud/nexus-link.js.map +1 -1
- package/dist/cloud/nexus-logout.d.ts +114 -0
- package/dist/cloud/nexus-logout.d.ts.map +1 -0
- package/dist/cloud/nexus-logout.js +429 -0
- package/dist/cloud/nexus-logout.js.map +1 -0
- package/dist/cloud/signing.d.ts +20 -0
- package/dist/cloud/signing.d.ts.map +1 -1
- package/dist/cloud/signing.js +14 -0
- package/dist/cloud/signing.js.map +1 -1
- package/dist/crypto/credentials.d.ts +61 -0
- package/dist/crypto/credentials.d.ts.map +1 -1
- package/dist/crypto/credentials.js +154 -58
- package/dist/crypto/credentials.js.map +1 -1
- package/dist/docs/export-document.js +1072 -227
- package/dist/docs/export-document.js.map +3 -3
- package/dist/doctor/dependency-cycles.d.ts +41 -0
- package/dist/doctor/dependency-cycles.d.ts.map +1 -0
- package/dist/doctor/dependency-cycles.js +39 -0
- package/dist/doctor/dependency-cycles.js.map +1 -0
- package/dist/doctor/index.d.ts +2 -0
- package/dist/doctor/index.d.ts.map +1 -1
- package/dist/doctor/index.js +1 -0
- package/dist/doctor/index.js.map +1 -1
- package/dist/doctor/row-identity.d.ts +11 -0
- package/dist/doctor/row-identity.d.ts.map +1 -1
- package/dist/doctor/row-identity.js +67 -9
- package/dist/doctor/row-identity.js.map +1 -1
- package/dist/error-catalog.d.ts.map +1 -1
- package/dist/error-catalog.js +4 -0
- package/dist/error-catalog.js.map +1 -1
- package/dist/error-registry.d.ts.map +1 -1
- package/dist/error-registry.js +8 -0
- package/dist/error-registry.js.map +1 -1
- package/dist/llm/plugin-facade.js +1200 -355
- package/dist/llm/plugin-facade.js.map +3 -3
- package/dist/nexus/workspace.d.ts.map +1 -1
- package/dist/nexus/workspace.js +54 -4
- package/dist/nexus/workspace.js.map +1 -1
- package/dist/orchestrate/lifecycle-ops.js +1 -1
- package/dist/orchestrate/lifecycle-ops.js.map +1 -1
- package/dist/orchestrate/pivot.d.ts.map +1 -1
- package/dist/orchestrate/pivot.js +4 -2
- package/dist/orchestrate/pivot.js.map +1 -1
- package/dist/orchestrate/query-ops.d.ts.map +1 -1
- package/dist/orchestrate/query-ops.js +3 -3
- package/dist/orchestrate/query-ops.js.map +1 -1
- package/dist/orchestrate/spawn-ops.js +1 -1
- package/dist/orchestrate/spawn-ops.js.map +1 -1
- package/dist/orchestration/index.js +1 -1
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/lead-rollup.d.ts.map +1 -1
- package/dist/orchestration/lead-rollup.js +3 -3
- package/dist/orchestration/lead-rollup.js.map +1 -1
- package/dist/orchestration/parallel.js +1 -1
- package/dist/orchestration/parallel.js.map +1 -1
- package/dist/orchestration/wave-topic.d.ts +4 -2
- package/dist/orchestration/wave-topic.d.ts.map +1 -1
- package/dist/orchestration/wave-topic.js +6 -4
- package/dist/orchestration/wave-topic.js.map +1 -1
- package/dist/orchestration/waves.d.ts +2 -1
- package/dist/orchestration/waves.d.ts.map +1 -1
- package/dist/orchestration/waves.js +4 -3
- package/dist/orchestration/waves.js.map +1 -1
- package/dist/phases/index.d.ts.map +1 -1
- package/dist/phases/index.js +4 -2
- package/dist/phases/index.js.map +1 -1
- package/dist/selfimprove/fix-gen.js +1203 -358
- package/dist/selfimprove/fix-gen.js.map +3 -3
- package/dist/session/engine-ops.d.ts.map +1 -1
- package/dist/session/engine-ops.js +77 -49
- package/dist/session/engine-ops.js.map +1 -1
- package/dist/sessions/focus-state-store.d.ts +69 -23
- package/dist/sessions/focus-state-store.d.ts.map +1 -1
- package/dist/sessions/focus-state-store.js +113 -27
- package/dist/sessions/focus-state-store.js.map +1 -1
- package/dist/sessions/handoff.js +1 -1
- package/dist/sessions/handoff.js.map +1 -1
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +24 -13
- package/dist/sessions/index.js.map +1 -1
- package/dist/sessions/terminal-identity.d.ts +165 -17
- package/dist/sessions/terminal-identity.d.ts.map +1 -1
- package/dist/sessions/terminal-identity.js +341 -32
- package/dist/sessions/terminal-identity.js.map +1 -1
- package/dist/setup/sections/nexus-account.d.ts +8 -6
- package/dist/setup/sections/nexus-account.d.ts.map +1 -1
- package/dist/setup/sections/nexus-account.js +53 -9
- package/dist/setup/sections/nexus-account.js.map +1 -1
- package/dist/skills/orchestrator/startup.js +2 -2
- package/dist/skills/orchestrator/startup.js.map +1 -1
- package/dist/snapshot/index.d.ts +4 -0
- package/dist/snapshot/index.d.ts.map +1 -1
- package/dist/snapshot/index.js +50 -3
- package/dist/snapshot/index.js.map +1 -1
- package/dist/store/db-helpers.d.ts +15 -2
- package/dist/store/db-helpers.d.ts.map +1 -1
- package/dist/store/db-helpers.js +84 -3
- package/dist/store/db-helpers.js.map +1 -1
- package/dist/store/dependency-cycles.d.ts +164 -0
- package/dist/store/dependency-cycles.d.ts.map +1 -0
- package/dist/store/dependency-cycles.js +360 -0
- package/dist/store/dependency-cycles.js.map +1 -0
- package/dist/store/display-id-alias.d.ts +93 -37
- package/dist/store/display-id-alias.d.ts.map +1 -1
- package/dist/store/display-id-alias.js +590 -115
- package/dist/store/display-id-alias.js.map +1 -1
- package/dist/store/dual-scope-db.d.ts.map +1 -1
- package/dist/store/dual-scope-db.js +34 -7
- package/dist/store/dual-scope-db.js.map +1 -1
- package/dist/store/exodus/migrate.d.ts.map +1 -1
- package/dist/store/exodus/migrate.js +8 -1
- package/dist/store/exodus/migrate.js.map +1 -1
- package/dist/store/global-salt.d.ts +35 -0
- package/dist/store/global-salt.d.ts.map +1 -1
- package/dist/store/global-salt.js +136 -16
- package/dist/store/global-salt.js.map +1 -1
- package/dist/store/migration-sqlite.d.ts.map +1 -1
- package/dist/store/migration-sqlite.js +19 -11
- package/dist/store/migration-sqlite.js.map +1 -1
- package/dist/store/portable-bundle-scan.d.ts.map +1 -1
- package/dist/store/portable-bundle-scan.js +6 -0
- package/dist/store/portable-bundle-scan.js.map +1 -1
- package/dist/store/row-identity-registry.d.ts.map +1 -1
- package/dist/store/row-identity-registry.js +11 -3
- package/dist/store/row-identity-registry.js.map +1 -1
- package/dist/store/row-identity.d.ts +91 -1
- package/dist/store/row-identity.d.ts.map +1 -1
- package/dist/store/row-identity.js +276 -7
- package/dist/store/row-identity.js.map +1 -1
- package/dist/store/safety-data-accessor.d.ts +3 -2
- package/dist/store/safety-data-accessor.d.ts.map +1 -1
- package/dist/store/safety-data-accessor.js +5 -2
- package/dist/store/safety-data-accessor.js.map +1 -1
- package/dist/store/session-store.d.ts +63 -3
- package/dist/store/session-store.d.ts.map +1 -1
- package/dist/store/session-store.js +121 -8
- package/dist/store/session-store.js.map +1 -1
- package/dist/store/split-brain-import.d.ts.map +1 -1
- package/dist/store/split-brain-import.js +36 -0
- package/dist/store/split-brain-import.js.map +1 -1
- package/dist/store/sqlite-data-accessor.d.ts +50 -3
- package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
- package/dist/store/sqlite-data-accessor.js +246 -13
- package/dist/store/sqlite-data-accessor.js.map +1 -1
- package/dist/store/sync/replica.d.ts +34 -3
- package/dist/store/sync/replica.d.ts.map +1 -1
- package/dist/store/sync/replica.js +39 -2
- package/dist/store/sync/replica.js.map +1 -1
- package/dist/store/sync/schema.d.ts +6 -3
- package/dist/store/sync/schema.d.ts.map +1 -1
- package/dist/store/sync/schema.js +6 -3
- package/dist/store/sync/schema.js.map +1 -1
- package/dist/store/tasks-sqlite.d.ts.map +1 -1
- package/dist/store/tasks-sqlite.js +14 -2
- package/dist/store/tasks-sqlite.js.map +1 -1
- package/dist/store/umbrella-data-accessor.d.ts +3 -2
- package/dist/store/umbrella-data-accessor.d.ts.map +1 -1
- package/dist/store/umbrella-data-accessor.js +5 -2
- package/dist/store/umbrella-data-accessor.js.map +1 -1
- package/dist/system/health.d.ts +2 -0
- package/dist/system/health.d.ts.map +1 -1
- package/dist/system/health.js +54 -0
- package/dist/system/health.js.map +1 -1
- package/dist/task-work/index.d.ts.map +1 -1
- package/dist/task-work/index.js +9 -6
- package/dist/task-work/index.js.map +1 -1
- package/dist/tasks/analyze.d.ts.map +1 -1
- package/dist/tasks/analyze.js +3 -2
- package/dist/tasks/analyze.js.map +1 -1
- package/dist/tasks/evidence.d.ts +19 -1
- package/dist/tasks/evidence.d.ts.map +1 -1
- package/dist/tasks/evidence.js +79 -18
- package/dist/tasks/evidence.js.map +1 -1
- package/dist/tasks/infer-add-params.js +1 -1
- package/dist/tasks/infer-add-params.js.map +1 -1
- package/dist/tasks/task-context.d.ts.map +1 -1
- package/dist/tasks/task-context.js +3 -1
- package/dist/tasks/task-context.js.map +1 -1
- package/dist/tasks/task-import.d.ts.map +1 -1
- package/dist/tasks/task-import.js +11 -3
- package/dist/tasks/task-import.js.map +1 -1
- package/dist/tasks/task-next.d.ts +5 -1
- package/dist/tasks/task-next.d.ts.map +1 -1
- package/dist/tasks/task-next.js +7 -2
- package/dist/tasks/task-next.js.map +1 -1
- package/dist/validation/engine-ops.d.ts.map +1 -1
- package/dist/validation/engine-ops.js +3 -2
- package/dist/validation/engine-ops.js.map +1 -1
- package/dist/workgraph/scaffold-apply.d.ts.map +1 -1
- package/dist/workgraph/scaffold-apply.js +14 -5
- package/dist/workgraph/scaffold-apply.js.map +1 -1
- package/migrations/drizzle-cleo-project/20260930160000_t12886-dependency-cycle-guard/migration.sql +76 -0
- package/migrations/drizzle-cleo-project/20260930160000_t12886-dependency-cycle-guard/revert.sql +7 -0
- package/package.json +13 -13
- package/templates/CLEO-INJECTION.md +2 -2
- package/templates/CLEO-REFERENCE.md +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nexus-device.js","sourceRoot":"","sources":["../../src/cloud/nexus-device.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cleo Nexus device enrolment: the device half of `cleo login nexus` and the
|
|
3
|
+
* one-time upgrade of a 9.24 bearer session (cleo-nexus device contract v2.9,
|
|
4
|
+
* §3.3 steps 4 to 10, §3.4). Everything here runs only with device
|
|
5
|
+
* credentials on ({@link isNexusDeviceEnabled}: the default since T12904);
|
|
6
|
+
* with `CLEO_NEXUS_DEVICE=0` the CLI keeps the 9.24 session flow in
|
|
7
|
+
* `nexus-auth.ts` untouched.
|
|
8
|
+
*
|
|
9
|
+
* Lock discipline (v2.9). `nexus-device.json`'s lock is held only around local
|
|
10
|
+
* read-modify-writes, never across a network call:
|
|
11
|
+
*
|
|
12
|
+
* 1. under the lock: re-read, check, persist the identity and the E1 intent;
|
|
13
|
+
* 2. release the lock, send the request with a plain timeout;
|
|
14
|
+
* 3. re-take the lock and re-check with a compare-and-swap before storing.
|
|
15
|
+
*
|
|
16
|
+
* Racing logins on one home (step 7). When the file already holds a different
|
|
17
|
+
* credential for the same (origin, user), E2 (`/v1/whoami`) is asked about
|
|
18
|
+
* each credential and the one that answers 200 is kept; the other is dropped
|
|
19
|
+
* with no E9 and no `pendingSignOut` (the server already refused it). Both
|
|
20
|
+
* 200: the later `createdAt` wins and a `W_NEXUS_LOGIN_RACE_BOTH_LIVE`
|
|
21
|
+
* warning is added. Both 401: neither is kept and a login is required. A
|
|
22
|
+
* network error or 5xx leaves the file as it is.
|
|
23
|
+
*
|
|
24
|
+
* No function here logs, no result or error carries a token or key, and no
|
|
25
|
+
* guarded entry is ever spread: every entry change goes through the store's
|
|
26
|
+
* `apply*` transitions.
|
|
27
|
+
*
|
|
28
|
+
* @task T12868
|
|
29
|
+
* @epic T12323
|
|
30
|
+
*/
|
|
31
|
+
import { type NexusLoginResult } from '@cleocode/contracts';
|
|
32
|
+
import type { DeviceCodeStartResponse } from '../llm/oauth/device-code.js';
|
|
33
|
+
import { type FetchLike } from './http.js';
|
|
34
|
+
import { type NexusTokenStore } from './nexus-credentials.js';
|
|
35
|
+
import { NexusDeviceStore, type SealedNexusDevice } from './nexus-device.js';
|
|
36
|
+
/**
|
|
37
|
+
* E1's request timeout. An upgrade intent older than this is stale: the
|
|
38
|
+
* process that wrote it has given up or died (§3.4 step 1).
|
|
39
|
+
*/
|
|
40
|
+
export declare const NEXUS_ENROL_TIMEOUT_MS = 30000;
|
|
41
|
+
/** Timeout of one E2 (`/v1/whoami`) call. */
|
|
42
|
+
export declare const NEXUS_WHOAMI_TIMEOUT_MS = 15000;
|
|
43
|
+
/** How long an upgrade waits for another process's live upgrade intent (the ~60 s lock budget). */
|
|
44
|
+
export declare const NEXUS_UPGRADE_WAIT_MS = 60000;
|
|
45
|
+
/** Interval between locked re-reads while waiting for another process's upgrade. */
|
|
46
|
+
export declare const NEXUS_UPGRADE_POLL_MS = 250;
|
|
47
|
+
/** Slack added to the stale age of an E1 intent, over its owner's E2 and E1 timeouts. */
|
|
48
|
+
export declare const NEXUS_INTENT_MARGIN_MS = 15000;
|
|
49
|
+
/**
|
|
50
|
+
* Age after which another process's E1 intent is stale (§3.4 step 1). A live
|
|
51
|
+
* owner can be E2 plus E1 past `startedAt` (it also refreshes `startedAt`
|
|
52
|
+
* right before E1), so the threshold is derived from both timeouts plus a
|
|
53
|
+
* margin, never E1's timeout alone (security review M1).
|
|
54
|
+
*/
|
|
55
|
+
export declare const NEXUS_INTENT_STALE_MS: number;
|
|
56
|
+
/** Warning code: two racing logins both held a live credential (§3.3 step 7, ruling A). */
|
|
57
|
+
export declare const W_NEXUS_LOGIN_RACE_BOTH_LIVE = "W_NEXUS_LOGIN_RACE_BOTH_LIVE";
|
|
58
|
+
/** Warning code: the chosen device name is this machine's hostname (L8). */
|
|
59
|
+
export declare const W_NEXUS_DEVICE_NAME_IS_HOSTNAME = "W_NEXUS_DEVICE_NAME_IS_HOSTNAME";
|
|
60
|
+
/**
|
|
61
|
+
* STAGING ONLY: environment variable holding a better-auth session bearer
|
|
62
|
+
* minted by the staging test-signup endpoint (`POST /v1/test/users` on
|
|
63
|
+
* {@link NEXUS_STAGING_API_ORIGIN}). With it, {@link loginToNexusDevice}
|
|
64
|
+
* skips the browser device-code step, for browserless end-to-end tests. It is
|
|
65
|
+
* honoured only when the login targets exactly {@link NEXUS_STAGING_API_ORIGIN}.
|
|
66
|
+
*/
|
|
67
|
+
export declare const NEXUS_TEST_BEARER_ENV = "CLEO_NEXUS_TEST_BEARER";
|
|
68
|
+
/** The only API origin that honours {@link NEXUS_TEST_BEARER_ENV}. */
|
|
69
|
+
export declare const NEXUS_STAGING_API_ORIGIN = "https://api.staging.cleocode.dev";
|
|
70
|
+
/** Warning code: {@link NEXUS_TEST_BEARER_ENV} is set but the login does not target staging, so it was ignored. */
|
|
71
|
+
export declare const W_NEXUS_TEST_BEARER_IGNORED = "W_NEXUS_TEST_BEARER_IGNORED";
|
|
72
|
+
/** Dependencies of the device flows; all optional (tests inject them). */
|
|
73
|
+
export interface NexusDeviceFlowOptions {
|
|
74
|
+
/** API URL; defaults to `$CLEO_NEXUS_API_URL`, then production. */
|
|
75
|
+
apiUrl?: string;
|
|
76
|
+
/** `fetch` override. */
|
|
77
|
+
fetch?: FetchLike;
|
|
78
|
+
/** The device store; defaults to `<cleoHome>/nexus-device.json`. */
|
|
79
|
+
deviceStore?: NexusDeviceStore;
|
|
80
|
+
/** The 9.24 session store (`nexus-credentials.json`). */
|
|
81
|
+
store?: NexusTokenStore;
|
|
82
|
+
/** Clock (intent ages, `createdAt`). */
|
|
83
|
+
now?: () => Date;
|
|
84
|
+
/** Wait between locked re-reads (tests). */
|
|
85
|
+
sleep?: (ms: number) => Promise<void>;
|
|
86
|
+
/** E1 timeout; also the staleness threshold of an upgrade intent. */
|
|
87
|
+
enrolTimeoutMs?: number;
|
|
88
|
+
/** E2 timeout. */
|
|
89
|
+
whoamiTimeoutMs?: number;
|
|
90
|
+
/** Budget for waiting on another process's upgrade. */
|
|
91
|
+
upgradeWaitMs?: number;
|
|
92
|
+
/** Interval between re-reads while waiting. */
|
|
93
|
+
upgradePollMs?: number;
|
|
94
|
+
/** Margin over E2 + E1 timeouts before an intent is stale; default {@link NEXUS_INTENT_MARGIN_MS}. */
|
|
95
|
+
intentMarginMs?: number;
|
|
96
|
+
/** CLEO version sent as `cliVersion`; defaults to the installed one. */
|
|
97
|
+
cliVersion?: string;
|
|
98
|
+
}
|
|
99
|
+
/** Options for {@link loginToNexusDevice}. */
|
|
100
|
+
export interface NexusDeviceLoginOptions extends NexusDeviceFlowOptions {
|
|
101
|
+
/** Enrol with the `read-only` profile (`--read-only`). */
|
|
102
|
+
readOnly?: boolean;
|
|
103
|
+
/** Device name (`--name`); defaults to a generic name without the hostname. */
|
|
104
|
+
name?: string;
|
|
105
|
+
/** Called once with the user code and verification URL to show the user. */
|
|
106
|
+
onCode?: (code: DeviceCodeStartResponse) => void;
|
|
107
|
+
/** Called on every pending poll with elapsed and total seconds. */
|
|
108
|
+
onPending?: (elapsed: number, expiresIn: number) => void;
|
|
109
|
+
/** Cancels polling. */
|
|
110
|
+
signal?: AbortSignal;
|
|
111
|
+
/** Wait override for device-code polling (tests). */
|
|
112
|
+
pollSleep?: (ms: number) => Promise<void>;
|
|
113
|
+
}
|
|
114
|
+
/** Result of {@link upgradeNexusSession}. Holds no secret. */
|
|
115
|
+
export interface NexusSessionUpgradeResult {
|
|
116
|
+
/**
|
|
117
|
+
* - `upgraded`: this process enrolled the device from the 9.24 session;
|
|
118
|
+
* - `already-enrolled`: a device credential already existed (another
|
|
119
|
+
* process upgraded, or a login ran); the leftover session was removed;
|
|
120
|
+
* - `no-session`: there was no 9.24 session for the origin.
|
|
121
|
+
*/
|
|
122
|
+
readonly outcome: 'upgraded' | 'already-enrolled' | 'no-session';
|
|
123
|
+
/** The device entry now holding the credential, or `null` for `no-session`. */
|
|
124
|
+
readonly device: SealedNexusDevice | null;
|
|
125
|
+
/** Non-fatal problems. */
|
|
126
|
+
readonly warnings: readonly string[];
|
|
127
|
+
}
|
|
128
|
+
/** Result of {@link ensureNexusDeviceCredential}. Holds no secret in any enumerable field. */
|
|
129
|
+
export interface NexusDeviceCredentialHandle {
|
|
130
|
+
/** The entry; `currentBearer()` builds the `Authorization` header. */
|
|
131
|
+
readonly device: SealedNexusDevice;
|
|
132
|
+
/** `true` when a 9.24 session was upgraded to reach it. */
|
|
133
|
+
readonly upgraded: boolean;
|
|
134
|
+
/** Non-fatal problems. */
|
|
135
|
+
readonly warnings: readonly string[];
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Map an API failure to the CLI's error codes (device contract §4.0.4). The
|
|
139
|
+
* reasons handled internally by the enrolment and rotation flows
|
|
140
|
+
* (`device-revoked` and `device-other-account` on E1, `device-id-taken`,
|
|
141
|
+
* `device-keys-changed`, `project-id-taken`) are mapped by their callers
|
|
142
|
+
* first; anything reaching this function is reported.
|
|
143
|
+
*
|
|
144
|
+
* @param err - The thrown error.
|
|
145
|
+
* @returns A {@link NexusAccountError} with a stable code, or `err` itself
|
|
146
|
+
* when it is not an API failure.
|
|
147
|
+
*/
|
|
148
|
+
export declare function nexusApiErrorToAccountError(err: unknown): Error;
|
|
149
|
+
/**
|
|
150
|
+
* The default device name (§3.2): `<OS label> <arch> · <first 4 hex of the
|
|
151
|
+
* device id>`. The hostname is never used.
|
|
152
|
+
*
|
|
153
|
+
* @param deviceId - The Nexus device id.
|
|
154
|
+
* @param platform - `process.platform`.
|
|
155
|
+
* @param arch - `process.arch`.
|
|
156
|
+
* @returns For example `macOS arm64 · 01f3`.
|
|
157
|
+
*/
|
|
158
|
+
export declare function defaultNexusDeviceName(deviceId: string, platform?: NodeJS.Platform, arch?: string): string;
|
|
159
|
+
/**
|
|
160
|
+
* `cleo login nexus` with device credentials (contract §3.3): the device-code
|
|
161
|
+
* login gives a session held in memory only; the session enrols this machine
|
|
162
|
+
* as a device (E1), is signed out, and only the scoped device credential is
|
|
163
|
+
* stored, sealed, in `nexus-device.json`. `nexus-credentials.json` is never
|
|
164
|
+
* written.
|
|
165
|
+
*
|
|
166
|
+
* Environment:
|
|
167
|
+
*
|
|
168
|
+
* - `CLEO_NEXUS_API_URL`: the API origin when `opts.apiUrl` is not given.
|
|
169
|
+
* - `CLEO_NEXUS_TEST_BEARER` ({@link NEXUS_TEST_BEARER_ENV}), STAGING ONLY: a
|
|
170
|
+
* better-auth session bearer minted by the staging test-signup endpoint
|
|
171
|
+
* (`POST /v1/test/users` on {@link NEXUS_STAGING_API_ORIGIN}). When the
|
|
172
|
+
* resolved origin is exactly {@link NEXUS_STAGING_API_ORIGIN}, the
|
|
173
|
+
* device-code step is skipped and that bearer runs the same E2 (whoami),
|
|
174
|
+
* E1 (enrol) and sign-out path as a browser login. For any other origin it
|
|
175
|
+
* is ignored with a {@link W_NEXUS_TEST_BEARER_IGNORED} warning. Its value
|
|
176
|
+
* never appears in a result, warning, error or log.
|
|
177
|
+
*
|
|
178
|
+
* @param opts - API URL, profile, name, UI hooks and test overrides.
|
|
179
|
+
* @returns The secret-free login result, with the device and its scopes.
|
|
180
|
+
* @throws {NexusAccountError} `E_NEXUS_REVOKE_PENDING` while a revoke of this
|
|
181
|
+
* device is unconfirmed; `E_NEXUS_UNREACHABLE`; the §4.0.4 mappings.
|
|
182
|
+
*/
|
|
183
|
+
export declare function loginToNexusDevice(opts?: NexusDeviceLoginOptions): Promise<NexusLoginResult>;
|
|
184
|
+
/**
|
|
185
|
+
* Upgrade a 9.24 session to a device credential, once (contract §3.4).
|
|
186
|
+
*
|
|
187
|
+
* Under `nexus-device.json`'s lock, then `nexus-credentials.json`'s (always in
|
|
188
|
+
* that order), both files are re-read:
|
|
189
|
+
*
|
|
190
|
+
* - the device file already holds a credential for (origin, user): another
|
|
191
|
+
* process upgraded; the leftover session is removed and E1 is not called;
|
|
192
|
+
* - the session is gone from the v1 file: another process consumed it;
|
|
193
|
+
* - another process's upgrade intent is live: the locks are released and
|
|
194
|
+
* this process waits for it (re-reading under the lock), never calling E1;
|
|
195
|
+
* - an intent older than E1's timeout is stale, and is taken over only when
|
|
196
|
+
* this locked re-read finds no credential and that same intent.
|
|
197
|
+
*
|
|
198
|
+
* Otherwise the identity and the upgrade intent are persisted, the locks are
|
|
199
|
+
* released, and steps 4 to 9 run with the stored session. E1 accepts it once
|
|
200
|
+
* (the auto-upgrade exemption) and deletes it, so a lost answer is reported
|
|
201
|
+
* as needing a browser login, and the session is removed so no later command
|
|
202
|
+
* retries it.
|
|
203
|
+
*
|
|
204
|
+
* When E1 answers 401 `session-used` (v2.12: a concurrent E1 consumed the
|
|
205
|
+
* session first), the session is removed and `nexus-device.json` is re-read
|
|
206
|
+
* every `upgradePollMs` for up to `upgradeWaitMs`: once another process has
|
|
207
|
+
* stored a credential there, the outcome is `already-enrolled`; if none
|
|
208
|
+
* appears, `E_NEXUS_SESSION_EXPIRED` asks for a browser login.
|
|
209
|
+
*
|
|
210
|
+
* @param opts - API URL, stores and test overrides.
|
|
211
|
+
* @returns What happened; never a secret.
|
|
212
|
+
* @throws {NexusAccountError} `E_NEXUS_SESSION_EXPIRED` (browser login
|
|
213
|
+
* needed), `E_NEXUS_BUSY`, `E_NEXUS_REVOKE_PENDING`, or a §4.0.4 mapping.
|
|
214
|
+
*/
|
|
215
|
+
export declare function upgradeNexusSession(opts?: NexusDeviceFlowOptions): Promise<NexusSessionUpgradeResult>;
|
|
216
|
+
/** Options for {@link ensureNexusDeviceCredential}. */
|
|
217
|
+
export interface NexusDeviceCredentialOptions extends NexusDeviceFlowOptions {
|
|
218
|
+
/**
|
|
219
|
+
* The Nexus user whose device credential to use. Without it, the origin
|
|
220
|
+
* must hold exactly one account's credential (security review L2).
|
|
221
|
+
*/
|
|
222
|
+
userId?: string;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* The device credential for commands that need one (with device credentials (the default; `CLEO_NEXUS_DEVICE=0` turns them off)).
|
|
226
|
+
*
|
|
227
|
+
* - A 9.24 session still in `nexus-credentials.json` is upgraded first, once
|
|
228
|
+
* (§3.4); a leftover session next to an existing credential is signed out
|
|
229
|
+
* and removed.
|
|
230
|
+
* - The account is `opts.userId`, else the upgraded one, else the only one
|
|
231
|
+
* on the origin; with several, it refuses and lists them.
|
|
232
|
+
* - A racing login's parked credential is settled with E2 first (§3.3 step
|
|
233
|
+
* 7); without an answer the current credential is used and a warning added.
|
|
234
|
+
*
|
|
235
|
+
* @param opts - API URL, account, stores and test overrides.
|
|
236
|
+
* @returns The sealed device entry and whether an upgrade ran.
|
|
237
|
+
* @throws {NexusAccountError} `E_NEXUS_NOT_SIGNED_IN` with no usable
|
|
238
|
+
* credential, `E_NEXUS_ACCOUNT_AMBIGUOUS`, or the upgrade's errors.
|
|
239
|
+
*/
|
|
240
|
+
export declare function ensureNexusDeviceCredential(opts?: NexusDeviceCredentialOptions): Promise<NexusDeviceCredentialHandle>;
|
|
241
|
+
//# sourceMappingURL=nexus-enrol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nexus-enrol.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-enrol.ts"],"names":[],"mappings":"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"}
|