@neurcode-ai/cli 0.20.21 → 0.20.22
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/commands/init.d.ts +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +69 -10
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/repo.d.ts.map +1 -1
- package/dist/commands/repo.js +67 -0
- package/dist/commands/repo.js.map +1 -1
- package/dist/commands/runtime-sync.d.ts +1 -0
- package/dist/commands/runtime-sync.d.ts.map +1 -1
- package/dist/commands/runtime-sync.js +69 -2
- package/dist/commands/runtime-sync.js.map +1 -1
- package/dist/commands/telemetry.d.ts.map +1 -1
- package/dist/commands/telemetry.js +10 -2
- package/dist/commands/telemetry.js.map +1 -1
- package/dist/runtime-build.json +4 -4
- package/dist/utils/activation-proof.d.ts +62 -0
- package/dist/utils/activation-proof.d.ts.map +1 -0
- package/dist/utils/activation-proof.js +303 -0
- package/dist/utils/activation-proof.js.map +1 -0
- package/dist/utils/activation-telemetry.d.ts +1 -0
- package/dist/utils/activation-telemetry.d.ts.map +1 -1
- package/dist/utils/activation-telemetry.js +8 -0
- package/dist/utils/activation-telemetry.js.map +1 -1
- package/dist/utils/first-value-proof.d.ts.map +1 -1
- package/dist/utils/first-value-proof.js +40 -1
- package/dist/utils/first-value-proof.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.telemetryCommand = telemetryCommand;
|
|
4
4
|
const activation_telemetry_1 = require("../utils/activation-telemetry");
|
|
5
|
+
const activation_proof_1 = require("../utils/activation-proof");
|
|
5
6
|
let chalk;
|
|
6
7
|
try {
|
|
7
8
|
chalk = require('chalk');
|
|
@@ -21,7 +22,10 @@ function printStatus() {
|
|
|
21
22
|
console.log(` Env override: ${status.envDisabled ? 'NEURCODE_TELEMETRY=0' : 'none'}`);
|
|
22
23
|
console.log(` Install ID: ${status.anonymousInstallId}`);
|
|
23
24
|
console.log(` Queue: ${status.queueLength} event${status.queueLength === 1 ? '' : 's'}`);
|
|
25
|
+
const proof = (0, activation_proof_1.getFirstValueActivationProofQueueStatus)();
|
|
26
|
+
console.log(` Proof queue: ${proof.queueLength} proof${proof.queueLength === 1 ? '' : 's'}`);
|
|
24
27
|
console.log(chalk.dim(` State file: ${status.path}`));
|
|
28
|
+
console.log(chalk.dim(` Proof file: ${proof.path}`));
|
|
25
29
|
console.log(chalk.dim(' Source-free: no source, prompts, diffs, secrets, paths, raw args, raw IP, or repo contents.'));
|
|
26
30
|
}
|
|
27
31
|
function telemetryCommand(program) {
|
|
@@ -56,8 +60,12 @@ function telemetryCommand(program) {
|
|
|
56
60
|
.command('flush')
|
|
57
61
|
.description('Flush queued activation telemetry now')
|
|
58
62
|
.action(async () => {
|
|
59
|
-
const result = await
|
|
60
|
-
|
|
63
|
+
const [result, proof] = await Promise.all([
|
|
64
|
+
(0, activation_telemetry_1.flushActivationTelemetry)(),
|
|
65
|
+
(0, activation_proof_1.flushFirstValueActivationProofQueue)(),
|
|
66
|
+
]);
|
|
67
|
+
console.log(`Flushed ${result.sent}/${result.attempted} telemetry event${result.attempted === 1 ? '' : 's'}; ${result.remaining} queued.`);
|
|
68
|
+
console.log(`Flushed ${proof.synced}/${proof.attempted} activation proof${proof.attempted === 1 ? '' : 's'}; ${proof.remaining} queued, ${proof.dropped} dropped.`);
|
|
61
69
|
});
|
|
62
70
|
}
|
|
63
71
|
//# sourceMappingURL=telemetry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/commands/telemetry.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/commands/telemetry.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime-build.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "neurcode.cli-build.v1",
|
|
3
|
-
"version": "0.20.
|
|
4
|
-
"gitCommit": "
|
|
5
|
-
"builtAt": "2026-07-
|
|
3
|
+
"version": "0.20.22",
|
|
4
|
+
"gitCommit": "f0348f6e9c07ad40b0b05fd16e39b7b21a3b3d19",
|
|
5
|
+
"builtAt": "2026-07-02T05:33:09.022Z",
|
|
6
6
|
"entryFile": "index.js",
|
|
7
7
|
"entrySize": 104209,
|
|
8
|
-
"entryMtimeMs":
|
|
8
|
+
"entryMtimeMs": 1782970388691.2737
|
|
9
9
|
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { type FirstValueActivationProofPayload } from '@neurcode-ai/contracts';
|
|
2
|
+
export interface QueuedFirstValueActivationProof {
|
|
3
|
+
proof: FirstValueActivationProofPayload;
|
|
4
|
+
orgId?: string | null;
|
|
5
|
+
apiUrl?: string | null;
|
|
6
|
+
queuedAt: string;
|
|
7
|
+
attempts: number;
|
|
8
|
+
lastReasonCode?: string | null;
|
|
9
|
+
}
|
|
10
|
+
export interface SubmitFirstValueActivationProofResult {
|
|
11
|
+
synced: boolean;
|
|
12
|
+
queued: boolean;
|
|
13
|
+
duplicate: boolean;
|
|
14
|
+
reasonCode: string;
|
|
15
|
+
status?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface FlushFirstValueActivationProofResult {
|
|
18
|
+
attempted: number;
|
|
19
|
+
synced: number;
|
|
20
|
+
duplicates: number;
|
|
21
|
+
dropped: number;
|
|
22
|
+
retryable: number;
|
|
23
|
+
remaining: number;
|
|
24
|
+
reasonCodes: string[];
|
|
25
|
+
}
|
|
26
|
+
export declare function firstValueActivationProofQueuePath(): string;
|
|
27
|
+
export declare function buildRepoConnectActivationProof(input: {
|
|
28
|
+
projectId: string;
|
|
29
|
+
commandFamily?: string;
|
|
30
|
+
reasonCode?: string;
|
|
31
|
+
timestamp?: string;
|
|
32
|
+
}): FirstValueActivationProofPayload;
|
|
33
|
+
export declare function queueFirstValueActivationProof(input: {
|
|
34
|
+
proof: FirstValueActivationProofPayload;
|
|
35
|
+
orgId?: string | null;
|
|
36
|
+
apiUrl?: string | null;
|
|
37
|
+
reasonCode?: string | null;
|
|
38
|
+
}): void;
|
|
39
|
+
export declare function submitFirstValueActivationProof(input: {
|
|
40
|
+
proof: FirstValueActivationProofPayload;
|
|
41
|
+
orgId?: string | null;
|
|
42
|
+
apiUrl?: string | null;
|
|
43
|
+
apiKey?: string | null;
|
|
44
|
+
timeoutMs?: number;
|
|
45
|
+
}): Promise<SubmitFirstValueActivationProofResult>;
|
|
46
|
+
export declare function flushFirstValueActivationProofQueue(options?: {
|
|
47
|
+
orgId?: string | null;
|
|
48
|
+
apiUrl?: string | null;
|
|
49
|
+
json?: boolean;
|
|
50
|
+
}): Promise<FlushFirstValueActivationProofResult>;
|
|
51
|
+
export declare function getFirstValueActivationProofQueueStatus(projectId?: string | null): {
|
|
52
|
+
queueLength: number;
|
|
53
|
+
matchingProjectQueued: boolean;
|
|
54
|
+
path: string;
|
|
55
|
+
};
|
|
56
|
+
export declare function readLocalRepoActivationBinding(): {
|
|
57
|
+
orgId: string | null;
|
|
58
|
+
orgName: string | null;
|
|
59
|
+
projectId: string | null;
|
|
60
|
+
linkedAt: string | null;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=activation-proof.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activation-proof.d.ts","sourceRoot":"","sources":["../../src/utils/activation-proof.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,gCAAgC,EACtC,MAAM,wBAAwB,CAAC;AAWhC,MAAM,WAAW,+BAA+B;IAC9C,KAAK,EAAE,gCAAgC,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAQD,MAAM,WAAW,qCAAqC;IACpD,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oCAAoC;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAMD,wBAAgB,kCAAkC,IAAI,MAAM,CAE3D;AA+DD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,gCAAgC,CAiBnC;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE;IACpD,KAAK,EAAE,gCAAgC,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,GAAG,IAAI,CAaP;AAoED,wBAAsB,+BAA+B,CAAC,KAAK,EAAE;IAC3D,KAAK,EAAE,gCAAgC,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,qCAAqC,CAAC,CA6CjD;AAED,wBAAsB,mCAAmC,CAAC,OAAO,GAAE;IACjE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;CACX,GAAG,OAAO,CAAC,oCAAoC,CAAC,CAiErD;AAED,wBAAgB,uCAAuC,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd,CAUA;AAED,wBAAgB,8BAA8B,IAAI;IAChD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAQA"}
|
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.firstValueActivationProofQueuePath = firstValueActivationProofQueuePath;
|
|
4
|
+
exports.buildRepoConnectActivationProof = buildRepoConnectActivationProof;
|
|
5
|
+
exports.queueFirstValueActivationProof = queueFirstValueActivationProof;
|
|
6
|
+
exports.submitFirstValueActivationProof = submitFirstValueActivationProof;
|
|
7
|
+
exports.flushFirstValueActivationProofQueue = flushFirstValueActivationProofQueue;
|
|
8
|
+
exports.getFirstValueActivationProofQueueStatus = getFirstValueActivationProofQueueStatus;
|
|
9
|
+
exports.readLocalRepoActivationBinding = readLocalRepoActivationBinding;
|
|
10
|
+
const crypto_1 = require("crypto");
|
|
11
|
+
const fs_1 = require("fs");
|
|
12
|
+
const path_1 = require("path");
|
|
13
|
+
const contracts_1 = require("@neurcode-ai/contracts");
|
|
14
|
+
const config_1 = require("../config");
|
|
15
|
+
const state_1 = require("./state");
|
|
16
|
+
const activation_telemetry_1 = require("./activation-telemetry");
|
|
17
|
+
const PROOF_DIR = '.neurcode';
|
|
18
|
+
const PROOF_FILE = 'activation-proofs.json';
|
|
19
|
+
const MAX_QUEUE_SIZE = 100;
|
|
20
|
+
const PROOF_FLUSH_TIMEOUT_MS = 1500;
|
|
21
|
+
const MAX_PROOF_AGE_MS = 30 * 24 * 60 * 60 * 1000;
|
|
22
|
+
function homeDir() {
|
|
23
|
+
return process.env.HOME || process.env.USERPROFILE || process.cwd();
|
|
24
|
+
}
|
|
25
|
+
function firstValueActivationProofQueuePath() {
|
|
26
|
+
return (0, path_1.join)(homeDir(), PROOF_DIR, PROOF_FILE);
|
|
27
|
+
}
|
|
28
|
+
function ensureProofDir() {
|
|
29
|
+
const dir = (0, path_1.join)(homeDir(), PROOF_DIR);
|
|
30
|
+
if (!(0, fs_1.existsSync)(dir))
|
|
31
|
+
(0, fs_1.mkdirSync)(dir, { recursive: true });
|
|
32
|
+
}
|
|
33
|
+
function readStore() {
|
|
34
|
+
const path = firstValueActivationProofQueuePath();
|
|
35
|
+
if (!(0, fs_1.existsSync)(path)) {
|
|
36
|
+
return { version: 1, queue: [], updatedAt: new Date().toISOString() };
|
|
37
|
+
}
|
|
38
|
+
try {
|
|
39
|
+
const parsed = JSON.parse((0, fs_1.readFileSync)(path, 'utf8'));
|
|
40
|
+
const queue = Array.isArray(parsed.queue) ? parsed.queue : [];
|
|
41
|
+
return {
|
|
42
|
+
version: 1,
|
|
43
|
+
queue: queue
|
|
44
|
+
.filter((item) => Boolean(item?.proof))
|
|
45
|
+
.slice(-MAX_QUEUE_SIZE),
|
|
46
|
+
updatedAt: typeof parsed.updatedAt === 'string' ? parsed.updatedAt : new Date().toISOString(),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return { version: 1, queue: [], updatedAt: new Date().toISOString() };
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
function writeStore(store) {
|
|
54
|
+
ensureProofDir();
|
|
55
|
+
const next = {
|
|
56
|
+
version: 1,
|
|
57
|
+
queue: store.queue.slice(-MAX_QUEUE_SIZE),
|
|
58
|
+
updatedAt: new Date().toISOString(),
|
|
59
|
+
};
|
|
60
|
+
(0, fs_1.writeFileSync)(firstValueActivationProofQueuePath(), JSON.stringify(next, null, 2) + '\n', 'utf8');
|
|
61
|
+
try {
|
|
62
|
+
(0, fs_1.chmodSync)(firstValueActivationProofQueuePath(), 0o600);
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
// Best-effort permission hardening.
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
function sha(input) {
|
|
69
|
+
return (0, crypto_1.createHash)('sha256').update(input).digest('hex');
|
|
70
|
+
}
|
|
71
|
+
function normalizeCommandFamily(value) {
|
|
72
|
+
return value.trim().toLowerCase().replace(/[^a-z0-9:_-]+/g, '_').slice(0, 80) || 'repo_connect';
|
|
73
|
+
}
|
|
74
|
+
function readCliVersion() {
|
|
75
|
+
try {
|
|
76
|
+
const packageJson = require('../../package.json');
|
|
77
|
+
return typeof packageJson.version === 'string' ? packageJson.version : null;
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function buildEventId(input) {
|
|
84
|
+
return `fvp:${input.stage}:${sha(`${input.installId}:${input.projectId}:${input.stage}`).slice(0, 32)}`;
|
|
85
|
+
}
|
|
86
|
+
function buildRepoConnectActivationProof(input) {
|
|
87
|
+
const installId = (0, activation_telemetry_1.getActivationInstallId)();
|
|
88
|
+
return (0, contracts_1.assertFirstValueActivationProofPayload)({
|
|
89
|
+
schemaVersion: contracts_1.FIRST_VALUE_ACTIVATION_PROOF_SCHEMA_VERSION,
|
|
90
|
+
eventId: buildEventId({ installId, projectId: input.projectId, stage: 'repo_connect' }),
|
|
91
|
+
installId,
|
|
92
|
+
cliVersion: readCliVersion(),
|
|
93
|
+
commandFamily: normalizeCommandFamily(input.commandFamily || 'repo_connect'),
|
|
94
|
+
stage: 'repo_connect',
|
|
95
|
+
reasonCode: input.reasonCode || 'repo_connect.completed',
|
|
96
|
+
timestamp: input.timestamp || new Date().toISOString(),
|
|
97
|
+
success: true,
|
|
98
|
+
projectId: input.projectId,
|
|
99
|
+
localPosture: {
|
|
100
|
+
repoConfigPresent: true,
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
function queueFirstValueActivationProof(input) {
|
|
105
|
+
const proof = (0, contracts_1.assertFirstValueActivationProofPayload)(input.proof);
|
|
106
|
+
const store = readStore();
|
|
107
|
+
const existing = store.queue.filter((item) => item.proof.eventId !== proof.eventId);
|
|
108
|
+
const queued = {
|
|
109
|
+
proof,
|
|
110
|
+
orgId: input.orgId || null,
|
|
111
|
+
apiUrl: input.apiUrl || null,
|
|
112
|
+
queuedAt: new Date().toISOString(),
|
|
113
|
+
attempts: 0,
|
|
114
|
+
lastReasonCode: input.reasonCode || 'proof.queued',
|
|
115
|
+
};
|
|
116
|
+
writeStore({ ...store, queue: [...existing, queued].slice(-MAX_QUEUE_SIZE) });
|
|
117
|
+
}
|
|
118
|
+
function classifyResponseStatus(status) {
|
|
119
|
+
if (status === 409)
|
|
120
|
+
return 'duplicate';
|
|
121
|
+
if (status === 200 || status === 201 || status === 202 || status === 204)
|
|
122
|
+
return 'accepted';
|
|
123
|
+
if (status === 400 || status === 403 || status === 404 || status === 422)
|
|
124
|
+
return 'drop';
|
|
125
|
+
return 'retry';
|
|
126
|
+
}
|
|
127
|
+
async function postProof(input) {
|
|
128
|
+
const controller = new AbortController();
|
|
129
|
+
const timeout = setTimeout(() => controller.abort(), input.timeoutMs || PROOF_FLUSH_TIMEOUT_MS);
|
|
130
|
+
try {
|
|
131
|
+
const headers = {
|
|
132
|
+
'Content-Type': 'application/json',
|
|
133
|
+
authorization: input.apiKey.startsWith('Bearer ') ? input.apiKey : `Bearer ${input.apiKey}`,
|
|
134
|
+
};
|
|
135
|
+
if (input.orgId)
|
|
136
|
+
headers['x-org-id'] = input.orgId;
|
|
137
|
+
const response = await fetch(`${input.apiUrl.replace(/\/$/, '')}/api/v1/activation/first-value-proofs`, {
|
|
138
|
+
method: 'POST',
|
|
139
|
+
headers,
|
|
140
|
+
body: JSON.stringify(input.proof),
|
|
141
|
+
signal: controller.signal,
|
|
142
|
+
});
|
|
143
|
+
const classification = classifyResponseStatus(response.status);
|
|
144
|
+
return {
|
|
145
|
+
ok: classification === 'accepted' || classification === 'duplicate',
|
|
146
|
+
duplicate: classification === 'duplicate' || (response.ok && response.status === 202
|
|
147
|
+
? Boolean((await response.clone().json().catch(() => ({}))).duplicate)
|
|
148
|
+
: false),
|
|
149
|
+
status: response.status,
|
|
150
|
+
retryable: classification === 'retry',
|
|
151
|
+
reasonCode: classification === 'accepted'
|
|
152
|
+
? 'proof.accepted'
|
|
153
|
+
: classification === 'duplicate'
|
|
154
|
+
? 'proof.duplicate'
|
|
155
|
+
: classification === 'drop'
|
|
156
|
+
? `proof.drop.http_${response.status}`
|
|
157
|
+
: `proof.retry.http_${response.status}`,
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
return {
|
|
162
|
+
ok: false,
|
|
163
|
+
duplicate: false,
|
|
164
|
+
status: 0,
|
|
165
|
+
retryable: true,
|
|
166
|
+
reasonCode: error instanceof Error && error.name === 'AbortError' ? 'proof.retry.timeout' : 'proof.retry.network',
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
finally {
|
|
170
|
+
clearTimeout(timeout);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
function resolveApiUrl(apiUrl) {
|
|
174
|
+
const config = (0, config_1.loadConfig)();
|
|
175
|
+
return (apiUrl || config.apiUrl || config_1.DEFAULT_API_URL).replace(/\/$/, '');
|
|
176
|
+
}
|
|
177
|
+
function resolveApiKey(orgId) {
|
|
178
|
+
return (0, config_1.getApiKey)(orgId || undefined) || (0, config_1.getApiKey)();
|
|
179
|
+
}
|
|
180
|
+
async function submitFirstValueActivationProof(input) {
|
|
181
|
+
const proof = (0, contracts_1.assertFirstValueActivationProofPayload)(input.proof);
|
|
182
|
+
const apiUrl = resolveApiUrl(input.apiUrl);
|
|
183
|
+
const apiKey = input.apiKey === undefined ? resolveApiKey(input.orgId) : input.apiKey;
|
|
184
|
+
if (!apiKey) {
|
|
185
|
+
queueFirstValueActivationProof({ proof, orgId: input.orgId, apiUrl, reasonCode: 'proof.queued.no_auth' });
|
|
186
|
+
return { synced: false, queued: true, duplicate: false, reasonCode: 'proof.queued.no_auth' };
|
|
187
|
+
}
|
|
188
|
+
const response = await postProof({
|
|
189
|
+
proof,
|
|
190
|
+
apiUrl,
|
|
191
|
+
apiKey,
|
|
192
|
+
orgId: input.orgId,
|
|
193
|
+
timeoutMs: input.timeoutMs,
|
|
194
|
+
});
|
|
195
|
+
if (response.ok) {
|
|
196
|
+
return {
|
|
197
|
+
synced: true,
|
|
198
|
+
queued: false,
|
|
199
|
+
duplicate: response.duplicate,
|
|
200
|
+
status: response.status,
|
|
201
|
+
reasonCode: response.reasonCode,
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
if (response.retryable) {
|
|
205
|
+
queueFirstValueActivationProof({ proof, orgId: input.orgId, apiUrl, reasonCode: response.reasonCode });
|
|
206
|
+
return {
|
|
207
|
+
synced: false,
|
|
208
|
+
queued: true,
|
|
209
|
+
duplicate: false,
|
|
210
|
+
status: response.status,
|
|
211
|
+
reasonCode: response.reasonCode,
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
return {
|
|
215
|
+
synced: false,
|
|
216
|
+
queued: false,
|
|
217
|
+
duplicate: false,
|
|
218
|
+
status: response.status,
|
|
219
|
+
reasonCode: response.reasonCode,
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
async function flushFirstValueActivationProofQueue(options = {}) {
|
|
223
|
+
const store = readStore();
|
|
224
|
+
const reasonCodes = new Set();
|
|
225
|
+
let synced = 0;
|
|
226
|
+
let duplicates = 0;
|
|
227
|
+
let dropped = 0;
|
|
228
|
+
let retryable = 0;
|
|
229
|
+
const remaining = [];
|
|
230
|
+
for (const item of store.queue) {
|
|
231
|
+
const validation = (0, contracts_1.validateFirstValueActivationProofPayload)(item.proof);
|
|
232
|
+
if (!validation.ok || !validation.proof) {
|
|
233
|
+
dropped += 1;
|
|
234
|
+
reasonCodes.add('proof.drop.invalid');
|
|
235
|
+
continue;
|
|
236
|
+
}
|
|
237
|
+
const queuedAt = Date.parse(item.queuedAt);
|
|
238
|
+
if (Number.isFinite(queuedAt) && Date.now() - queuedAt > MAX_PROOF_AGE_MS) {
|
|
239
|
+
dropped += 1;
|
|
240
|
+
reasonCodes.add('proof.drop.stale');
|
|
241
|
+
continue;
|
|
242
|
+
}
|
|
243
|
+
const orgId = options.orgId || item.orgId || (0, state_1.getOrgId)();
|
|
244
|
+
const apiUrl = resolveApiUrl(options.apiUrl || item.apiUrl);
|
|
245
|
+
const apiKey = resolveApiKey(orgId || undefined);
|
|
246
|
+
if (!apiKey) {
|
|
247
|
+
retryable += 1;
|
|
248
|
+
reasonCodes.add('proof.retry.no_auth');
|
|
249
|
+
remaining.push({ ...item, attempts: item.attempts + 1, lastReasonCode: 'proof.retry.no_auth' });
|
|
250
|
+
continue;
|
|
251
|
+
}
|
|
252
|
+
const response = await postProof({
|
|
253
|
+
proof: validation.proof,
|
|
254
|
+
apiUrl,
|
|
255
|
+
apiKey,
|
|
256
|
+
orgId,
|
|
257
|
+
});
|
|
258
|
+
reasonCodes.add(response.reasonCode);
|
|
259
|
+
if (response.ok) {
|
|
260
|
+
synced += 1;
|
|
261
|
+
if (response.duplicate)
|
|
262
|
+
duplicates += 1;
|
|
263
|
+
continue;
|
|
264
|
+
}
|
|
265
|
+
if (response.retryable) {
|
|
266
|
+
retryable += 1;
|
|
267
|
+
remaining.push({ ...item, attempts: item.attempts + 1, lastReasonCode: response.reasonCode });
|
|
268
|
+
continue;
|
|
269
|
+
}
|
|
270
|
+
dropped += 1;
|
|
271
|
+
}
|
|
272
|
+
writeStore({ ...store, queue: remaining });
|
|
273
|
+
return {
|
|
274
|
+
attempted: store.queue.length,
|
|
275
|
+
synced,
|
|
276
|
+
duplicates,
|
|
277
|
+
dropped,
|
|
278
|
+
retryable,
|
|
279
|
+
remaining: remaining.length,
|
|
280
|
+
reasonCodes: [...reasonCodes].sort(),
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
function getFirstValueActivationProofQueueStatus(projectId) {
|
|
284
|
+
const store = readStore();
|
|
285
|
+
const targetProjectId = projectId || (0, state_1.getProjectId)();
|
|
286
|
+
return {
|
|
287
|
+
queueLength: store.queue.length,
|
|
288
|
+
matchingProjectQueued: targetProjectId
|
|
289
|
+
? store.queue.some((item) => item.proof.projectId === targetProjectId)
|
|
290
|
+
: store.queue.length > 0,
|
|
291
|
+
path: firstValueActivationProofQueuePath(),
|
|
292
|
+
};
|
|
293
|
+
}
|
|
294
|
+
function readLocalRepoActivationBinding() {
|
|
295
|
+
const state = (0, state_1.loadState)();
|
|
296
|
+
return {
|
|
297
|
+
orgId: typeof state.orgId === 'string' ? state.orgId : null,
|
|
298
|
+
orgName: typeof state.orgName === 'string' ? state.orgName : null,
|
|
299
|
+
projectId: typeof state.projectId === 'string' ? state.projectId : null,
|
|
300
|
+
linkedAt: typeof state.linkedAt === 'string' ? state.linkedAt : null,
|
|
301
|
+
};
|
|
302
|
+
}
|
|
303
|
+
//# sourceMappingURL=activation-proof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activation-proof.js","sourceRoot":"","sources":["../../src/utils/activation-proof.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ export interface TrackActivationOptions {
|
|
|
18
18
|
}
|
|
19
19
|
export declare function activationTelemetryPath(): string;
|
|
20
20
|
export declare function activationTelemetryEnabled(): boolean;
|
|
21
|
+
export declare function getActivationInstallId(): string;
|
|
21
22
|
export declare function setActivationTelemetryEnabled(enabled: boolean): void;
|
|
22
23
|
export declare function buildActivationTelemetryEvent(store: ActivationTelemetryStore, options: TrackActivationOptions): ActivationTelemetryEvent;
|
|
23
24
|
export declare function maybeShowActivationTelemetryNotice(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activation-telemetry.d.ts","sourceRoot":"","sources":["../../src/utils/activation-telemetry.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAGxB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC9B,MAAM,wBAAwB,CAAC;AAShC,UAAU,wBAAwB;IAChC,OAAO,EAAE,CAAC,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC3C,KAAK,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAMD,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AA+DD,wBAAgB,0BAA0B,IAAI,OAAO,CAGpD;AAED,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAGpE;AA6CD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,wBAAwB,EAC/B,OAAO,EAAE,sBAAsB,GAC9B,wBAAwB,CAsB1B;AAYD,wBAAgB,kCAAkC,IAAI,IAAI,CAUzD;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAa1E;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAmDhH;AAED,wBAAgB,4BAA4B,IAAI;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAYA"}
|
|
1
|
+
{"version":3,"file":"activation-telemetry.d.ts","sourceRoot":"","sources":["../../src/utils/activation-telemetry.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAGxB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC9B,MAAM,wBAAwB,CAAC;AAShC,UAAU,wBAAwB;IAChC,OAAO,EAAE,CAAC,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC3C,KAAK,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAMD,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AA+DD,wBAAgB,0BAA0B,IAAI,OAAO,CAGpD;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAM/C;AAED,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAGpE;AA6CD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,wBAAwB,EAC/B,OAAO,EAAE,sBAAsB,GAC9B,wBAAwB,CAsB1B;AAYD,wBAAgB,kCAAkC,IAAI,IAAI,CAUzD;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAa1E;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAmDhH;AAED,wBAAgB,4BAA4B,IAAI;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAYA"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.activationTelemetryPath = activationTelemetryPath;
|
|
4
4
|
exports.activationTelemetryEnabled = activationTelemetryEnabled;
|
|
5
|
+
exports.getActivationInstallId = getActivationInstallId;
|
|
5
6
|
exports.setActivationTelemetryEnabled = setActivationTelemetryEnabled;
|
|
6
7
|
exports.buildActivationTelemetryEvent = buildActivationTelemetryEvent;
|
|
7
8
|
exports.maybeShowActivationTelemetryNotice = maybeShowActivationTelemetryNotice;
|
|
@@ -89,6 +90,13 @@ function activationTelemetryEnabled() {
|
|
|
89
90
|
return false;
|
|
90
91
|
return readStore().enabled !== false;
|
|
91
92
|
}
|
|
93
|
+
function getActivationInstallId() {
|
|
94
|
+
const store = readStore();
|
|
95
|
+
if (!(0, fs_1.existsSync)(activationTelemetryPath())) {
|
|
96
|
+
writeStore(store);
|
|
97
|
+
}
|
|
98
|
+
return store.anonymousInstallId;
|
|
99
|
+
}
|
|
92
100
|
function setActivationTelemetryEnabled(enabled) {
|
|
93
101
|
const store = readStore();
|
|
94
102
|
writeStore({ ...store, enabled });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activation-telemetry.js","sourceRoot":"","sources":["../../src/utils/activation-telemetry.ts"],"names":[],"mappings":";;AA6CA,0DAEC;AA+DD,gEAGC;AAED,sEAGC;AA6CD,sEAyBC;AAYD,gFAUC;AAED,oDAaC;AAED,4DAmDC;AAED,oEAkBC;
|
|
1
|
+
{"version":3,"file":"activation-telemetry.js","sourceRoot":"","sources":["../../src/utils/activation-telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"first-value-proof.d.ts","sourceRoot":"","sources":["../../src/utils/first-value-proof.ts"],"names":[],"mappings":"AAKA,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"first-value-proof.d.ts","sourceRoot":"","sources":["../../src/utils/first-value-proof.ts"],"names":[],"mappings":"AAKA,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAiBhC,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,KAAK,EAAE;QACL,YAAY,EAAE,IAAI,CAAC;QACnB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE;YACX,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;QACF,mBAAmB,EAAE,OAAO,CAAC;QAC7B,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA4ID,wBAAsB,uBAAuB,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0GlH;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAgCvE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CA+BxE"}
|
|
@@ -15,6 +15,7 @@ const brain_lifecycle_1 = require("./brain-lifecycle");
|
|
|
15
15
|
const runtime_connection_1 = require("./runtime-connection");
|
|
16
16
|
const onboard_1 = require("../commands/onboard");
|
|
17
17
|
const agent_adapter_setup_1 = require("./agent-adapter-setup");
|
|
18
|
+
const activation_proof_1 = require("./activation-proof");
|
|
18
19
|
function sha(input) {
|
|
19
20
|
return (0, node_crypto_1.createHash)('sha256').update(input).digest('hex').slice(0, 32);
|
|
20
21
|
}
|
|
@@ -68,6 +69,11 @@ function agentForCommand(target) {
|
|
|
68
69
|
}
|
|
69
70
|
return 'terminal';
|
|
70
71
|
}
|
|
72
|
+
function agentGuardCommandFor(target) {
|
|
73
|
+
const agent = agentForCommand(target);
|
|
74
|
+
const agentId = agent === 'terminal' ? 'codex' : agent;
|
|
75
|
+
return `neurcode agent guard start ${agentId} --goal "<bounded task>"`;
|
|
76
|
+
}
|
|
71
77
|
function brainStatusFromLifecycle(state) {
|
|
72
78
|
if (state === 'fresh')
|
|
73
79
|
return 'fresh';
|
|
@@ -165,6 +171,7 @@ async function buildFirstValueCliState(options = {}) {
|
|
|
165
171
|
const projectId = repoConfig.projectId || connection?.projectId || null;
|
|
166
172
|
const apiKey = (0, config_1.getApiKey)(orgId || undefined) || (0, config_1.getApiKey)();
|
|
167
173
|
const cloud = await fetchCloudFirstValueState({ orgId, apiUrl: connection?.apiUrl });
|
|
174
|
+
const proofQueue = (0, activation_proof_1.getFirstValueActivationProofQueueStatus)(projectId);
|
|
168
175
|
let brainStatus = 'not_evaluated';
|
|
169
176
|
try {
|
|
170
177
|
brainStatus = brainStatusFromLifecycle((await (0, brain_lifecycle_1.inspectBrainLifecycle)(repoRoot)).state);
|
|
@@ -179,12 +186,32 @@ async function buildFirstValueCliState(options = {}) {
|
|
|
179
186
|
const repoLabel = connection?.repo?.name || (repoDetected ? (0, node_path_1.basename)(repoRoot) : null);
|
|
180
187
|
const repoHash = connection?.repo?.repoKey || (repoDetected ? sha(remote || repoRoot) : null);
|
|
181
188
|
const cloudProof = cloud.state?.proof;
|
|
189
|
+
const cloudRepoConnected = cloudProof?.steps.find((step) => step.id === 'repo_connect')?.complete === true
|
|
190
|
+
&& cloudProof.repoConnection.status !== 'local_proof_queued';
|
|
191
|
+
const localRepoConnected = Boolean(connection || projectId);
|
|
192
|
+
const localProofQueued = proofQueue.matchingProjectQueued || (localRepoConnected && !cloudRepoConnected);
|
|
193
|
+
const repoConnectionStatus = cloudRepoConnected
|
|
194
|
+
? cloudProof?.repoConnection.status || 'cloud_proof_synced'
|
|
195
|
+
: localProofQueued
|
|
196
|
+
? 'local_proof_queued'
|
|
197
|
+
: 'missing';
|
|
198
|
+
const repoConnectionSource = cloudRepoConnected
|
|
199
|
+
? cloudProof?.repoConnection.source || 'activation_proof'
|
|
200
|
+
: localProofQueued
|
|
201
|
+
? 'local_config'
|
|
202
|
+
: 'none';
|
|
182
203
|
const state = (0, contracts_1.buildFirstValueState)({
|
|
183
204
|
workspaceId: orgId || cloudProof?.workspaceId || null,
|
|
184
205
|
repoLabel: cloudProof?.repo.label || repoLabel,
|
|
185
206
|
repoHash: cloudProof?.repo.hash || repoHash,
|
|
207
|
+
projectId: projectId || cloudProof?.repoConnection.projectId || null,
|
|
208
|
+
repoId: cloudProof?.repoConnection.repoId || null,
|
|
209
|
+
repoConnectionStatus,
|
|
210
|
+
repoConnectionSource,
|
|
211
|
+
repoProofSyncedAt: cloudProof?.repoConnection.cloudProofSyncedAt || null,
|
|
212
|
+
repoProofQueued: localProofQueued,
|
|
186
213
|
loggedIn: Boolean(apiKey || cloudProof?.workspaceId),
|
|
187
|
-
repoConnected:
|
|
214
|
+
repoConnected: localRepoConnected || cloudRepoConnected,
|
|
188
215
|
brainStatus,
|
|
189
216
|
agentConfigured: runtimeAdapterReady || runtimeAtLeast(cloudProof?.runtimeStatus, 'configured'),
|
|
190
217
|
governedCheckSeen: runtimeAtLeast(cloudProof?.runtimeStatus, 'governed_check_seen'),
|
|
@@ -200,6 +227,12 @@ async function buildFirstValueCliState(options = {}) {
|
|
|
200
227
|
proof: {
|
|
201
228
|
...state.proof,
|
|
202
229
|
steps: state.proof.steps.map((step) => {
|
|
230
|
+
if (step.id === 'governed_check') {
|
|
231
|
+
return {
|
|
232
|
+
...step,
|
|
233
|
+
recommendedCommand: agentGuardCommandFor(commandAgent),
|
|
234
|
+
};
|
|
235
|
+
}
|
|
203
236
|
if (step.id !== 'agent_setup')
|
|
204
237
|
return step;
|
|
205
238
|
return {
|
|
@@ -224,6 +257,9 @@ async function buildFirstValueCliState(options = {}) {
|
|
|
224
257
|
if (nextStep?.id === 'agent_setup') {
|
|
225
258
|
adjusted.proof.nextRecommendedCommand = (0, onboard_1.agentSetupCommandFor)(commandAgent);
|
|
226
259
|
}
|
|
260
|
+
else if (nextStep?.id === 'governed_check') {
|
|
261
|
+
adjusted.proof.nextRecommendedCommand = agentGuardCommandFor(commandAgent);
|
|
262
|
+
}
|
|
227
263
|
return adjusted;
|
|
228
264
|
}
|
|
229
265
|
function renderFirstValueStart(state) {
|
|
@@ -269,6 +305,9 @@ function renderFirstValueReport(state) {
|
|
|
269
305
|
lines.push(`Proof ID: ${proof.proofId}`);
|
|
270
306
|
lines.push(`Workspace: ${proof.workspaceId ? 'authenticated' : 'not authenticated'}`);
|
|
271
307
|
lines.push(`Repository: ${proof.repo.label || proof.repo.hash || 'not connected'}`);
|
|
308
|
+
lines.push(`Repo connection: ${proof.repoConnection.status}`);
|
|
309
|
+
lines.push(`Cloud proof synced: ${proof.repoConnection.cloudProofSyncedAt ? 'yes' : 'no'}`);
|
|
310
|
+
lines.push(`Cloud proof queued: ${proof.repoConnection.proofQueued ? 'yes' : 'no'}`);
|
|
272
311
|
lines.push('');
|
|
273
312
|
lines.push('Activation milestones');
|
|
274
313
|
for (const step of proof.steps) {
|