@raidiant/notifai 11.6.3-beta.2 → 11.7.1-beta.2
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/CHANGELOG.md +31 -3
- package/dist/atomic-file.d.ts +1 -1
- package/dist/atomic-file.js.map +1 -1
- package/dist/client.d.ts +5 -1
- package/dist/client.js +2 -0
- package/dist/client.js.map +1 -1
- package/dist/codex-answer-control.d.ts +14 -0
- package/dist/codex-answer-control.js +41 -0
- package/dist/codex-answer-control.js.map +1 -0
- package/dist/codex-answer-presentation.d.ts +18 -0
- package/dist/codex-answer-presentation.js +113 -0
- package/dist/codex-answer-presentation.js.map +1 -0
- package/dist/codex-input-lifecycle.d.ts +10 -0
- package/dist/codex-input-lifecycle.js +63 -0
- package/dist/codex-input-lifecycle.js.map +1 -0
- package/dist/codex-native-control.d.ts +13 -0
- package/dist/codex-native-control.js +120 -0
- package/dist/codex-native-control.js.map +1 -0
- package/dist/codex-native-turn.d.ts +18 -0
- package/dist/codex-native-turn.js +46 -4
- package/dist/codex-native-turn.js.map +1 -1
- package/dist/codex-question-bindings.d.ts +76 -0
- package/dist/codex-question-bindings.js +151 -0
- package/dist/codex-question-bindings.js.map +1 -0
- package/dist/codex-queue-control.d.ts +21 -0
- package/dist/codex-queue-control.js +59 -0
- package/dist/codex-queue-control.js.map +1 -0
- package/dist/codex-tool-messages.js +40 -16
- package/dist/codex-tool-messages.js.map +1 -1
- package/dist/commands-acknowledge.d.ts +2 -4
- package/dist/commands-acknowledge.js +7 -0
- package/dist/commands-acknowledge.js.map +1 -1
- package/dist/commands-ask.js +64 -12
- package/dist/commands-ask.js.map +1 -1
- package/dist/commands-auth.d.ts +3 -1
- package/dist/commands-auth.js +88 -28
- package/dist/commands-auth.js.map +1 -1
- package/dist/commands-close.js +51 -3
- package/dist/commands-close.js.map +1 -1
- package/dist/commands-core.d.ts +7 -0
- package/dist/commands-core.js +1 -0
- package/dist/commands-core.js.map +1 -1
- package/dist/commands-hook-attend.js +50 -10
- package/dist/commands-hook-attend.js.map +1 -1
- package/dist/commands-hook-run.js +2 -1
- package/dist/commands-hook-run.js.map +1 -1
- package/dist/commands-init.d.ts +2 -0
- package/dist/commands-init.js +3 -3
- package/dist/commands-init.js.map +1 -1
- package/dist/commands-io.js +7 -0
- package/dist/commands-io.js.map +1 -1
- package/dist/commands-native-acknowledge.d.ts +8 -0
- package/dist/commands-native-acknowledge.js +114 -0
- package/dist/commands-native-acknowledge.js.map +1 -0
- package/dist/credentials.d.ts +5 -0
- package/dist/credentials.js.map +1 -1
- package/dist/file-lock.js +37 -22
- package/dist/file-lock.js.map +1 -1
- package/dist/hermes-attendant.js +4 -0
- package/dist/hermes-attendant.js.map +1 -1
- package/dist/hook-acknowledgements.d.ts +1 -0
- package/dist/hook-acknowledgements.js +3 -1
- package/dist/hook-acknowledgements.js.map +1 -1
- package/dist/hook-lifecycle.d.ts +12 -1
- package/dist/hook-lifecycle.js +145 -79
- package/dist/hook-lifecycle.js.map +1 -1
- package/dist/hook-question-retirement.js +2 -1
- package/dist/hook-question-retirement.js.map +1 -1
- package/dist/hook-question-state.d.ts +6 -2
- package/dist/hook-question-state.js +19 -7
- package/dist/hook-question-state.js.map +1 -1
- package/dist/hook-session-state.d.ts +5 -1
- package/dist/hook-session-state.js +48 -14
- package/dist/hook-session-state.js.map +1 -1
- package/dist/hook-types.d.ts +23 -1
- package/dist/hook-types.js.map +1 -1
- package/dist/native-answer-operation.d.ts +70 -0
- package/dist/native-answer-operation.js +247 -0
- package/dist/native-answer-operation.js.map +1 -0
- package/dist/pairing-qr.d.ts +5 -0
- package/dist/pairing-qr.js +24 -0
- package/dist/pairing-qr.js.map +1 -0
- package/dist/pending-pairing.d.ts +1 -0
- package/dist/pending-pairing.js +7 -5
- package/dist/pending-pairing.js.map +1 -1
- package/dist/program.js +9 -3
- package/dist/program.js.map +1 -1
- package/dist/session-attendant-probe.d.ts +1 -1
- package/dist/session-attendant-probe.js +2 -1
- package/dist/session-attendant-probe.js.map +1 -1
- package/dist/session-attendant-state.d.ts +5 -0
- package/dist/session-attendant-state.js +29 -10
- package/dist/session-attendant-state.js.map +1 -1
- package/dist/session-delivery.d.ts +29 -0
- package/dist/session-delivery.js +3 -1
- package/dist/session-delivery.js.map +1 -1
- package/dist/session-input-wakes.d.ts +78 -0
- package/dist/session-input-wakes.js +239 -0
- package/dist/session-input-wakes.js.map +1 -0
- package/dist/session-inputs.d.ts +41 -6
- package/dist/session-inputs.js +199 -19
- package/dist/session-inputs.js.map +1 -1
- package/dist/skill-source/manifest.json +8 -4
- package/dist/skill-source/notifai/SKILL.md +30 -28
- package/dist/skill-source/notifai/references/harness-setup.md +33 -20
- package/dist/skill-source/notifai/references/native-questions.md +51 -0
- package/package.json +10 -3
package/dist/session-inputs.js
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* presentation. A late wake therefore cannot resurrect an acknowledged answer.
|
|
5
5
|
*/
|
|
6
6
|
import { randomUUID } from 'node:crypto';
|
|
7
|
+
import { isDeepStrictEqual } from 'node:util';
|
|
8
|
+
import { markCodexOrdinaryPresentation } from './codex-question-bindings.js';
|
|
7
9
|
import { readFileSync } from 'node:fs';
|
|
8
10
|
import path from 'node:path';
|
|
9
11
|
import { atomicWriteFileSync } from './atomic-file.js';
|
|
@@ -14,7 +16,14 @@ import { readSessionIncarnation, readSessionState, recordSessionNotified, sessio
|
|
|
14
16
|
import { sessionMessageContext } from './injection-render.js';
|
|
15
17
|
import { currentProcessIdentity, processIdentityLiveness } from './process-identity.js';
|
|
16
18
|
import { answerWriterGone, beginHandOff, readDeliveryJournal } from './session-delivery.js';
|
|
17
|
-
|
|
19
|
+
import { CodexControlNotSent } from './codex-native-control.js';
|
|
20
|
+
import { connectCodexQueue } from './codex-queue-control.js';
|
|
21
|
+
import { readNativeTurnSnapshot } from './codex-native-turn.js';
|
|
22
|
+
import { admitInputWake, detachInputWakes, electInputWake, observeInputWake, readInputWakes, reconcileInputWakes, recoverUncertainInputWake } from './session-input-wakes.js';
|
|
23
|
+
import { readAttendantLease, nativeTurnContinues } from './session-attendant-state.js';
|
|
24
|
+
export function sessionInputWake(token) {
|
|
25
|
+
if (token !== undefined)
|
|
26
|
+
return `Notifai wake ${token}. Use any Notifai input supplied with this turn. Only if none was supplied, run \`notifai receive\` once; if it is empty, continue your work. This wake contains no note, answer, or approval.`;
|
|
18
27
|
return `Notifai — user input may be waiting for this session. Run \`notifai receive\` before continuing. If no input remains, continue your work. This wake-up contains no note, answer, or approval.`;
|
|
19
28
|
}
|
|
20
29
|
/** Atomically coalesce native wakes until one actually reaches its consumer. */
|
|
@@ -56,6 +65,15 @@ export async function wakeSessionInputs(sessionId, env, send, log) {
|
|
|
56
65
|
}
|
|
57
66
|
}
|
|
58
67
|
export function observeSessionInputWake(sessionId, env, prompt) {
|
|
68
|
+
if (prompt !== undefined) {
|
|
69
|
+
const matched = /^Notifai wake ([0-9a-f-]{36})\. /.exec(prompt);
|
|
70
|
+
if (matched !== null) {
|
|
71
|
+
const owned = readInputWakes({ sessionId, env }).find(a => a.token === matched[1] && a.text === prompt);
|
|
72
|
+
if (owned !== undefined)
|
|
73
|
+
observeInputWake({ sessionId, env }, owned.token);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
59
77
|
if (prompt !== sessionInputWake())
|
|
60
78
|
return;
|
|
61
79
|
updateSessionState(sessionId, env, (state) => {
|
|
@@ -82,9 +100,17 @@ export function stageSessionAnswers(sessionId, env, accepted) {
|
|
|
82
100
|
recordSessionNotified(sessionId, env, accepted.recorded_at);
|
|
83
101
|
}
|
|
84
102
|
/** The existing route wakes the exact owner, but no longer owns answer text. */
|
|
85
|
-
export function sessionInputRoute(sessionId, env, route, log) {
|
|
103
|
+
export function sessionInputRoute(sessionId, env, route, log, wakeOwner = 'producer') {
|
|
86
104
|
return { ...route, defer: async (accepted) => {
|
|
87
105
|
stageSessionAnswers(sessionId, env, accepted);
|
|
106
|
+
// A live resident owns scheduling; its completion probe also covers the
|
|
107
|
+
// case where no more tool callbacks occur. Preserve return when absent.
|
|
108
|
+
if (wakeOwner === 'attendant') {
|
|
109
|
+
const owner = readSessionIncarnation(sessionId, env);
|
|
110
|
+
const lease = readAttendantLease(sessionId, env);
|
|
111
|
+
if (owner !== null && lease?.incarnation === owner.incarnation)
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
88
114
|
await wakeSessionInputs(sessionId, env, async (text) => {
|
|
89
115
|
const result = await route.deliver({
|
|
90
116
|
context: text, answers: 0, remaining: 0, request_ids: [], journal_recorded_at: accepted.recorded_at,
|
|
@@ -99,25 +125,30 @@ function messagesPath(sessionId, env) {
|
|
|
99
125
|
}
|
|
100
126
|
/** Cache only: the service remains authoritative and claims fence stale copies. */
|
|
101
127
|
export function stageSessionMessages(sessionId, env, lease, messages) {
|
|
102
|
-
|
|
128
|
+
updateSessionState(sessionId, env, state => {
|
|
129
|
+
atomicWriteFileSync(messagesPath(sessionId, env), JSON.stringify({ session_id: sessionId, ...lease, messages }));
|
|
130
|
+
return state;
|
|
131
|
+
});
|
|
103
132
|
}
|
|
104
133
|
export function readSessionMessages(sessionId, env, lease) {
|
|
134
|
+
return readSessionMessageCache(sessionId, env, lease) ?? [];
|
|
135
|
+
}
|
|
136
|
+
function readSessionMessageCache(sessionId, env, lease) {
|
|
105
137
|
try {
|
|
106
138
|
const data = JSON.parse(readFileSync(messagesPath(sessionId, env), 'utf8'));
|
|
107
139
|
if (data.session_id !== sessionId || data.incarnation !== lease.incarnation || data.generation !== lease.generation || !Array.isArray(data.messages))
|
|
108
|
-
return
|
|
140
|
+
return null;
|
|
109
141
|
if (!data.messages.every((m) => typeof m.message_id === 'string' && /^sm_[A-Za-z0-9_-]+$/.test(m.message_id) &&
|
|
110
142
|
typeof m.created_at === 'string' && typeof m.agent_acknowledgement_text_required === 'boolean' &&
|
|
111
143
|
(m.kind === 'note' ? typeof m.body === 'string' : m.kind === 'answer_edit' && typeof m.request_id === 'string' && typeof m.text === 'string' && Array.isArray(m.answers))))
|
|
112
|
-
return
|
|
144
|
+
return null;
|
|
113
145
|
return data.messages;
|
|
114
146
|
}
|
|
115
147
|
catch {
|
|
116
|
-
return
|
|
148
|
+
return null;
|
|
117
149
|
}
|
|
118
150
|
}
|
|
119
|
-
function pendingSessionInputs(sessionId, env, lease) {
|
|
120
|
-
const state = readSessionState(sessionId, env);
|
|
151
|
+
function pendingSessionInputs(sessionId, env, lease, state = readSessionState(sessionId, env), cachedMessages) {
|
|
121
152
|
const written = new Set(readDeliveryJournal(sessionId, env)
|
|
122
153
|
.filter((entry) => ['writing', 'written', 'failed'].includes(entry.stage))
|
|
123
154
|
.map((entry) => entry.subject.type === 'answer' ? entry.subject.request_id : entry.subject.message_id));
|
|
@@ -125,7 +156,7 @@ function pendingSessionInputs(sessionId, env, lease) {
|
|
|
125
156
|
const answers = (state.waiting_answers ?? []).filter((answer) => answer.pending.request_id !== undefined && !written.has(answer.pending.request_id) &&
|
|
126
157
|
owed.has(answer.pending.request_id)).slice(0, 20);
|
|
127
158
|
// Answers precede their edits; notes retain the service's immutable order.
|
|
128
|
-
const messages = (lease === null ? [] : readSessionMessages(sessionId, env, lease))
|
|
159
|
+
const messages = (cachedMessages ?? (lease === null ? [] : readSessionMessages(sessionId, env, lease)))
|
|
129
160
|
.filter((message) => !written.has(message.message_id)).slice(0, 20 - answers.length);
|
|
130
161
|
return { answers, messages };
|
|
131
162
|
}
|
|
@@ -133,10 +164,113 @@ export function hasSessionInputs(sessionId, env, lease) {
|
|
|
133
164
|
const { answers, messages } = pendingSessionInputs(sessionId, env, lease);
|
|
134
165
|
return answers.length + messages.length > 0;
|
|
135
166
|
}
|
|
136
|
-
/**
|
|
137
|
-
export
|
|
167
|
+
/** Read-only under the state lock. Unknown cache state is not an empty inbox. */
|
|
168
|
+
export function pendingInputRevisionIds(sessionId, env, lease, state) {
|
|
169
|
+
const cached = lease === null ? [] : readSessionMessageCache(sessionId, env, lease);
|
|
170
|
+
if (cached === null)
|
|
171
|
+
return null;
|
|
172
|
+
const { answers, messages } = pendingSessionInputs(sessionId, env, lease, state, cached);
|
|
173
|
+
return [
|
|
174
|
+
...answers.map(a => `answer:${a.pending.request_id}:${a.replies.map(r => r.seq).join(',')}`),
|
|
175
|
+
...messages.map(m => `message:${m.message_id}`),
|
|
176
|
+
];
|
|
177
|
+
}
|
|
178
|
+
/** Optional exact queue integration. False means capability was unavailable
|
|
179
|
+
* before election, so the existing supported CLI wake remains the fallback. */
|
|
180
|
+
export async function wakeCodexSessionInputs(input) {
|
|
181
|
+
const owner = readSessionIncarnation(input.sessionId, input.env);
|
|
182
|
+
if (owner === null || owner.incarnation !== input.lease.incarnation || !input.mayWrite())
|
|
183
|
+
return true;
|
|
184
|
+
const generic = readSessionState(input.sessionId, input.env).input_wake;
|
|
185
|
+
if (generic?.incarnation === owner.incarnation && (generic.queued || processIdentityLiveness(generic.writer) !== 'gone'))
|
|
186
|
+
return true;
|
|
187
|
+
const initial = pendingInputRevisionIds(input.sessionId, input.env, input.lease);
|
|
188
|
+
if (initial === null || (initial.length === 0 && !readInputWakes(input).some(a => !['consumed', 'cancelled'].includes(a.phase))))
|
|
189
|
+
return true;
|
|
190
|
+
const control = await (input.connect ?? connectCodexQueue)(input.sessionId, input.env, performance.now() + 2_000);
|
|
191
|
+
if (control === null) {
|
|
192
|
+
const pending = pendingInputRevisionIds(input.sessionId, input.env, input.lease);
|
|
193
|
+
return pending === null || readInputWakes(input).some(a => a.incarnation === owner.incarnation &&
|
|
194
|
+
!['consumed', 'cancelled'].includes(a.phase) && a.inputIds.some(id => pending.includes(id)));
|
|
195
|
+
}
|
|
196
|
+
try {
|
|
197
|
+
// Mutating lifecycle/attendant observers run outside the wake-state lock.
|
|
198
|
+
const allowed = input.mayWrite() && input.mayWake();
|
|
199
|
+
const native = () => {
|
|
200
|
+
const proof = readSessionState(input.sessionId, input.env).codex_native_turn;
|
|
201
|
+
return proof?.key === owner.key ? readNativeTurnSnapshot(proof.transcript_path, input.sessionId, input.env) : null;
|
|
202
|
+
};
|
|
203
|
+
const gate = { ...input, owner: { key: owner.key, incarnation: owner.incarnation, generation: input.lease.generation },
|
|
204
|
+
namespace: control.namespace, control, native,
|
|
205
|
+
pendingIds: () => {
|
|
206
|
+
const lease = readAttendantLease(input.sessionId, input.env);
|
|
207
|
+
return lease?.incarnation === input.lease.incarnation && lease.generation === input.lease.generation
|
|
208
|
+
? pendingInputRevisionIds(input.sessionId, input.env, lease) : null;
|
|
209
|
+
},
|
|
210
|
+
mayWake: () => { const observed = native(); return allowed && (observed === null ? input.unknownAllowed?.() === true : observed.latest.ended && nativeTurnContinues(input.sessionId, input.env, owner.key, observed)); },
|
|
211
|
+
text: (token) => sessionInputWake(token) };
|
|
212
|
+
detachInputWakes(gate);
|
|
213
|
+
await reconcileInputWakes(input, control);
|
|
214
|
+
if (!allowed || !input.mayWrite())
|
|
215
|
+
return true;
|
|
216
|
+
const elected = electInputWake(gate) ?? await recoverUncertainInputWake(gate);
|
|
217
|
+
if (elected !== null)
|
|
218
|
+
await admitInputWake({ ...gate, token: elected.token, control: {
|
|
219
|
+
...control, add: async (token, text) => {
|
|
220
|
+
// Recovery may have awaited a native lookup. Refresh in-process lease
|
|
221
|
+
// authority at the actual byte boundary, outside every state lock.
|
|
222
|
+
if (!input.mayWrite() || !input.mayWake())
|
|
223
|
+
throw new CodexControlNotSent('Wake authorization changed before send');
|
|
224
|
+
return control.add(token, text);
|
|
225
|
+
},
|
|
226
|
+
} });
|
|
227
|
+
return true;
|
|
228
|
+
}
|
|
229
|
+
finally {
|
|
230
|
+
control.close();
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
/** Hook drains and the resident observer both call this bounded cleanup path.
|
|
234
|
+
* It never elects a wake, claims input, or acquires the delivery sequencer. */
|
|
235
|
+
export async function reconcileSessionInputWakes(sessionId, env, connect = connectCodexQueue) {
|
|
236
|
+
const scope = { sessionId, env };
|
|
237
|
+
const attempts = readInputWakes(scope);
|
|
238
|
+
if (!attempts.some(a => !['consumed', 'cancelled'].includes(a.phase)))
|
|
239
|
+
return;
|
|
240
|
+
const lease = readAttendantLease(sessionId, env);
|
|
241
|
+
// Losing the lease does not prove cached Session Messages disappeared.
|
|
242
|
+
if (lease !== null || attempts.every(a => a.generation === null)) {
|
|
243
|
+
detachInputWakes({ ...scope, pendingIds: () => {
|
|
244
|
+
const current = readAttendantLease(sessionId, env);
|
|
245
|
+
if (current?.incarnation !== lease?.incarnation || current?.generation !== lease?.generation)
|
|
246
|
+
return null;
|
|
247
|
+
return pendingInputRevisionIds(sessionId, env, current);
|
|
248
|
+
} });
|
|
249
|
+
}
|
|
250
|
+
if (!readInputWakes(scope).some(a => a.detached && !['consumed', 'cancelled'].includes(a.phase) && (a.nextCheckAt ?? 0) <= Date.now()))
|
|
251
|
+
return;
|
|
252
|
+
const control = await connect(sessionId, env, performance.now() + 750);
|
|
253
|
+
if (control === null)
|
|
254
|
+
return;
|
|
255
|
+
try {
|
|
256
|
+
await reconcileInputWakes(scope, control);
|
|
257
|
+
}
|
|
258
|
+
finally {
|
|
259
|
+
control.close();
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
function samePendingAnswer(state, answer) {
|
|
263
|
+
return state.acknowledgement_due?.some(entry => entry.request_id === answer.pending.request_id) === true &&
|
|
264
|
+
state.waiting_answers?.some(entry => isDeepStrictEqual(entry, answer)) === true;
|
|
265
|
+
}
|
|
266
|
+
/** One ordered prefix, at most 20 inputs, with ownership checked at the byte. */
|
|
267
|
+
async function drainSessionInputsOnce(input) {
|
|
138
268
|
const { sequencer: deps, lease } = input;
|
|
139
|
-
const
|
|
269
|
+
const initial = readSessionState(deps.sessionId, deps.env);
|
|
270
|
+
const batch = pendingSessionInputs(deps.sessionId, deps.env, lease, initial);
|
|
271
|
+
const nativeAt = input.nativeAnswers === undefined ? -1 : batch.answers.findIndex(answer => answer.delivery_claim === true && input.nativeAnswers.eligible(answer, initial));
|
|
272
|
+
const answers = nativeAt < 0 ? batch.answers : batch.answers.slice(0, nativeAt === 0 ? 1 : nativeAt);
|
|
273
|
+
const messages = nativeAt < 0 ? batch.messages : [];
|
|
140
274
|
if (answers.length + messages.length === 0 || !input.mayWrite())
|
|
141
275
|
return false;
|
|
142
276
|
// An unfenced answer has no server claim to reject a stale local copy.
|
|
@@ -176,8 +310,11 @@ export async function drainSessionInputs(input) {
|
|
|
176
310
|
// A concurrent consumer may have drained an unclaimed answer while this
|
|
177
311
|
// reader waited for the delivery lock. Re-read while holding that lock.
|
|
178
312
|
const current = readSessionState(deps.sessionId, deps.env);
|
|
179
|
-
|
|
180
|
-
|
|
313
|
+
if (answers.some(answer => current.waiting_answers?.some(entry => entry.pending.request_id === answer.pending.request_id && !isDeepStrictEqual(entry, answer)))) {
|
|
314
|
+
await handOff.finish('not-written');
|
|
315
|
+
return false;
|
|
316
|
+
}
|
|
317
|
+
const readyAnswers = answers.filter((answer) => samePendingAnswer(current, answer) &&
|
|
181
318
|
(answer.delivery_claim !== true || ids.has(answer.pending.request_id)));
|
|
182
319
|
const readyMessages = messages.filter((message) => ids.has(message.message_id));
|
|
183
320
|
if (readyAnswers.length + readyMessages.length === 0 || !input.mayWrite() || !handOff.writable()) {
|
|
@@ -190,6 +327,8 @@ export async function drainSessionInputs(input) {
|
|
|
190
327
|
].join('\n\n');
|
|
191
328
|
let began = false;
|
|
192
329
|
let outputAttempted = false;
|
|
330
|
+
let consumedState = false;
|
|
331
|
+
let prepared = null;
|
|
193
332
|
const restoreUnwritten = () => {
|
|
194
333
|
updateSessionState(deps.sessionId, deps.env, (latest) => ({
|
|
195
334
|
...latest, waiting_answers: [
|
|
@@ -205,22 +344,41 @@ export async function drainSessionInputs(input) {
|
|
|
205
344
|
}
|
|
206
345
|
};
|
|
207
346
|
try {
|
|
208
|
-
if (
|
|
347
|
+
if (nativeAt === 0 && readyAnswers.length === 1 && input.nativeAnswers !== undefined) {
|
|
348
|
+
prepared = await input.nativeAnswers.prepare(readyAnswers[0], current, deps.monotonic() + handOff.remainingMs());
|
|
349
|
+
}
|
|
350
|
+
if (!handOff.begin(() => !sessionHasEnded(deps.sessionId, deps.env), prepared === null ? {} : { presentation: prepared.presentation })) {
|
|
209
351
|
await handOff.finish('not-written');
|
|
210
352
|
return false;
|
|
211
353
|
}
|
|
212
354
|
began = true;
|
|
213
|
-
// Persist
|
|
355
|
+
// Persist the selected revision and consumption before bytes. A changed
|
|
356
|
+
// revision remains pending for a fresh handoff, never this prepared write.
|
|
214
357
|
const consumed = new Set(readyAnswers.map((answer) => answer.pending.request_id));
|
|
215
358
|
updateSessionState(deps.sessionId, deps.env, (latest) => {
|
|
359
|
+
if (prepared !== null) {
|
|
360
|
+
const checked = prepared.validate(latest);
|
|
361
|
+
latest = checked.state;
|
|
362
|
+
if (!checked.valid)
|
|
363
|
+
return latest;
|
|
364
|
+
}
|
|
365
|
+
if (!input.mayWrite() || !handOff.writable() || !readyAnswers.every(answer => samePendingAnswer(latest, answer)))
|
|
366
|
+
return latest;
|
|
367
|
+
if (prepared === null)
|
|
368
|
+
latest = markCodexOrdinaryPresentation(latest, new Set(readyAnswers.flatMap(answer => answer.pending.question_id === undefined ? [] : [answer.pending.question_id])));
|
|
216
369
|
const retiring = [...(latest.retiring ?? [])];
|
|
217
370
|
for (const answer of readyAnswers) {
|
|
218
371
|
const entry = retiringQuestion(answer.pending, 'answered');
|
|
219
372
|
if (entry !== null && !retiring.some((item) => item.request_id === entry.request_id))
|
|
220
373
|
retiring.push(entry);
|
|
221
374
|
}
|
|
375
|
+
consumedState = true;
|
|
222
376
|
return { ...latest, waiting_answers: (latest.waiting_answers ?? []).filter((answer) => !consumed.has(answer.pending.request_id)), retiring };
|
|
223
377
|
});
|
|
378
|
+
if (!consumedState) {
|
|
379
|
+
await handOff.finish('aborted');
|
|
380
|
+
return false;
|
|
381
|
+
}
|
|
224
382
|
for (const message of readyMessages)
|
|
225
383
|
recordMessageAcknowledgementDue(deps.sessionId, deps.env, {
|
|
226
384
|
message_id: message.message_id, recorded_at: deps.wall(), text_required: message.agent_acknowledgement_text_required,
|
|
@@ -231,24 +389,46 @@ export async function drainSessionInputs(input) {
|
|
|
231
389
|
return false;
|
|
232
390
|
}
|
|
233
391
|
outputAttempted = true;
|
|
234
|
-
|
|
392
|
+
if (prepared === null)
|
|
393
|
+
input.write(text);
|
|
394
|
+
else
|
|
395
|
+
await prepared.write(() => input.mayWrite() && handOff.writable());
|
|
235
396
|
if (readyAnswers.length > 0)
|
|
236
397
|
updateSessionState(deps.sessionId, deps.env, (latest) => ({
|
|
237
398
|
...latest, continuation: { answered_at: deps.wall(), count: (latest.continuation?.count ?? 0) + 1 },
|
|
238
399
|
}));
|
|
239
400
|
await handOff.finish('written');
|
|
240
401
|
deps.log?.info('delivery.handoff', {
|
|
241
|
-
route: 'input-drain', stage: 'presented', answers: readyAnswers.length, messages: readyMessages.length,
|
|
402
|
+
route: prepared === null ? 'input-drain' : 'native-answer', stage: 'presented', answers: readyAnswers.length, messages: readyMessages.length,
|
|
242
403
|
request_ids: readyAnswers.map((answer) => answer.pending.request_id), message_ids: readyMessages.map((message) => message.message_id),
|
|
243
404
|
oldest_message_age_ms: Math.max(0, ...readyMessages.map((message) => deps.wall() - Date.parse(message.created_at))),
|
|
244
405
|
});
|
|
245
406
|
return true;
|
|
246
407
|
}
|
|
247
408
|
catch (error) {
|
|
248
|
-
|
|
409
|
+
// Only the native transport can positively prove that no bytes left. Do
|
|
410
|
+
// not echo now: a new handoff must reacquire claims and recheck revisions.
|
|
411
|
+
if (prepared !== null && error instanceof CodexControlNotSent)
|
|
412
|
+
outputAttempted = false;
|
|
413
|
+
if (consumedState && !outputAttempted)
|
|
249
414
|
restoreUnwritten();
|
|
250
415
|
await handOff.finish(outputAttempted ? 'failed' : began ? 'aborted' : 'not-written');
|
|
416
|
+
if (prepared !== null && error instanceof CodexControlNotSent)
|
|
417
|
+
return false;
|
|
251
418
|
throw error;
|
|
252
419
|
}
|
|
420
|
+
finally {
|
|
421
|
+
prepared?.close();
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
export async function drainSessionInputs(input) {
|
|
425
|
+
try {
|
|
426
|
+
return await drainSessionInputsOnce(input);
|
|
427
|
+
}
|
|
428
|
+
finally {
|
|
429
|
+
// Delivery bookkeeping has released its sequencer before native cleanup.
|
|
430
|
+
await reconcileSessionInputWakes(input.sequencer.sessionId, input.sequencer.env)
|
|
431
|
+
.catch(() => undefined);
|
|
432
|
+
}
|
|
253
433
|
}
|
|
254
434
|
//# sourceMappingURL=session-inputs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-inputs.js","sourceRoot":"","sources":["../src/session-inputs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-inputs.js","sourceRoot":"","sources":["../src/session-inputs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema_version": 1,
|
|
3
|
-
"package_version": "11.
|
|
3
|
+
"package_version": "11.7.1-beta.2",
|
|
4
4
|
"skill": "notifai",
|
|
5
|
-
"digest": "sha256:
|
|
5
|
+
"digest": "sha256:f57bf9551a6beac3ef9df52be9ae452e0d40bd0e883b590e3e4a49624f774cd2",
|
|
6
6
|
"files": [
|
|
7
7
|
{
|
|
8
8
|
"path": "SKILL.md",
|
|
9
|
-
"sha256": "
|
|
9
|
+
"sha256": "0e68dc7246a00897f05f0200c347d2a45638c099c228d5538570f5cbe8091bc8"
|
|
10
10
|
},
|
|
11
11
|
{
|
|
12
12
|
"path": "references/diagnostics.md",
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
},
|
|
15
15
|
{
|
|
16
16
|
"path": "references/harness-setup.md",
|
|
17
|
-
"sha256": "
|
|
17
|
+
"sha256": "58881bd4e672ce6dcfce5f3548e3661fad5970e41ad7d842e27eecea97b1a33e"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"path": "references/native-questions.md",
|
|
21
|
+
"sha256": "9db5421427544a60d20c8fb01adbce774a6dd427f227f5a1bda7abda6ca1366d"
|
|
18
22
|
},
|
|
19
23
|
{
|
|
20
24
|
"path": "references/notes-and-edits.md",
|
|
@@ -35,9 +35,8 @@ or time and do not retry automatically. Re-run the exact semantic send with
|
|
|
35
35
|
Parent owns by default. Ordinary workers report Agent Events and do not load or send.
|
|
36
36
|
Explicit textual delegation makes a worker the owner.
|
|
37
37
|
|
|
38
|
-
An **Agent Event**
|
|
39
|
-
|
|
40
|
-
through Notifai. Internal worker reports are not Notification Requests.
|
|
38
|
+
An **Agent Event** happens in the work. A **Notification Request** sends it to
|
|
39
|
+
the User. Worker reports stay internal.
|
|
41
40
|
|
|
42
41
|
Owner session lifecycle context normally includes bounded, effective guidance
|
|
43
42
|
under provenance markers. When context is absent or says guidance exceeded its
|
|
@@ -48,8 +47,8 @@ notifai guidance
|
|
|
48
47
|
```
|
|
49
48
|
|
|
50
49
|
`notifai guidance` prints `when-to-notify`, `titles`, `content`, `questions`, and
|
|
51
|
-
`acknowledgements
|
|
52
|
-
`from=shipped default`. The first
|
|
50
|
+
`acknowledgements`, ordered by `from=you`, `from=this repository`, then
|
|
51
|
+
`from=shipped default`. The first governs when; the rest govern wording.
|
|
53
52
|
|
|
54
53
|
Two limits no topic can override:
|
|
55
54
|
|
|
@@ -177,9 +176,9 @@ notifai ask "Which environment should I roll out to?" \
|
|
|
177
176
|
|
|
178
177
|
`--json` returns choice ids and `question_id`.
|
|
179
178
|
|
|
180
|
-
`registered: true`
|
|
181
|
-
Provider Acceptance.
|
|
182
|
-
|
|
179
|
+
`registered: true` proves local registration, not submission or
|
|
180
|
+
Provider Acceptance. Submission starts immediately; never call a question sent or
|
|
181
|
+
delivered from registration alone. Settlement adds `request_id`, keeping
|
|
183
182
|
`question_id`. Inspect:
|
|
184
183
|
|
|
185
184
|
```bash
|
|
@@ -188,21 +187,23 @@ notifai status <question_id> --json
|
|
|
188
187
|
|
|
189
188
|
States: `local`, `frozen`, `live`, `answered`, `withdrawn`, `retired`.
|
|
190
189
|
|
|
191
|
-
**Registering is not the end of the turn.**
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
A harness form can remain pending after a reply;
|
|
190
|
+
**Registering is not the end of the turn.** Say what each answer will make you do
|
|
191
|
+
and continue independent work. Submission starts immediately; dependent work
|
|
192
|
+
waits for the reply.
|
|
193
|
+
A harness form can remain pending after a reply; never promise linked closure.
|
|
194
|
+
When `ask` returns `native_question`, read [native questions](references/native-questions.md)
|
|
195
|
+
before emitting its form or acting on its answer.
|
|
195
196
|
|
|
196
|
-
**Never say where the answer must arrive** ("tell me here").
|
|
197
|
+
**Never say where the answer must arrive** ("tell me here").
|
|
197
198
|
|
|
198
199
|
Use `--multi` for combined answers, `--body-file` for Body, `--image` for
|
|
199
200
|
evidence, or `--form <path|->` for up to 10 questions with one `summary`.
|
|
200
201
|
|
|
201
|
-
Register independent questions separately. Retire
|
|
202
|
-
|
|
202
|
+
Register independent questions separately. Retire obsolete questions or unlinked
|
|
203
|
+
ones answered in the conversation with
|
|
203
204
|
`notifai close <question_id>` or `notifai close --pending`.
|
|
204
205
|
|
|
205
|
-
|
|
206
|
+
After a timeout or unavailable route, keep IDs and inspect
|
|
206
207
|
`notifai status <question_id|request_id> --json` and `notifai replies
|
|
207
208
|
<request_id> --json`; never create a duplicate.
|
|
208
209
|
|
|
@@ -246,19 +247,18 @@ to read pending notes and answers together. An empty result means continue.
|
|
|
246
247
|
The wake-up contains no answer and needs no acknowledgement; never recover an
|
|
247
248
|
old answer from it. Hooks may have delivered the input already.
|
|
248
249
|
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
250
|
+
Within one submission, the latest reply corrects earlier choices; read typed
|
|
251
|
+
parts in order. Preserve distinct submissions and clarify conflicts before
|
|
252
|
+
acting. Relays use choice labels; `notifai replies <request_id> --json` has IDs.
|
|
252
253
|
|
|
253
|
-
Questions
|
|
254
|
-
inspect the original `question_id`; if lost, list outstanding questions:
|
|
254
|
+
Questions default to a day. Inspect `question_id` for a missing answer, or list:
|
|
255
255
|
|
|
256
256
|
```bash
|
|
257
257
|
notifai replies --pending --json
|
|
258
258
|
```
|
|
259
259
|
|
|
260
260
|
**Acknowledge before you resume.** The user needs to know their reply was read.
|
|
261
|
-
Notifai tells you the exact command; run it once per
|
|
261
|
+
Notifai tells you the exact command; run it once per presented submission or
|
|
262
262
|
[note or edit](references/notes-and-edits.md) (`sm_…`) that arrived through
|
|
263
263
|
Notifai, before the work it unblocks:
|
|
264
264
|
|
|
@@ -269,8 +269,8 @@ notifai acknowledge <request_id> --text "Rolling out to staging now; I'll report
|
|
|
269
269
|
Keep it under 200 characters and name only the concrete work their reply
|
|
270
270
|
causes: it is a receipt, not a report.
|
|
271
271
|
|
|
272
|
-
|
|
273
|
-
Acknowledgement
|
|
272
|
+
For app answers, notes and edits, omit `--text` when written replies are off.
|
|
273
|
+
Acknowledgement remains required.
|
|
274
274
|
|
|
275
275
|
Then resume the committed work without asking them to confirm again; it is
|
|
276
276
|
work you are resuming, not approval you received.
|
|
@@ -292,10 +292,12 @@ Never tell the user to run a command you could have run yourself.
|
|
|
292
292
|
do not ask again. Run the send. If setup is missing, run `notifai init --json`
|
|
293
293
|
and retry the exact send. Projectless requests never enable a Project.
|
|
294
294
|
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
295
|
+
For a QR-first credential gap, read [computer approval and browser fallback](references/harness-setup.md#signing-this-machine-in)
|
|
296
|
+
before proceeding. Present the local image or library-generated text QR with
|
|
297
|
+
its matching code before asking for a scan or result; a path alone is insufficient.
|
|
298
|
+
Only the User approves. Keep the QR and proof-bearing link local; never infer
|
|
299
|
+
an Account email. Resume the same pairing after approval.
|
|
300
|
+
|
|
299
301
|
Two independent decisions remain: Question Routing — devices or
|
|
300
302
|
terminal only — and the skill: this project or every project here.
|
|
301
303
|
Lifecycle wiring has no scope: one install per harness for this machine;
|