instar 1.2.37 → 1.2.39

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.
Files changed (50) hide show
  1. package/dist/commands/server.d.ts.map +1 -1
  2. package/dist/commands/server.js +19 -1
  3. package/dist/commands/server.js.map +1 -1
  4. package/dist/core/TopicIntent.d.ts +162 -0
  5. package/dist/core/TopicIntent.d.ts.map +1 -0
  6. package/dist/core/TopicIntent.js +355 -0
  7. package/dist/core/TopicIntent.js.map +1 -0
  8. package/dist/core/TopicIntentArcCheck.d.ts +101 -0
  9. package/dist/core/TopicIntentArcCheck.d.ts.map +1 -0
  10. package/dist/core/TopicIntentArcCheck.js +146 -0
  11. package/dist/core/TopicIntentArcCheck.js.map +1 -0
  12. package/dist/core/TopicIntentBriefing.d.ts +44 -0
  13. package/dist/core/TopicIntentBriefing.d.ts.map +1 -0
  14. package/dist/core/TopicIntentBriefing.js +88 -0
  15. package/dist/core/TopicIntentBriefing.js.map +1 -0
  16. package/dist/core/TopicIntentExtractor.d.ts +90 -0
  17. package/dist/core/TopicIntentExtractor.d.ts.map +1 -0
  18. package/dist/core/TopicIntentExtractor.js +153 -0
  19. package/dist/core/TopicIntentExtractor.js.map +1 -0
  20. package/dist/core/TopicIntentPendingConfirm.d.ts +96 -0
  21. package/dist/core/TopicIntentPendingConfirm.d.ts.map +1 -0
  22. package/dist/core/TopicIntentPendingConfirm.js +223 -0
  23. package/dist/core/TopicIntentPendingConfirm.js.map +1 -0
  24. package/dist/messaging/TelegramAdapter.d.ts +45 -0
  25. package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
  26. package/dist/messaging/TelegramAdapter.js +52 -0
  27. package/dist/messaging/TelegramAdapter.js.map +1 -1
  28. package/dist/server/AgentServer.d.ts +3 -0
  29. package/dist/server/AgentServer.d.ts.map +1 -1
  30. package/dist/server/AgentServer.js +10 -0
  31. package/dist/server/AgentServer.js.map +1 -1
  32. package/dist/server/topicIntentRoutes.d.ts +27 -0
  33. package/dist/server/topicIntentRoutes.d.ts.map +1 -0
  34. package/dist/server/topicIntentRoutes.js +189 -0
  35. package/dist/server/topicIntentRoutes.js.map +1 -0
  36. package/dist/tunnel/TunnelManager.d.ts +32 -1
  37. package/dist/tunnel/TunnelManager.d.ts.map +1 -1
  38. package/dist/tunnel/TunnelManager.js +36 -0
  39. package/dist/tunnel/TunnelManager.js.map +1 -1
  40. package/dist/tunnel/TunnelNotifier.d.ts +28 -0
  41. package/dist/tunnel/TunnelNotifier.d.ts.map +1 -1
  42. package/dist/tunnel/TunnelNotifier.js +38 -4
  43. package/dist/tunnel/TunnelNotifier.js.map +1 -1
  44. package/package.json +1 -1
  45. package/src/data/builtin-manifest.json +4 -4
  46. package/src/templates/hooks/telegram-topic-context.sh +19 -0
  47. package/upgrades/1.2.38.md +103 -0
  48. package/upgrades/1.2.39.md +54 -0
  49. package/upgrades/side-effects/owner-dm-channel.md +152 -0
  50. package/upgrades/side-effects/topic-intent-layer.md +86 -0
@@ -0,0 +1,223 @@
1
+ /**
2
+ * PendingConfirmationManager — lifecycle for conversational confirmation records.
3
+ *
4
+ * Layer 1 component. Manages the queue, TTL, dedup, retry-with-sharpening,
5
+ * and revalidation rules for pending confirmations. Per spec v14 section
6
+ * "Pending-Confirmation Records (v9 — addresses GPT round-on-v8 finding #2)":
7
+ *
8
+ * - At most one outstanding PendingConfirmation per topic
9
+ * - Queue depth: 3; 4th queued is dropped silently with telemetry
10
+ * - Queue dedup by refId
11
+ * - TTL: 5 substantive user turns OR 24h, whichever first
12
+ * - TTL clock starts at DEQUEUE time, not queue-entry time
13
+ * - Revalidation at dequeue: refId still tentative + proposition still
14
+ * semantically relevant; stale → drop silently with telemetry
15
+ * - Answer interpretation by Tier 1 LLM (positive / negative / ambiguous /
16
+ * non-responsive); ambiguous triggers sharpen + retry up to maxRetries=2,
17
+ * then status=abandoned
18
+ *
19
+ * Framework-agnostic: pure logic over the JSON store. No transport coupling.
20
+ */
21
+ import { randomUUID } from 'node:crypto';
22
+ import { buildEvent, } from './TopicIntent.js';
23
+ const QUEUE_DEPTH_MAX = 3;
24
+ const DEFAULT_TTL = { turns: 5, hours: 24 };
25
+ const DEFAULT_MAX_RETRIES = 2;
26
+ const MS_PER_HOUR = 60 * 60 * 1000;
27
+ export class PendingConfirmationManager {
28
+ store;
29
+ callbacks;
30
+ constructor(store, callbacks = {}) {
31
+ this.store = store;
32
+ this.callbacks = callbacks;
33
+ }
34
+ /**
35
+ * Create a new pending confirmation. May go outstanding immediately,
36
+ * queue, or be dropped (duplicate / queue full).
37
+ */
38
+ create(opts) {
39
+ const file = this.store.load(opts.topicId);
40
+ const now = opts.now ?? new Date().toISOString();
41
+ // Dedup: drop if a pending (outstanding or queued) already targets this refId
42
+ if (file.pending.outstanding?.refId === opts.refId) {
43
+ return { status: 'dropped-duplicate', reason: 'refId is already outstanding' };
44
+ }
45
+ if (file.pending.queue.some(p => p.refId === opts.refId)) {
46
+ return { status: 'dropped-duplicate', reason: 'refId is already queued' };
47
+ }
48
+ const record = {
49
+ pendingId: randomUUID(),
50
+ topicId: opts.topicId,
51
+ arcId: opts.arcId,
52
+ refId: opts.refId,
53
+ propositionText: opts.propositionText,
54
+ questionText: opts.questionText,
55
+ sentAtTurn: opts.currentUserTurn,
56
+ sentAtTime: now,
57
+ ttl: opts.ttl ?? DEFAULT_TTL,
58
+ retries: 0,
59
+ maxRetries: opts.maxRetries ?? DEFAULT_MAX_RETRIES,
60
+ status: 'pending',
61
+ queuedAtTime: now,
62
+ };
63
+ // Outstanding slot empty → goes outstanding immediately
64
+ if (file.pending.outstanding === null) {
65
+ record.dequeuedAtTime = now;
66
+ record.sentAtTime = now;
67
+ record.sentAtTurn = opts.currentUserTurn;
68
+ file.pending.outstanding = record;
69
+ file.telemetry.pending_confirm_created_total++;
70
+ this.store.save(file);
71
+ return { status: 'outstanding', pendingId: record.pendingId };
72
+ }
73
+ // Otherwise queue if there's room
74
+ if (file.pending.queue.length >= QUEUE_DEPTH_MAX) {
75
+ file.telemetry.pending_confirm_queue_dropped_total++;
76
+ this.store.save(file);
77
+ return { status: 'dropped-queue-full', reason: `queue at max depth ${QUEUE_DEPTH_MAX}` };
78
+ }
79
+ file.pending.queue.push(record);
80
+ file.telemetry.pending_confirm_created_total++;
81
+ this.store.save(file);
82
+ return { status: 'queued', pendingId: record.pendingId };
83
+ }
84
+ /**
85
+ * Interpret an incoming user-authored message as an answer to the current
86
+ * outstanding pending confirmation, if any.
87
+ *
88
+ * The caller is responsible for running the Tier-1 LLM verdict; this
89
+ * method takes the verdict and applies the state machine.
90
+ */
91
+ interpretAnswer(topicId, verdict, sourceMessageId, now) {
92
+ const file = this.store.load(topicId);
93
+ const out = file.pending.outstanding;
94
+ const at = now ?? new Date().toISOString();
95
+ if (!out)
96
+ return { applied: false, outcome: 'no-outstanding' };
97
+ if (verdict === 'positive') {
98
+ out.status = 'answered';
99
+ out.answeredAtTime = at;
100
+ out.answerVerdict = 'positive';
101
+ file.pending.outstanding = null;
102
+ file.telemetry.pending_confirm_answered_total['positive'] =
103
+ (file.telemetry.pending_confirm_answered_total['positive'] ?? 0) + 1;
104
+ this.store.save(file);
105
+ // Emit confidence event
106
+ this.store.appendEvidence(topicId, out.refId, buildEvent(out.refId, 'pending-confirm-positive', sourceMessageId, { at }));
107
+ this.dequeueNext(topicId, at);
108
+ return { applied: true, outcome: 'positive' };
109
+ }
110
+ if (verdict === 'negative') {
111
+ out.status = 'answered';
112
+ out.answeredAtTime = at;
113
+ out.answerVerdict = 'negative';
114
+ file.pending.outstanding = null;
115
+ file.telemetry.pending_confirm_answered_total['negative'] =
116
+ (file.telemetry.pending_confirm_answered_total['negative'] ?? 0) + 1;
117
+ this.store.save(file);
118
+ this.store.appendEvidence(topicId, out.refId, buildEvent(out.refId, 'pending-confirm-negative', sourceMessageId, { at }));
119
+ this.dequeueNext(topicId, at);
120
+ return { applied: true, outcome: 'negative' };
121
+ }
122
+ if (verdict === 'ambiguous') {
123
+ // Sharpen + retry, up to maxRetries
124
+ if (out.retries >= out.maxRetries) {
125
+ out.status = 'abandoned';
126
+ out.answeredAtTime = at;
127
+ out.answerVerdict = 'ambiguous';
128
+ file.pending.outstanding = null;
129
+ file.telemetry.pending_confirm_abandoned_total++;
130
+ // Bookkeeping event so the evidence log shows the retries happened
131
+ this.store.appendEvidence(topicId, out.refId, buildEvent(out.refId, 'sharpen-retry-issued', sourceMessageId, { at, delta: 0, meta: { final: true } }));
132
+ this.store.save(file);
133
+ this.dequeueNext(topicId, at);
134
+ return { applied: true, outcome: 'abandoned' };
135
+ }
136
+ out.retries++;
137
+ this.store.appendEvidence(topicId, out.refId, buildEvent(out.refId, 'sharpen-retry-issued', sourceMessageId, { at, delta: 0, meta: { retry: out.retries } }));
138
+ this.store.save(file);
139
+ return { applied: true, outcome: 'sharpen-retry' };
140
+ }
141
+ // verdict === 'non-responsive' → do nothing; TTL expiry handles it
142
+ return { applied: false, outcome: 'no-outstanding' };
143
+ }
144
+ /**
145
+ * Sweep for TTL expiry on the outstanding pending. Called by the caller
146
+ * after every substantive user turn (turn-based TTL) and periodically
147
+ * (clock-based TTL).
148
+ *
149
+ * Returns the dropped pending if one was swept.
150
+ */
151
+ sweepTtl(topicId, currentUserTurn, now) {
152
+ const file = this.store.load(topicId);
153
+ const out = file.pending.outstanding;
154
+ if (!out)
155
+ return null;
156
+ const nowDate = now ?? new Date().toISOString();
157
+ const dequeuedAt = new Date(out.dequeuedAtTime ?? out.sentAtTime).getTime();
158
+ const elapsedHours = (Date.parse(nowDate) - dequeuedAt) / MS_PER_HOUR;
159
+ const elapsedTurns = currentUserTurn - out.sentAtTurn;
160
+ if (elapsedTurns >= out.ttl.turns || elapsedHours >= out.ttl.hours) {
161
+ out.status = 'expired';
162
+ out.answeredAtTime = nowDate;
163
+ file.pending.outstanding = null;
164
+ file.telemetry.pending_confirm_expired_total++;
165
+ this.store.save(file);
166
+ this.dequeueNext(topicId, nowDate);
167
+ return out;
168
+ }
169
+ return null;
170
+ }
171
+ /** Force-cancel the outstanding pending (e.g. on emergency stop / corrective input). */
172
+ cancelOutstanding(topicId, now) {
173
+ const file = this.store.load(topicId);
174
+ const out = file.pending.outstanding;
175
+ if (!out)
176
+ return null;
177
+ out.status = 'abandoned';
178
+ out.answeredAtTime = now ?? new Date().toISOString();
179
+ file.pending.outstanding = null;
180
+ file.telemetry.pending_confirm_abandoned_total++;
181
+ this.store.save(file);
182
+ this.dequeueNext(topicId, out.answeredAtTime);
183
+ return out;
184
+ }
185
+ /**
186
+ * Promote the next queued item to outstanding (if any).
187
+ * Runs revalidation at dequeue time. Stale items are dropped silently.
188
+ */
189
+ dequeueNext(topicId, now) {
190
+ const file = this.store.load(topicId);
191
+ while (file.pending.queue.length > 0 && file.pending.outstanding === null) {
192
+ const next = file.pending.queue.shift();
193
+ const result = this.revalidate(next, file);
194
+ if (!result.valid) {
195
+ // Silent drop; telemetry only
196
+ file.telemetry.pending_confirm_expired_total++; // re-use the expired counter for stale-queue-dropped
197
+ continue;
198
+ }
199
+ next.dequeuedAtTime = now;
200
+ next.sentAtTime = now; // TTL clock starts now
201
+ file.pending.outstanding = next;
202
+ break;
203
+ }
204
+ this.store.save(file);
205
+ }
206
+ revalidate(record, file) {
207
+ // Built-in check: refId still exists and still tentative (not authoritative, not gone)
208
+ const ref = file.refs[record.refId];
209
+ if (!ref)
210
+ return { valid: false, reason: 'ref-missing' };
211
+ // Use store's projection to determine tier
212
+ const proj = this.store.getProjection(record.topicId, record.refId);
213
+ if (!proj || proj.tier === 'authoritative') {
214
+ return { valid: false, reason: 'no-longer-tentative' };
215
+ }
216
+ // Operator-supplied semantic-relevance check (defaults to always-valid)
217
+ if (this.callbacks.revalidateProposition) {
218
+ return this.callbacks.revalidateProposition(record, file);
219
+ }
220
+ return { valid: true, reason: 'ok' };
221
+ }
222
+ }
223
+ //# sourceMappingURL=TopicIntentPendingConfirm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TopicIntentPendingConfirm.js","sourceRoot":"","sources":["../../src/core/TopicIntentPendingConfirm.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,25 @@ export interface TelegramConfig {
23
23
  pollIntervalMs?: number;
24
24
  /** Authorized Telegram user IDs (only these users' messages are processed) */
25
25
  authorizedUserIds?: number[];
26
+ /**
27
+ * Owner principal — the single Telegram user id who controls
28
+ * security-sensitive decisions for this instance (notably the
29
+ * consent gate for Tier-2 relay tunnels — see
30
+ * specs/dev-infrastructure/tunnel-failure-resilience.md).
31
+ *
32
+ * Why a separate field from `authorizedUserIds`: that set is the
33
+ * "who may interact with the bot" allowlist (multiple users may
34
+ * legitimately use the bot for routine interaction), while
35
+ * `ownerUserId` is the principal who alone may approve actions
36
+ * with cross-user security impact (relay activation, credential
37
+ * exposure, etc.). The GPT external review on the tunnel spec
38
+ * specifically flagged that the consent gate must NOT trust the
39
+ * broader authorizedUserIds set.
40
+ *
41
+ * `sendToOwnerDM()` uses this id as the private-chat target.
42
+ * Defaults to `promptGate?.ownerId` for back-compat when unset.
43
+ */
44
+ ownerUserId?: number;
26
45
  /** Voice transcription provider: 'groq' or 'openai' (auto-detects if not set) */
27
46
  voiceProvider?: string;
28
47
  /** Stall detection timeout in minutes (default: 5, 0 to disable) */
@@ -352,6 +371,32 @@ export declare class TelegramAdapter implements MessagingAdapter {
352
371
  * Get the Lifeline topic ID (if configured).
353
372
  */
354
373
  getLifelineTopicId(): number | undefined;
374
+ /**
375
+ * Owner principal — the single Telegram user id who controls
376
+ * security-sensitive decisions for this instance. Falls back to the
377
+ * promptGate.ownerId for back-compat when ownerUserId isn't
378
+ * explicitly configured.
379
+ */
380
+ getOwnerUserId(): number | undefined;
381
+ /**
382
+ * Send a private DM to the owner principal. Telegram's bot API
383
+ * permits the bot to initiate a DM only after the user has messaged
384
+ * the bot at least once; if the user has never DM'd the bot, the
385
+ * send will fail with HTTP 403 ("forbidden: bot can't initiate
386
+ * conversation with a user"). Callers should treat a null return
387
+ * as a non-fatal degradation, NOT a fatal error.
388
+ *
389
+ * Per the tunnel-failure-resilience spec (Part 3 — two-channel
390
+ * notification), this is the ONLY channel that ever carries the
391
+ * URL + PIN + signed view links. Group topics get status text
392
+ * only.
393
+ *
394
+ * Returns the SendResult on success; null on any failure (no
395
+ * owner configured, owner never DM'd the bot, network error,
396
+ * etc.). All failure paths are logged-not-thrown to preserve the
397
+ * fire-and-forget contract callers expect for outbound messaging.
398
+ */
399
+ sendToOwnerDM(text: string): Promise<SendResult | null>;
355
400
  /**
356
401
  * Ensure the Lifeline topic exists. If it was deleted, recreate it.
357
402
  * Called on startup and can be called periodically.
@@ -1 +1 @@
1
- {"version":3,"file":"TelegramAdapter.d.ts","sourceRoot":"","sources":["../../src/messaging/TelegramAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TelegramAdapter.d.ts","sourceRoot":"","sources":["../../src/messaging/TelegramAdapter.ts"],"names":[],"mappings":"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"}
@@ -773,6 +773,58 @@ export class TelegramAdapter {
773
773
  getLifelineTopicId() {
774
774
  return this.config.lifelineTopicId;
775
775
  }
776
+ /**
777
+ * Owner principal — the single Telegram user id who controls
778
+ * security-sensitive decisions for this instance. Falls back to the
779
+ * promptGate.ownerId for back-compat when ownerUserId isn't
780
+ * explicitly configured.
781
+ */
782
+ getOwnerUserId() {
783
+ return this.config.ownerUserId ?? this.config.promptGate?.ownerId;
784
+ }
785
+ /**
786
+ * Send a private DM to the owner principal. Telegram's bot API
787
+ * permits the bot to initiate a DM only after the user has messaged
788
+ * the bot at least once; if the user has never DM'd the bot, the
789
+ * send will fail with HTTP 403 ("forbidden: bot can't initiate
790
+ * conversation with a user"). Callers should treat a null return
791
+ * as a non-fatal degradation, NOT a fatal error.
792
+ *
793
+ * Per the tunnel-failure-resilience spec (Part 3 — two-channel
794
+ * notification), this is the ONLY channel that ever carries the
795
+ * URL + PIN + signed view links. Group topics get status text
796
+ * only.
797
+ *
798
+ * Returns the SendResult on success; null on any failure (no
799
+ * owner configured, owner never DM'd the bot, network error,
800
+ * etc.). All failure paths are logged-not-thrown to preserve the
801
+ * fire-and-forget contract callers expect for outbound messaging.
802
+ */
803
+ async sendToOwnerDM(text) {
804
+ const owner = this.getOwnerUserId();
805
+ if (!owner) {
806
+ console.warn('[telegram] sendToOwnerDM called but no ownerUserId is configured');
807
+ return null;
808
+ }
809
+ try {
810
+ const params = {
811
+ chat_id: owner,
812
+ text,
813
+ };
814
+ const result = await this.apiCall('sendMessage', params);
815
+ return { messageId: result.message_id };
816
+ }
817
+ catch (err) {
818
+ const msg = err instanceof Error ? err.message : String(err);
819
+ if (msg.includes('forbidden') || msg.includes('403')) {
820
+ console.warn(`[telegram] sendToOwnerDM forbidden — owner ${owner} hasn't messaged the bot yet`);
821
+ }
822
+ else {
823
+ console.warn(`[telegram] sendToOwnerDM failed: ${msg}`);
824
+ }
825
+ return null;
826
+ }
827
+ }
776
828
  /**
777
829
  * Ensure the Lifeline topic exists. If it was deleted, recreate it.
778
830
  * Called on startup and can be called periodically.