greprag 5.59.1 → 5.59.3
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/codex-chip-hooks.js +17 -2
- package/dist/codex-chip-hooks.js.map +1 -1
- package/dist/commands/codex-chip/cleanup-command.d.ts +1 -0
- package/dist/commands/codex-chip/cleanup-command.js +96 -0
- package/dist/commands/codex-chip/cleanup-command.js.map +1 -0
- package/dist/commands/codex-chip/command.js +44 -36
- package/dist/commands/codex-chip/command.js.map +1 -1
- package/dist/commands/codex-chip/git.js +8 -0
- package/dist/commands/codex-chip/git.js.map +1 -1
- package/dist/commands/codex-chip/goal-command.d.ts +1 -0
- package/dist/commands/codex-chip/goal-command.js +82 -0
- package/dist/commands/codex-chip/goal-command.js.map +1 -0
- package/dist/commands/codex-chip/goals.d.ts +51 -0
- package/dist/commands/codex-chip/goals.js +252 -0
- package/dist/commands/codex-chip/goals.js.map +1 -0
- package/dist/commands/codex-chip/inbox.d.ts +1 -1
- package/dist/commands/codex-chip/inbox.js +5 -11
- package/dist/commands/codex-chip/inbox.js.map +1 -1
- package/dist/commands/codex-chip/model.d.ts +21 -2
- package/dist/commands/codex-chip/model.js +9 -1
- package/dist/commands/codex-chip/model.js.map +1 -1
- package/dist/commands/codex-chip/naming.d.ts +8 -0
- package/dist/commands/codex-chip/naming.js +39 -0
- package/dist/commands/codex-chip/naming.js.map +1 -0
- package/dist/commands/codex-chip/native.d.ts +10 -7
- package/dist/commands/codex-chip/native.js +152 -61
- package/dist/commands/codex-chip/native.js.map +1 -1
- package/dist/commands/codex-chip/prompt.js +14 -6
- package/dist/commands/codex-chip/prompt.js.map +1 -1
- package/dist/commands/codex-chip/resume-command.d.ts +7 -0
- package/dist/commands/codex-chip/resume-command.js +105 -0
- package/dist/commands/codex-chip/resume-command.js.map +1 -0
- package/dist/commands/codex-chip/store.d.ts +1 -0
- package/dist/commands/codex-chip/store.js +16 -0
- package/dist/commands/codex-chip/store.js.map +1 -1
- package/dist/commands/codex-chip/worker.js +16 -1
- package/dist/commands/codex-chip/worker.js.map +1 -1
- package/dist/commands/init.js +1 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/load-primer-reminder.js +2 -2
- package/dist/commands/load-primer-reminder.js.map +1 -1
- package/dist/hook.js +3 -1
- package/dist/hook.js.map +1 -1
- package/dist/opencode-plugin.bundle.js +2 -2
- package/package.json +3 -2
- package/scripts/verify-publish.cjs +12 -0
- package/skill/greprag/docs/codex-chip.md +7 -0
- package/skill/templates/chip-leader.md +7 -0
- package/skill/templates/codex-chip-spawn.md +5 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChipManifest } from './model';
|
|
2
2
|
export interface NativeChipHandoff {
|
|
3
|
-
protocol: 'greprag-codex-native-v3';
|
|
3
|
+
protocol: 'greprag-codex-native-v3' | 'greprag-codex-native-v4';
|
|
4
4
|
chipId: string;
|
|
5
5
|
expectedBaseSha: string;
|
|
6
6
|
title: string;
|
|
@@ -17,16 +17,18 @@ export interface NativeChipHandoff {
|
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
19
|
prompt: string;
|
|
20
|
+
model?: string;
|
|
21
|
+
thinking?: string;
|
|
20
22
|
};
|
|
21
|
-
bootstrapAck
|
|
23
|
+
bootstrapAck?: string;
|
|
22
24
|
titleVerification: {
|
|
23
25
|
maxAttempts: 3;
|
|
24
|
-
settleBeforeRename: true;
|
|
25
26
|
exactTitle: string;
|
|
26
27
|
consecutiveReadBacks: 2;
|
|
27
28
|
retryDelayMs: 750;
|
|
29
|
+
settleBeforeRename?: true;
|
|
28
30
|
};
|
|
29
|
-
dispatchSequence: readonly [
|
|
31
|
+
dispatchSequence: readonly string[];
|
|
30
32
|
verifyTitleCommand?: string;
|
|
31
33
|
attachCommand?: string;
|
|
32
34
|
sendRequest?: {
|
|
@@ -37,8 +39,8 @@ export interface NativeChipHandoff {
|
|
|
37
39
|
};
|
|
38
40
|
instructions: string[];
|
|
39
41
|
}
|
|
40
|
-
/** Parent-side Desktop adapter primitive.
|
|
41
|
-
*
|
|
42
|
+
/** Parent-side Desktop adapter primitive. Set early, then correct the observed
|
|
43
|
+
* auto-title race with two consecutive read-backs. */
|
|
42
44
|
export declare function verifyDesktopTitle(expected: string, surface: {
|
|
43
45
|
setTitle(title: string): Promise<void>;
|
|
44
46
|
readTitle(): Promise<string>;
|
|
@@ -46,16 +48,17 @@ export declare function verifyDesktopTitle(expected: string, surface: {
|
|
|
46
48
|
}, maxAttempts?: number): Promise<number>;
|
|
47
49
|
export declare function nativeHandoff(manifest: ChipManifest): NativeChipHandoff;
|
|
48
50
|
export declare function printNativeHandoff(manifest: ChipManifest, json?: boolean): void;
|
|
51
|
+
export declare function provisionNativeBindingFromPrompt(prompt: string, cwdParam: string, sessionId: string, model?: string): ChipManifest | null;
|
|
49
52
|
export declare function verifyNativeBinding(manifest: ChipManifest, params: {
|
|
50
53
|
clientThreadId: string;
|
|
51
54
|
threadId: string;
|
|
52
55
|
cwd: string;
|
|
53
56
|
title: string;
|
|
54
|
-
bootstrapAck: string;
|
|
55
57
|
projectId: string;
|
|
56
58
|
baseSha: string;
|
|
57
59
|
sandbox: string;
|
|
58
60
|
titleReadbacks: number;
|
|
61
|
+
bootstrapAck?: string;
|
|
59
62
|
}): ChipManifest;
|
|
60
63
|
export declare function attachNativeCheckout(manifest: ChipManifest): ChipManifest;
|
|
61
64
|
export declare function assertNoLiveNativeMonitor(manifest: ChipManifest, ownerPid?: number): void;
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.verifyDesktopTitle = verifyDesktopTitle;
|
|
37
37
|
exports.nativeHandoff = nativeHandoff;
|
|
38
38
|
exports.printNativeHandoff = printNativeHandoff;
|
|
39
|
+
exports.provisionNativeBindingFromPrompt = provisionNativeBindingFromPrompt;
|
|
39
40
|
exports.verifyNativeBinding = verifyNativeBinding;
|
|
40
41
|
exports.attachNativeCheckout = attachNativeCheckout;
|
|
41
42
|
exports.assertNoLiveNativeMonitor = assertNoLiveNativeMonitor;
|
|
@@ -50,8 +51,13 @@ const store_1 = require("./store");
|
|
|
50
51
|
const inbox_1 = require("./inbox");
|
|
51
52
|
const git_1 = require("./git");
|
|
52
53
|
const selection_1 = require("./selection");
|
|
53
|
-
|
|
54
|
-
|
|
54
|
+
function expectedNativeTitle(manifest) {
|
|
55
|
+
if (manifest.version >= 2)
|
|
56
|
+
return (0, model_1.chipTitle)(manifest);
|
|
57
|
+
return `${manifest.codex.role === 'leader' ? 'LEAD' : 'Chip'}: ${manifest.name.replace(/^(?:Chip|LEAD):\s*/i, '')}`;
|
|
58
|
+
}
|
|
59
|
+
/** Parent-side Desktop adapter primitive. Set early, then correct the observed
|
|
60
|
+
* auto-title race with two consecutive read-backs. */
|
|
55
61
|
async function verifyDesktopTitle(expected, surface, maxAttempts = 3) {
|
|
56
62
|
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
57
63
|
await surface.setTitle(expected);
|
|
@@ -74,15 +80,35 @@ function nativeHandoff(manifest) {
|
|
|
74
80
|
if (!manifest.codex.projectId)
|
|
75
81
|
throw new Error('Native handoff is missing its Codex project id.');
|
|
76
82
|
const threadId = manifest.codex.threadId;
|
|
77
|
-
const
|
|
78
|
-
if (!nonce)
|
|
79
|
-
throw new Error('Native handoff is missing its binding nonce.');
|
|
80
|
-
const title = `${manifest.codex.role === 'leader' ? 'LEAD' : 'Chip'}: ${manifest.name.replace(/^(?:Chip|LEAD):\s*/i, '')}`;
|
|
81
|
-
const bootstrapAck = `BOOTSTRAP_READY:${nonce}`;
|
|
83
|
+
const title = expectedNativeTitle(manifest);
|
|
82
84
|
const verified = Boolean(manifest.codex.titleVerifiedAt);
|
|
83
85
|
const attached = manifest.state === 'running' && Boolean(threadId);
|
|
86
|
+
if (manifest.version < 2) {
|
|
87
|
+
const nonce = manifest.codex.bindingNonce;
|
|
88
|
+
if (!nonce)
|
|
89
|
+
throw new Error('Legacy native handoff is missing its binding nonce.');
|
|
90
|
+
const bootstrapAck = `BOOTSTRAP_READY:${nonce}`;
|
|
91
|
+
return {
|
|
92
|
+
protocol: 'greprag-codex-native-v3', chipId: manifest.id, expectedBaseSha: manifest.parent.baseSha, title,
|
|
93
|
+
createRequest: {
|
|
94
|
+
target: { type: 'project', projectId: manifest.codex.projectId,
|
|
95
|
+
environment: { type: 'worktree', startingState: { type: 'branch', branchName: manifest.worktree.branch } } },
|
|
96
|
+
prompt: `Bootstrap Codex chip ${manifest.id.slice(0, 8)}. Reply exactly ${bootstrapAck} and wait. Do not modify files yet.`,
|
|
97
|
+
},
|
|
98
|
+
bootstrapAck,
|
|
99
|
+
titleVerification: { maxAttempts: 3, settleBeforeRename: true, exactTitle: title, consecutiveReadBacks: 2, retryDelayMs: 750 },
|
|
100
|
+
dispatchSequence: ['create', 'settle', 'rename', 'verify', 'attach', 'in-flight', 'mission'],
|
|
101
|
+
verifyTitleCommand: !verified
|
|
102
|
+
? `${cli} codex chip verify-title ${manifest.id} --client-thread <clientThreadId> --thread <threadId> --cwd "<actual-native-cwd>" --title ${JSON.stringify(title)} --title-readbacks 2 --bootstrap-ack ${bootstrapAck} --project-id ${manifest.codex.projectId} --base-sha ${manifest.parent.baseSha} --sandbox workspace-write`
|
|
103
|
+
: undefined,
|
|
104
|
+
attachCommand: verified && !attached ? `${cli} codex chip attach ${manifest.id}` : undefined,
|
|
105
|
+
sendRequest: attached ? { threadId: threadId, prompt: (0, prompt_1.chipPrompt)(manifest, cli),
|
|
106
|
+
model: manifest.codex.model || 'gpt-5.6-luna', thinking: (0, selection_1.resolveDesktopThinking)(manifest.codex.effort) } : undefined,
|
|
107
|
+
instructions: ['Legacy v1 recovery handoff: complete its recorded bootstrap/title/attach/send sequence; do not convert it in place.'],
|
|
108
|
+
};
|
|
109
|
+
}
|
|
84
110
|
return {
|
|
85
|
-
protocol: 'greprag-codex-native-
|
|
111
|
+
protocol: 'greprag-codex-native-v4',
|
|
86
112
|
chipId: manifest.id,
|
|
87
113
|
expectedBaseSha: manifest.parent.baseSha,
|
|
88
114
|
title,
|
|
@@ -91,34 +117,30 @@ function nativeHandoff(manifest) {
|
|
|
91
117
|
type: 'project', projectId: manifest.codex.projectId,
|
|
92
118
|
environment: { type: 'worktree', startingState: { type: 'branch', branchName: manifest.worktree.branch } },
|
|
93
119
|
},
|
|
94
|
-
prompt:
|
|
120
|
+
prompt: (0, prompt_1.chipPrompt)(manifest, cli),
|
|
121
|
+
model: manifest.codex.model || 'gpt-5.6-luna',
|
|
122
|
+
thinking: (0, selection_1.resolveDesktopThinking)(manifest.codex.effort),
|
|
95
123
|
},
|
|
96
|
-
bootstrapAck,
|
|
97
124
|
titleVerification: {
|
|
98
|
-
maxAttempts: 3,
|
|
125
|
+
maxAttempts: 3, exactTitle: title, consecutiveReadBacks: 2, retryDelayMs: 750,
|
|
99
126
|
},
|
|
100
|
-
dispatchSequence: ['create', '
|
|
127
|
+
dispatchSequence: ['create-mission', 'resolve', 'rename', 'verify', 'attach', 'in-flight', 'monitor'],
|
|
101
128
|
verifyTitleCommand: !verified
|
|
102
|
-
? `${cli} codex chip verify-title ${manifest.id} --client-thread <clientThreadId> --thread <threadId> --cwd <actual-native-cwd> --title
|
|
129
|
+
? `${cli} codex chip verify-title ${manifest.id} --client-thread <clientThreadId> --thread <threadId> --cwd "<actual-native-cwd>" --title-readbacks 2 --project-id ${manifest.codex.projectId} --base-sha ${manifest.parent.baseSha} --sandbox workspace-write`
|
|
103
130
|
: undefined,
|
|
104
131
|
attachCommand: verified && !attached ? `${cli} codex chip attach ${manifest.id}` : undefined,
|
|
105
|
-
sendRequest: attached ? {
|
|
106
|
-
threadId: threadId, prompt: (0, prompt_1.chipPrompt)(manifest, cli),
|
|
107
|
-
model: manifest.codex.model || 'gpt-5.6-luna',
|
|
108
|
-
thinking: (0, selection_1.resolveDesktopThinking)(manifest.codex.effort),
|
|
109
|
-
} : undefined,
|
|
110
132
|
instructions: attached ? [
|
|
111
|
-
'
|
|
133
|
+
'The mission was delivered exactly once by createRequest. Do not send it again.',
|
|
112
134
|
'The attached monitor validates receipts in the actual app-owned checkout.',
|
|
113
135
|
] : verified ? [
|
|
114
136
|
'Run attachCommand. It installs the marker and emits IN-FLIGHT only after durable title verification.',
|
|
115
|
-
'Rerun this handoff after attach
|
|
137
|
+
'Rerun this handoff after attach only to inspect state; never replay the mission.',
|
|
116
138
|
] : [
|
|
117
|
-
'Call create_thread with createRequest exactly. It
|
|
118
|
-
'
|
|
119
|
-
'Call set_thread_title
|
|
139
|
+
'Call create_thread with createRequest exactly. It contains the real mission, model, thinking, and native worktree; this is the only mission turn.',
|
|
140
|
+
'The UserPromptSubmit chip hook provisionally binds the task/cwd before tool use so leases remain enforced while setup continues.',
|
|
141
|
+
'Resolve threadId and native cwd immediately. Call set_thread_title as soon as the thread appears, then read it back twice; retry only if auto-title overwrites it.',
|
|
120
142
|
'Only after read_thread returns the exact title, run verifyTitleCommand. Fail loudly if the title is not durable.',
|
|
121
|
-
'Rerun this handoff to obtain attachCommand.
|
|
143
|
+
'Rerun this handoff to obtain attachCommand. Attach emits IN-FLIGHT and starts the monitor; never send a second assignment.',
|
|
122
144
|
],
|
|
123
145
|
};
|
|
124
146
|
}
|
|
@@ -130,13 +152,76 @@ function printNativeHandoff(manifest, json = false) {
|
|
|
130
152
|
console.log(` title: ${handoff.title}`);
|
|
131
153
|
console.log(` project: ${handoff.createRequest.target.projectId}`);
|
|
132
154
|
console.log(` branch: ${handoff.createRequest.target.environment.startingState.branchName}`);
|
|
133
|
-
console.log(` action: ${handoff.
|
|
155
|
+
console.log(` action: ${handoff.attachCommand ? 'attach and emit IN-FLIGHT' : 'create the mission, bind, and durably title'}.`);
|
|
134
156
|
if (handoff.verifyTitleCommand)
|
|
135
157
|
console.log(` verify: ${handoff.verifyTitleCommand}`);
|
|
136
158
|
if (handoff.attachCommand)
|
|
137
159
|
console.log(` attach: ${handoff.attachCommand}`);
|
|
138
160
|
console.log(` payload: greprag codex chip handoff ${manifest.id} --json`);
|
|
139
161
|
}
|
|
162
|
+
function validateNativeCheckout(manifest, cwdParam) {
|
|
163
|
+
const cwd = fs.realpathSync(path.resolve(cwdParam));
|
|
164
|
+
if (!fs.existsSync(cwd) || (0, git_1.gitRoot)(cwd) !== cwd)
|
|
165
|
+
throw new Error('Native cwd must be an existing Git checkout root.');
|
|
166
|
+
const codexHome = fs.realpathSync(path.resolve(process.env.CODEX_HOME || path.join(os.homedir(), '.codex')));
|
|
167
|
+
const worktreeRoot = path.join(codexHome, 'worktrees');
|
|
168
|
+
const relativeToCodex = path.relative(worktreeRoot, cwd);
|
|
169
|
+
if (!relativeToCodex || relativeToCodex.startsWith('..') || path.isAbsolute(relativeToCodex)) {
|
|
170
|
+
throw new Error(`Native cwd must be beneath the Codex worktree root ${worktreeRoot}.`);
|
|
171
|
+
}
|
|
172
|
+
if (cwd.toLowerCase() === path.resolve(manifest.parent.root).toLowerCase() ||
|
|
173
|
+
cwd.toLowerCase() === path.resolve(manifest.worktree.path).toLowerCase()) {
|
|
174
|
+
throw new Error('Native cwd must be the distinct Codex-managed execution checkout, not the parent or staging path.');
|
|
175
|
+
}
|
|
176
|
+
if ((0, git_1.headCommit)(cwd) !== manifest.parent.baseSha) {
|
|
177
|
+
throw new Error('Native checkout HEAD does not match the recorded starting commit.');
|
|
178
|
+
}
|
|
179
|
+
const branch = (0, git_1.branchName)(cwd);
|
|
180
|
+
if (branch && branch !== manifest.worktree.branch) {
|
|
181
|
+
throw new Error(`Native checkout branch ${branch} does not match ${manifest.worktree.branch}.`);
|
|
182
|
+
}
|
|
183
|
+
return cwd;
|
|
184
|
+
}
|
|
185
|
+
function provisionNativeBindingFromPrompt(prompt, cwdParam, sessionId, model) {
|
|
186
|
+
const match = /durable manifest is ([0-9a-f-]{36})/i.exec(prompt);
|
|
187
|
+
if (!match)
|
|
188
|
+
return null;
|
|
189
|
+
const candidate = (0, store_1.readManifest)(match[1]);
|
|
190
|
+
if (!candidate || candidate.codex.runtime !== 'native')
|
|
191
|
+
return null;
|
|
192
|
+
const proof = /native binding proof is ([0-9a-f]{32})/i.exec(prompt)?.[1];
|
|
193
|
+
if (candidate.version >= 2 && (!proof || proof !== candidate.codex.bindingNonce)) {
|
|
194
|
+
throw new Error('Native initial mission does not contain the manifest binding proof.');
|
|
195
|
+
}
|
|
196
|
+
return (0, store_1.withProjectChipLock)(candidate.project.id, () => {
|
|
197
|
+
const manifest = (0, store_1.readManifest)(candidate.id);
|
|
198
|
+
if (!manifest || manifest.codex.runtime !== 'native')
|
|
199
|
+
return null;
|
|
200
|
+
if (manifest.state !== 'awaiting-native')
|
|
201
|
+
return manifest;
|
|
202
|
+
if (!/^[0-9a-f-]{36}$/i.test(sessionId) || sessionId === manifest.parent.sessionId) {
|
|
203
|
+
throw new Error('Native provisional binding requires a distinct resolved child task id.');
|
|
204
|
+
}
|
|
205
|
+
if (model && manifest.codex.model && model !== manifest.codex.model) {
|
|
206
|
+
throw new Error(`Native task model ${model} does not match parent selection ${manifest.codex.model}.`);
|
|
207
|
+
}
|
|
208
|
+
const cwd = validateNativeCheckout(manifest, cwdParam);
|
|
209
|
+
if (manifest.codex.provisionalBoundAt) {
|
|
210
|
+
if (manifest.codex.threadId !== sessionId || path.resolve(manifest.codex.nativeCwd || '') !== path.resolve(cwd)) {
|
|
211
|
+
throw new Error('Native provisional binding is already claimed by a different child task.');
|
|
212
|
+
}
|
|
213
|
+
return manifest;
|
|
214
|
+
}
|
|
215
|
+
(0, git_1.writeChipMarker)(cwd, {
|
|
216
|
+
id: manifest.id, branch: manifest.worktree.branch, baseSha: manifest.parent.baseSha,
|
|
217
|
+
mode: manifest.mode, owns: manifest.owns, detachedAllowed: true,
|
|
218
|
+
});
|
|
219
|
+
return (0, store_1.updateManifest)(manifest.id, { codex: {
|
|
220
|
+
...manifest.codex, threadId: sessionId, nativeCwd: cwd, sandbox: 'workspace-write',
|
|
221
|
+
provisionalBoundAt: new Date().toISOString(),
|
|
222
|
+
} });
|
|
223
|
+
});
|
|
224
|
+
}
|
|
140
225
|
function verifyNativeBinding(manifest, params) {
|
|
141
226
|
if (manifest.codex.runtime !== 'native')
|
|
142
227
|
throw new Error('Only a native-runtime chip can be attached.');
|
|
@@ -152,38 +237,27 @@ function verifyNativeBinding(manifest, params) {
|
|
|
152
237
|
params.threadId.toLowerCase() === manifest.parent.sessionId?.toLowerCase()) {
|
|
153
238
|
throw new Error('Native binding must identify a distinct resolved child task.');
|
|
154
239
|
}
|
|
155
|
-
const expectedTitle =
|
|
156
|
-
const expectedAck = `BOOTSTRAP_READY:${manifest.codex.bindingNonce}`;
|
|
240
|
+
const expectedTitle = expectedNativeTitle(manifest);
|
|
157
241
|
if (params.title !== expectedTitle)
|
|
158
242
|
throw new Error(`Native title was not durably verified as ${expectedTitle}.`);
|
|
159
243
|
if (params.titleReadbacks !== 2)
|
|
160
244
|
throw new Error('Native title verification requires two consecutive read_thread confirmations.');
|
|
161
|
-
if (params.bootstrapAck !==
|
|
162
|
-
throw new Error('Native bootstrap acknowledgement does not bind this task.');
|
|
245
|
+
if (manifest.version < 2 && params.bootstrapAck !== `BOOTSTRAP_READY:${manifest.codex.bindingNonce}`) {
|
|
246
|
+
throw new Error('Native bootstrap acknowledgement does not bind this legacy task.');
|
|
247
|
+
}
|
|
248
|
+
if (manifest.version >= 2 && (!manifest.codex.provisionalBoundAt ||
|
|
249
|
+
!manifest.codex.threadId || !manifest.codex.nativeCwd)) {
|
|
250
|
+
throw new Error('Native v4 title verification requires the initial mission hook to provisionally bind the task first.');
|
|
251
|
+
}
|
|
163
252
|
if (params.projectId !== manifest.codex.projectId || params.baseSha !== manifest.parent.baseSha) {
|
|
164
253
|
throw new Error('Native project/base attestation does not match the prepared task.');
|
|
165
254
|
}
|
|
166
255
|
if (params.sandbox !== 'workspace-write')
|
|
167
256
|
throw new Error('Native task must attest the workspace-write sandbox.');
|
|
168
|
-
const cwd =
|
|
169
|
-
if (
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
const worktreeRoot = path.join(codexHome, 'worktrees');
|
|
173
|
-
const relativeToCodex = path.relative(worktreeRoot, cwd);
|
|
174
|
-
if (!relativeToCodex || relativeToCodex.startsWith('..') || path.isAbsolute(relativeToCodex)) {
|
|
175
|
-
throw new Error(`Native cwd must be beneath the Codex worktree root ${worktreeRoot}.`);
|
|
176
|
-
}
|
|
177
|
-
if (cwd.toLowerCase() === path.resolve(manifest.parent.root).toLowerCase() ||
|
|
178
|
-
cwd.toLowerCase() === path.resolve(manifest.worktree.path).toLowerCase()) {
|
|
179
|
-
throw new Error('Native cwd must be the distinct Codex-managed execution checkout, not the parent or staging path.');
|
|
180
|
-
}
|
|
181
|
-
if ((0, git_1.headCommit)(cwd) !== manifest.parent.baseSha) {
|
|
182
|
-
throw new Error('Native checkout HEAD does not match the recorded starting commit.');
|
|
183
|
-
}
|
|
184
|
-
const branch = (0, git_1.branchName)(cwd);
|
|
185
|
-
if (branch && branch !== manifest.worktree.branch) {
|
|
186
|
-
throw new Error(`Native checkout branch ${branch} does not match ${manifest.worktree.branch}.`);
|
|
257
|
+
const cwd = validateNativeCheckout(manifest, params.cwd);
|
|
258
|
+
if (manifest.codex.threadId && manifest.codex.threadId !== params.threadId ||
|
|
259
|
+
manifest.codex.nativeCwd && path.resolve(manifest.codex.nativeCwd) !== path.resolve(cwd)) {
|
|
260
|
+
throw new Error('Native title verification does not match the provisional child binding.');
|
|
187
261
|
}
|
|
188
262
|
return (0, store_1.updateManifest)(manifest.id, {
|
|
189
263
|
codex: {
|
|
@@ -191,7 +265,6 @@ function verifyNativeBinding(manifest, params) {
|
|
|
191
265
|
clientThreadId: params.clientThreadId,
|
|
192
266
|
threadId: params.threadId,
|
|
193
267
|
nativeCwd: cwd,
|
|
194
|
-
bootstrapAck: params.bootstrapAck,
|
|
195
268
|
verifiedTitle: params.title,
|
|
196
269
|
titleReadbacks: params.titleReadbacks,
|
|
197
270
|
titleVerifiedAt: new Date().toISOString(),
|
|
@@ -200,19 +273,22 @@ function verifyNativeBinding(manifest, params) {
|
|
|
200
273
|
});
|
|
201
274
|
}
|
|
202
275
|
function attachNativeCheckout(manifest) {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
276
|
+
return (0, store_1.withProjectChipLock)(manifest.project.id, () => {
|
|
277
|
+
const current = (0, store_1.readManifest)(manifest.id) || manifest;
|
|
278
|
+
if (current.state !== 'awaiting-native' || !current.codex.titleVerifiedAt ||
|
|
279
|
+
!current.codex.threadId || !current.codex.clientThreadId || !current.codex.nativeCwd) {
|
|
280
|
+
throw new Error('Native attach requires a durably verified title and complete native binding.');
|
|
281
|
+
}
|
|
282
|
+
if (current.codex.titleReadbacks !== 2 ||
|
|
283
|
+
current.codex.verifiedTitle !== expectedNativeTitle(current)) {
|
|
284
|
+
throw new Error('Native verified title no longer matches the chip role/name.');
|
|
285
|
+
}
|
|
286
|
+
(0, git_1.writeChipMarker)(current.codex.nativeCwd, {
|
|
287
|
+
id: current.id, branch: current.worktree.branch, baseSha: current.parent.baseSha,
|
|
288
|
+
mode: current.mode, owns: current.owns, detachedAllowed: true,
|
|
289
|
+
});
|
|
290
|
+
return (0, store_1.updateManifest)(current.id, { state: 'running', error: undefined });
|
|
214
291
|
});
|
|
215
|
-
return (0, store_1.updateManifest)(manifest.id, { state: 'running', error: undefined });
|
|
216
292
|
}
|
|
217
293
|
function assertNoLiveNativeMonitor(manifest, ownerPid) {
|
|
218
294
|
const current = (0, store_1.readManifest)(manifest.id) || manifest;
|
|
@@ -255,6 +331,14 @@ async function runNativeMonitor(id, pollMs = 2_000) {
|
|
|
255
331
|
await (0, inbox_1.sendChipEvent)(manifest, manifest.parent.sessionId, { kind: 'failed', summary: message }, manifest.codex.threadId);
|
|
256
332
|
break;
|
|
257
333
|
}
|
|
334
|
+
const resumeDeadline = Date.parse(manifest.codex.resume?.deadlineAt || '');
|
|
335
|
+
if (manifest.codex.resume && !manifest.codex.resume.acknowledgedAt &&
|
|
336
|
+
Number.isFinite(resumeDeadline) && Date.now() >= resumeDeadline) {
|
|
337
|
+
const message = 'Resume delivery was not acknowledged by the interrupted chip within two minutes.';
|
|
338
|
+
manifest = (0, store_1.updateManifest)(id, { state: 'blocked', error: message });
|
|
339
|
+
await (0, inbox_1.sendChipEvent)(manifest, manifest.parent.sessionId, { kind: 'blocked', summary: message }, manifest.codex.threadId);
|
|
340
|
+
break;
|
|
341
|
+
}
|
|
258
342
|
(0, store_1.updateManifest)(id, { worker: { ...manifest.worker, pid: process.pid, heartbeatAt: new Date().toISOString() } });
|
|
259
343
|
const receipt = await (0, worker_1.processChipReceipt)(id);
|
|
260
344
|
if (receipt && ['ready', 'blocked'].includes(receipt.state))
|
|
@@ -267,6 +351,13 @@ async function runNativeMonitor(id, pollMs = 2_000) {
|
|
|
267
351
|
const current = (0, store_1.readManifest)(id);
|
|
268
352
|
if (current?.state === 'reported')
|
|
269
353
|
throw err;
|
|
354
|
+
if (current?.codex.resume && !current.codex.resume.acknowledgedAt) {
|
|
355
|
+
(0, store_1.updateManifest)(id, {
|
|
356
|
+
state: 'blocked',
|
|
357
|
+
error: `Resume breakthrough delivery failed and remains retryable: ${message}`,
|
|
358
|
+
});
|
|
359
|
+
return;
|
|
360
|
+
}
|
|
270
361
|
manifest = (0, store_1.updateManifest)(id, { state: 'failed', error: message });
|
|
271
362
|
await (0, inbox_1.sendChipEvent)(manifest, manifest.parent.sessionId, { kind: 'failed', summary: message }, manifest.codex.threadId);
|
|
272
363
|
throw err;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../../src/commands/codex-chip/native.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../../src/commands/codex-chip/native.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,19 +2,27 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.chipPrompt = chipPrompt;
|
|
4
4
|
const model_1 = require("./model");
|
|
5
|
+
const goals_1 = require("./goals");
|
|
5
6
|
function chipPrompt(manifest, cliCommand = 'greprag') {
|
|
6
|
-
const executionPath =
|
|
7
|
+
const executionPath = manifest.codex.runtime === 'native' && !manifest.codex.nativeCwd
|
|
8
|
+
? 'the Codex-provided native worktree created for this task (the initial mission hook records its actual path before tool use)'
|
|
9
|
+
: (0, model_1.chipExecutionPath)(manifest);
|
|
7
10
|
const ownership = manifest.mode === 'read'
|
|
8
11
|
? 'This is a read-only chip. Do not modify files.'
|
|
9
12
|
: `You exclusively own these repository paths:\n${manifest.owns.map(v => `- ${v}`).join('\n')}`;
|
|
13
|
+
const goal = manifest.goalId ? (0, goals_1.readMissionGoal)(manifest.goalId) : null;
|
|
14
|
+
const criteria = goal?.criteria.filter(item => (manifest.covers || []).includes(item.id)) || [];
|
|
15
|
+
const evidenceFlags = criteria.map(item => ` --evidence "${item.id}:<concrete proof>"`).join('');
|
|
16
|
+
const goalContract = goal ? `\nParent mission goal (${goal.id}):\n- Objective: ${goal.objective}\n- Final state: ${goal.finalState}\n- This chip covers:\n${criteria.map(item => ` - ${item.id}: ${item.text}`).join('\n')}\n- Report concrete evidence against every covered criterion. The parent alone accepts the mission.\n` : '';
|
|
10
17
|
const completion = manifest.mode === 'read'
|
|
11
|
-
? `Keep the checkout unchanged, then run:\n ${cliCommand} codex chip report ${manifest.id} --summary "<analysis result>" --check "read-only repository state verified"\nDo not stop before the report command succeeds.`
|
|
12
|
-
: `Commit the chip's changes, then run:\n ${cliCommand} codex chip report ${manifest.id} --summary "<result>" --check "<verification>"\nDo not stop before the report command succeeds.`;
|
|
18
|
+
? `Keep the checkout unchanged, then run:\n ${cliCommand} codex chip report ${manifest.id} --summary "<analysis result>" --check "read-only repository state verified"${evidenceFlags}\nDo not stop before the report command succeeds.`
|
|
19
|
+
: `Commit the chip's changes, then run:\n ${cliCommand} codex chip report ${manifest.id} --summary "<result>" --check "<verification>"${evidenceFlags}\nDo not stop before the report command succeeds.`;
|
|
13
20
|
const blocker = `If blocked, run:\n ${cliCommand} codex chip block ${manifest.id} --reason "<specific blocker>"`;
|
|
14
|
-
return `You are
|
|
21
|
+
return `You are ${(0, model_1.chipTitle)(manifest)} (${manifest.id.slice(0, 8)}), an isolated child task.
|
|
15
22
|
|
|
16
23
|
Assignment:
|
|
17
24
|
${manifest.task}
|
|
25
|
+
${goalContract}
|
|
18
26
|
|
|
19
27
|
Parent-owned model selection:
|
|
20
28
|
- ${manifest.codex.model} / ${manifest.codex.effort} (${manifest.codex.profile})
|
|
@@ -36,9 +44,9 @@ Completion contract:
|
|
|
36
44
|
3. ${blocker}
|
|
37
45
|
|
|
38
46
|
Parent inbox contract:
|
|
39
|
-
- The native attach
|
|
47
|
+
- The initial mission hook binds this native checkout before tool use; attach sends IN-FLIGHT to the recorded parent as soon as the parent resolves the task. Never wait for or accept a second assignment.
|
|
40
48
|
- Before ending, submit exactly one terminal report: DONE via \`report\`, or BLOCKED via \`block\`.
|
|
41
49
|
|
|
42
|
-
The durable manifest is ${manifest.id}; it is the authority for lifecycle and ownership.`;
|
|
50
|
+
The durable manifest is ${manifest.id}; native binding proof is ${manifest.codex.bindingNonce || 'legacy'}; it is the authority for lifecycle and ownership.`;
|
|
43
51
|
}
|
|
44
52
|
//# sourceMappingURL=prompt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/commands/codex-chip/prompt.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/commands/codex-chip/prompt.ts"],"names":[],"mappings":";;AAGA,gCA6CC;AAhDD,mCAAqE;AACrE,mCAA0C;AAE1C,SAAgB,UAAU,CAAC,QAAsB,EAAE,UAAU,GAAG,SAAS;IACvE,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS;QACpF,CAAC,CAAC,6HAA6H;QAC/H,CAAC,CAAC,IAAA,yBAAiB,EAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM;QACxC,CAAC,CAAC,gDAAgD;QAClD,CAAC,CAAC,gDAAgD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAClG,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,uBAAe,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAChG,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,0BAA0B,IAAI,CAAC,EAAE,oBAAoB,IAAI,CAAC,SAAS,oBAAoB,IAAI,CAAC,UAAU,0BAA0B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,uGAAuG,CAAC,CAAC,CAAC,EAAE,CAAC;IACxU,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM;QACzC,CAAC,CAAC,8CAA8C,UAAU,sBAAsB,QAAQ,CAAC,EAAE,+EAA+E,aAAa,mDAAmD;QAC1O,CAAC,CAAC,4CAA4C,UAAU,sBAAsB,QAAQ,CAAC,EAAE,iDAAiD,aAAa,mDAAmD,CAAC;IAC7M,MAAM,OAAO,GAAG,wBAAwB,UAAU,qBAAqB,QAAQ,CAAC,EAAE,gCAAgC,CAAC;IACnH,OAAO,WAAW,IAAA,iBAAS,EAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;;;EAGjE,QAAQ,CAAC,IAAI;EACb,YAAY;;;IAGV,QAAQ,CAAC,KAAK,CAAC,KAAK,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,KAAK,CAAC,OAAO;YAClE,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,IAAI,wBAAwB;;;;;0CAK9B,aAAa;YAC3C,QAAQ,CAAC,QAAQ,CAAC,MAAM;iBACnB,QAAQ,CAAC,MAAM,CAAC,OAAO;IACpC,SAAS;;;;;;KAMR,UAAU;KACV,OAAO;;;;;;0BAMc,QAAQ,CAAC,EAAE,6BAA6B,QAAQ,CAAC,KAAK,CAAC,YAAY,IAAI,QAAQ,oDAAoD,CAAC;AAC9J,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.prepareResume = prepareResume;
|
|
37
|
+
exports.acknowledgeResume = acknowledgeResume;
|
|
38
|
+
const crypto = __importStar(require("crypto"));
|
|
39
|
+
const git_1 = require("./git");
|
|
40
|
+
const store_1 = require("./store");
|
|
41
|
+
const lifecycle_1 = require("./lifecycle");
|
|
42
|
+
function flag(args, name) {
|
|
43
|
+
const index = args.indexOf(name);
|
|
44
|
+
return index >= 0 ? args[index + 1] : undefined;
|
|
45
|
+
}
|
|
46
|
+
function prepareResume(args) {
|
|
47
|
+
const ref = args[0];
|
|
48
|
+
if (!ref)
|
|
49
|
+
throw new Error('Chip id or name is required.');
|
|
50
|
+
let manifest = (0, store_1.findManifest)(ref);
|
|
51
|
+
if (!manifest)
|
|
52
|
+
throw new Error(`Unknown chip: ${ref}`);
|
|
53
|
+
if (manifest.codex.runtime !== 'native' || !manifest.codex.threadId || !['running', 'blocked'].includes(manifest.state)) {
|
|
54
|
+
throw new Error(`Chip ${manifest.id.slice(0, 8)} is ${manifest.state}; only an attached running/blocked native chip can resume. Relaunch a replacement for terminal chips.`);
|
|
55
|
+
}
|
|
56
|
+
const monitorAlive = Boolean(manifest.worker?.pid) && (() => {
|
|
57
|
+
try {
|
|
58
|
+
process.kill(manifest.worker.pid, 0);
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
})();
|
|
65
|
+
const restartMonitor = manifest.state === 'blocked' || Boolean(manifest.worker?.settledAt) || !monitorAlive;
|
|
66
|
+
const nonce = crypto.randomBytes(16).toString('hex');
|
|
67
|
+
const now = new Date();
|
|
68
|
+
const cli = manifest.codex.cliCommand || 'greprag';
|
|
69
|
+
const acknowledgement = `${cli} codex chip resume-ack ${manifest.id} --nonce ${nonce}`;
|
|
70
|
+
manifest = (0, store_1.updateManifest)(manifest.id, {
|
|
71
|
+
state: 'running', error: undefined,
|
|
72
|
+
codex: { ...manifest.codex, resume: {
|
|
73
|
+
nonce, requestedAt: now.toISOString(), deadlineAt: new Date(now.getTime() + 2 * 60_000).toISOString(),
|
|
74
|
+
} },
|
|
75
|
+
});
|
|
76
|
+
return { manifest, restartMonitor, handoff: {
|
|
77
|
+
protocol: 'greprag-codex-chip-resume-v1', threadId: manifest.codex.threadId,
|
|
78
|
+
prompt: `Resume ${manifest.codex.displayName || manifest.name} after interruption from the current worktree. Before any other work, run exactly:\n${acknowledgement}\nThen continue the existing assignment without restarting or discarding edits.`,
|
|
79
|
+
acknowledgement, requirement: 'Delivery is not recovery until the parent receives the RESUMED breakthrough event.',
|
|
80
|
+
} };
|
|
81
|
+
}
|
|
82
|
+
async function acknowledgeResume(args) {
|
|
83
|
+
const id = args[0];
|
|
84
|
+
const nonce = flag(args, '--nonce');
|
|
85
|
+
if (!id || !nonce)
|
|
86
|
+
throw new Error('resume-ack requires chip id and --nonce.');
|
|
87
|
+
const marker = (0, git_1.readChipMarker)(process.cwd());
|
|
88
|
+
if (!marker || marker.id !== id)
|
|
89
|
+
throw new Error('Resume acknowledgment must run from the matching managed checkout.');
|
|
90
|
+
const manifest = (0, store_1.findManifest)(id);
|
|
91
|
+
if (!manifest?.codex.resume || manifest.codex.resume.nonce !== nonce)
|
|
92
|
+
throw new Error('Resume acknowledgment nonce is stale or invalid.');
|
|
93
|
+
(0, lifecycle_1.writeChipReceipt)({ type: 'resume-ack', id, nonce, at: new Date().toISOString() });
|
|
94
|
+
const deadline = Date.now() + 30_000;
|
|
95
|
+
while (Date.now() < deadline) {
|
|
96
|
+
const current = (0, store_1.findManifest)(id);
|
|
97
|
+
if (current?.codex.resume?.nonce === nonce && current.codex.resume.acknowledgedAt) {
|
|
98
|
+
console.log(`Resume acknowledged to parent for chip ${id.slice(0, 8)}.`);
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
await new Promise(resolve => setTimeout(resolve, 250));
|
|
102
|
+
}
|
|
103
|
+
throw new Error('Resume acknowledgment was not delivered to the parent within 30 seconds; do not continue work.');
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=resume-command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resume-command.js","sourceRoot":"","sources":["../../../src/commands/codex-chip/resume-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,3 +13,4 @@ export declare function findManifestByContext(cwd: string, sessionId?: string):
|
|
|
13
13
|
export declare function updateManifest(id: string, patch: Partial<Omit<ChipManifest, 'id' | 'version'>> & {
|
|
14
14
|
state?: ChipState;
|
|
15
15
|
}): ChipManifest;
|
|
16
|
+
export declare function recordChipEventReceipt(id: string, eventKey: string, receiptId: string): ChipManifest;
|