instar 1.3.36 → 1.3.38

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.
@@ -41,6 +41,18 @@ export declare const DESTRUCTIVE_GIT_VERBS: ReadonlySet<string>;
41
41
  * Read-only verbs explicitly safe to call. Closed enumeration.
42
42
  */
43
43
  export declare const READONLY_GIT_VERBS: ReadonlySet<string>;
44
+ /**
45
+ * Verbs that are "data-pull": they touch the object database and FETCH_HEAD
46
+ * but DO NOT modify the working tree, committed refs (heads/tags/remotes),
47
+ * or any source file. From SourceTreeGuard's "protect the instar source"
48
+ * standpoint they are read-tier. Permitted on the instar source tree ONLY
49
+ * when the caller opts in via `SafeGitOptions.sourceTreeReadOk: true`.
50
+ *
51
+ * Currently: `fetch` only. (`ls-remote` is pure-read and already in
52
+ * READONLY_GIT_VERBS — it goes through readSync which never trips the
53
+ * source-tree guard.)
54
+ */
55
+ export declare const SOURCE_TREE_READ_TIER_VERBS: ReadonlySet<string>;
44
56
  declare function sanitizeEnv(callerEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
45
57
  interface ExtractedTargets {
46
58
  verb: string;
@@ -96,6 +108,24 @@ export interface SafeGitOptions {
96
108
  input?: string | Buffer;
97
109
  /** Maximum buffer for stdout/stderr (execFileSync). */
98
110
  maxBuffer?: number;
111
+ /**
112
+ * Opt-in: allow execSync/spawn against the instar source tree for a small
113
+ * allowlist of data-pull verbs that do not mutate committed refs or the
114
+ * working tree (currently `fetch` and `ls-remote`). Defaults false.
115
+ *
116
+ * Why this exists: SourceTreeGuard refuses non-readonly git ops on the
117
+ * instar source tree (the 2026-04-22 incident-class). But the release-
118
+ * readiness watchdog (LAYER B of RELEASE-READINESS-VISIBILITY-SPEC) and
119
+ * its sibling FeatureRolloutReconciler canonical scan (LAYER C) NEED to
120
+ * pull the canonical `main` ref into the agent's own instar checkout —
121
+ * by-definition a source tree — to do their job. `git fetch <remote>
122
+ * <branch> --no-tags --no-recurse-submodules` writes only to FETCH_HEAD
123
+ * (transient) and the object database; it does not modify the working
124
+ * tree or any committed refs, so from the source-protection standpoint
125
+ * it is read-tier. `ls-remote` is pure read. This flag is the narrow,
126
+ * audited escape hatch the spec referenced.
127
+ */
128
+ sourceTreeReadOk?: boolean;
99
129
  }
100
130
  export declare class SafeGitExecutorError extends Error {
101
131
  readonly code = "INSTAR_SAFE_GIT_EXECUTOR";
@@ -1 +1 @@
1
- {"version":3,"file":"SafeGitExecutor.d.ts","sourceRoot":"","sources":["../../src/core/SafeGitExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SafeGitExecutor.d.ts","sourceRoot":"","sources":["../../src/core/SafeGitExecutor.ts"],"names":[],"mappings":"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"}
@@ -117,6 +117,20 @@ export const READONLY_GIT_VERBS = new Set([
117
117
  'format-patch', // overlap; readSync shape-check rejects --inline
118
118
  'stash', // shape-check: `stash list` / `stash show` allowed
119
119
  ]);
120
+ /**
121
+ * Verbs that are "data-pull": they touch the object database and FETCH_HEAD
122
+ * but DO NOT modify the working tree, committed refs (heads/tags/remotes),
123
+ * or any source file. From SourceTreeGuard's "protect the instar source"
124
+ * standpoint they are read-tier. Permitted on the instar source tree ONLY
125
+ * when the caller opts in via `SafeGitOptions.sourceTreeReadOk: true`.
126
+ *
127
+ * Currently: `fetch` only. (`ls-remote` is pure-read and already in
128
+ * READONLY_GIT_VERBS — it goes through readSync which never trips the
129
+ * source-tree guard.)
130
+ */
131
+ export const SOURCE_TREE_READ_TIER_VERBS = new Set([
132
+ 'fetch',
133
+ ]);
120
134
  // ── Env denylist ────────────────────────────────────────────────────
121
135
  const GIT_ENV_DENYLIST = new Set([
122
136
  'GIT_DIR',
@@ -544,8 +558,16 @@ export class SafeGitExecutor {
544
558
  */
545
559
  static execSync(args, opts) {
546
560
  const { verb, targets } = extractVerbAndTargets(args, opts.cwd);
547
- // Run source-tree assertion against every target.
548
- runSourceTreeChecks(targets, opts.operation, 'git', verb);
561
+ // Run source-tree assertion against every target — unless the caller
562
+ // explicitly opted into the narrow data-pull allowlist (fetch / etc.)
563
+ // for the documented LAYER B + LAYER C canonical-ref read path. See
564
+ // SafeGitOptions.sourceTreeReadOk for the rationale.
565
+ if (!(opts.sourceTreeReadOk && SOURCE_TREE_READ_TIER_VERBS.has(verb))) {
566
+ runSourceTreeChecks(targets, opts.operation, 'git', verb);
567
+ }
568
+ else {
569
+ audit('git', opts.operation, verb, targets[0], 'allowed', 'sourceTreeReadOk-bypass');
570
+ }
549
571
  // Verb classification.
550
572
  const verbArgs = sliceAfterVerb(args, verb);
551
573
  const ambiguousReadOnly = isReadOnlyShape(verb, verbArgs);
@@ -585,7 +607,12 @@ export class SafeGitExecutor {
585
607
  */
586
608
  static spawn(args, opts) {
587
609
  const { verb, targets } = extractVerbAndTargets(args, opts.cwd);
588
- runSourceTreeChecks(targets, opts.operation, 'git', verb);
610
+ if (!(opts.sourceTreeReadOk && SOURCE_TREE_READ_TIER_VERBS.has(verb))) {
611
+ runSourceTreeChecks(targets, opts.operation, 'git', verb);
612
+ }
613
+ else {
614
+ audit('git', opts.operation, verb, targets[0], 'allowed', 'sourceTreeReadOk-bypass');
615
+ }
589
616
  const verbArgs = sliceAfterVerb(args, verb);
590
617
  const ambiguousReadOnly = isReadOnlyShape(verb, verbArgs);
591
618
  if (ambiguousReadOnly === true) {
@@ -1 +1 @@
1
- {"version":3,"file":"SafeGitExecutor.js","sourceRoot":"","sources":["../../src/core/SafeGitExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SafeGitExecutor.js","sourceRoot":"","sources":["../../src/core/SafeGitExecutor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"featureRolloutScan.d.ts","sourceRoot":"","sources":["../../src/core/featureRolloutScan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAIlE,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAU5D;AAED,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAS5E;AAqBD,oDAAoD;AACpD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,MAAyB,GAAG,YAAY,EAAE,CAqCxG;AAkBD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB;uDACmD;IACnD,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,iBAAiB,GAAG,mBAAmB,CAsFvF;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE;IACJ,uBAAuB,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C,EACD,GAAG,GAAE,MAAM,MAAyB,GACnC,YAAY,EAAE,CAgBhB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,sBAAsB,CAa5H"}
1
+ {"version":3,"file":"featureRolloutScan.d.ts","sourceRoot":"","sources":["../../src/core/featureRolloutScan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAIlE,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAU5D;AAED,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAS5E;AAqBD,oDAAoD;AACpD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,MAAyB,GAAG,YAAY,EAAE,CAqCxG;AAkBD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB;uDACmD;IACnD,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,iBAAiB,GAAG,mBAAmB,CA8FvF;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE;IACJ,uBAAuB,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C,EACD,GAAG,GAAE,MAAM,MAAyB,GACnC,YAAY,EAAE,CAgBhB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,sBAAsB,CAa5H"}
@@ -119,7 +119,15 @@ export function scanSpecArtifactsCanonical(opts) {
119
119
  const timeout = opts.fetchTimeoutMs ?? 30_000;
120
120
  // 1) Bounded fetch (no --depth: matches the Layer-B fix that --depth=1
121
121
  // shallows the local repo and breaks downstream git log).
122
- SafeGitExecutor.run(['fetch', opts.canonicalRemote, 'main', '--no-tags', '--no-recurse-submodules'], { cwd: opts.repoPath, operation: 'featureRolloutScan:canonicalFetch', timeout });
122
+ SafeGitExecutor.run(['fetch', opts.canonicalRemote, 'main', '--no-tags', '--no-recurse-submodules'], {
123
+ cwd: opts.repoPath,
124
+ operation: 'featureRolloutScan:canonicalFetch',
125
+ timeout,
126
+ // LAYER C explicitly scans the instar source tree (a present-but-on-
127
+ // wrong-branch spec is the bug being fixed). fetch is data-pull
128
+ // (FETCH_HEAD + objects only). See SafeGitOptions.sourceTreeReadOk.
129
+ sourceTreeReadOk: true,
130
+ });
123
131
  const canonicalHeadSha = SafeGitExecutor.run(['rev-parse', 'FETCH_HEAD'], {
124
132
  cwd: opts.repoPath,
125
133
  operation: 'featureRolloutScan:canonicalRevParse',
@@ -1 +1 @@
1
- {"version":3,"file":"featureRolloutScan.js","sourceRoot":"","sources":["../../src/core/featureRolloutScan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"featureRolloutScan.js","sourceRoot":"","sources":["../../src/core/featureRolloutScan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * AgentTelegramLedger — append-only audit trail for the agent-to-agent Telegram comms
3
+ * primitive (spec MENTOR-LIVE-READINESS §Fix 2a "Round-trip audit ledger" + Codey's
4
+ * round-2 design point: separate sent + received JSONLs so Stage-B forensics can
5
+ * reconstruct the round trip from the ledger files alone, OR from Telegram chat history
6
+ * alone via the visible `corr=` field).
7
+ *
8
+ * Conventions:
9
+ * - Append-only JSONL (atomic at line granularity on POSIX for `<PIPE_BUF` writes —
10
+ * the same rationale the original mentor-outbox used; documented so a future reviewer
11
+ * doesn't "fix" it to atomicWriteFileSync, which is wrong for append).
12
+ * - **No secrets in any row** (round-2 adversarial F5 — and the SendAuditRow shape
13
+ * explicitly excludes the bot token; the ReceiveAuditRow only captures routing-level
14
+ * marker fields, never the body).
15
+ * - Default paths: `{stateDir}/a2a-sent.jsonl` + `{stateDir}/a2a-received.jsonl`. The
16
+ * caller may override (per-agent isolation, tests).
17
+ *
18
+ * I/O is the only side-effect; everything else is pure data.
19
+ */
20
+ import type { SendAuditRow, RouteDropReason } from './AgentTelegramComms.js';
21
+ /** Audit row written by the recipient wiring on every a2a event that was either routed
22
+ * to a role-handler or dropped. NO row is written when the message is `no-marker`
23
+ * (fall-through to normal user handling) — that would log every user message. */
24
+ export interface ReceiveAuditRow {
25
+ localTs: string;
26
+ direction: 'received';
27
+ decision: 'routed' | 'dropped';
28
+ /** When `dropped`, the reason code from the routing matrix (see RouteDropReason). */
29
+ dropReason?: RouteDropReason | 'agent-marker-malformed';
30
+ /** Parsed marker fields — present when the parse succeeded, undefined for malformed. */
31
+ fromAgent?: string;
32
+ toAgent?: string;
33
+ role?: string;
34
+ id?: string;
35
+ corr?: string;
36
+ ts?: number;
37
+ /** Telegram-side identifiers, when resolved. */
38
+ telegramFromBotId?: string;
39
+ telegramSenderChatId?: string;
40
+ topicId?: number;
41
+ /** First 200 chars of the raw inbound (post-marker-strip on route; raw on drop) so
42
+ * forensic readers can reconstruct what happened from the ledger alone. NEVER the
43
+ * full body for routed rows — the body went to the role-handler. */
44
+ rawPrefix?: string;
45
+ }
46
+ export interface AgentTelegramLedgerPaths {
47
+ sentPath: string;
48
+ receivedPath: string;
49
+ }
50
+ export declare function defaultLedgerPaths(stateDir: string): AgentTelegramLedgerPaths;
51
+ /**
52
+ * Append-only JSONL audit ledger. Both `appendSent` and `appendReceived` are synchronous
53
+ * + best-effort: they NEVER throw (an audit-write failure must not crash a tick). Writes
54
+ * use `fs.appendFileSync` because atomic-write-replace is wrong for append-only files
55
+ * (see the documented rationale in the module header).
56
+ */
57
+ export declare class AgentTelegramLedger {
58
+ private readonly sentPath;
59
+ private readonly receivedPath;
60
+ constructor(paths: AgentTelegramLedgerPaths);
61
+ appendSent(row: SendAuditRow): void;
62
+ appendReceived(row: ReceiveAuditRow): void;
63
+ private appendLine;
64
+ }
65
+ //# sourceMappingURL=AgentTelegramLedger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentTelegramLedger.d.ts","sourceRoot":"","sources":["../../src/messaging/AgentTelegramLedger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE7E;;kFAEkF;AAClF,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC/B,qFAAqF;IACrF,UAAU,CAAC,EAAE,eAAe,GAAG,wBAAwB,CAAC;IACxD,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gDAAgD;IAChD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;yEAEqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,wBAAwB,CAK7E;AAED;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,KAAK,EAAE,wBAAwB;IAK3C,UAAU,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;IAInC,cAAc,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAI1C,OAAO,CAAC,UAAU;CAYnB"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * AgentTelegramLedger — append-only audit trail for the agent-to-agent Telegram comms
3
+ * primitive (spec MENTOR-LIVE-READINESS §Fix 2a "Round-trip audit ledger" + Codey's
4
+ * round-2 design point: separate sent + received JSONLs so Stage-B forensics can
5
+ * reconstruct the round trip from the ledger files alone, OR from Telegram chat history
6
+ * alone via the visible `corr=` field).
7
+ *
8
+ * Conventions:
9
+ * - Append-only JSONL (atomic at line granularity on POSIX for `<PIPE_BUF` writes —
10
+ * the same rationale the original mentor-outbox used; documented so a future reviewer
11
+ * doesn't "fix" it to atomicWriteFileSync, which is wrong for append).
12
+ * - **No secrets in any row** (round-2 adversarial F5 — and the SendAuditRow shape
13
+ * explicitly excludes the bot token; the ReceiveAuditRow only captures routing-level
14
+ * marker fields, never the body).
15
+ * - Default paths: `{stateDir}/a2a-sent.jsonl` + `{stateDir}/a2a-received.jsonl`. The
16
+ * caller may override (per-agent isolation, tests).
17
+ *
18
+ * I/O is the only side-effect; everything else is pure data.
19
+ */
20
+ import fs from 'node:fs';
21
+ import path from 'node:path';
22
+ export function defaultLedgerPaths(stateDir) {
23
+ return {
24
+ sentPath: path.join(stateDir, 'a2a-sent.jsonl'),
25
+ receivedPath: path.join(stateDir, 'a2a-received.jsonl'),
26
+ };
27
+ }
28
+ /**
29
+ * Append-only JSONL audit ledger. Both `appendSent` and `appendReceived` are synchronous
30
+ * + best-effort: they NEVER throw (an audit-write failure must not crash a tick). Writes
31
+ * use `fs.appendFileSync` because atomic-write-replace is wrong for append-only files
32
+ * (see the documented rationale in the module header).
33
+ */
34
+ export class AgentTelegramLedger {
35
+ sentPath;
36
+ receivedPath;
37
+ constructor(paths) {
38
+ this.sentPath = paths.sentPath;
39
+ this.receivedPath = paths.receivedPath;
40
+ }
41
+ appendSent(row) {
42
+ this.appendLine(this.sentPath, row);
43
+ }
44
+ appendReceived(row) {
45
+ this.appendLine(this.receivedPath, row);
46
+ }
47
+ appendLine(target, row) {
48
+ try {
49
+ fs.mkdirSync(path.dirname(target), { recursive: true });
50
+ fs.appendFileSync(target, JSON.stringify(row) + '\n', 'utf-8');
51
+ }
52
+ catch (err) {
53
+ // Best-effort audit: an audit-write failure must not crash a tick. Log but swallow.
54
+ // (Spec §Fix 2a "every drop path writes an audit row" — silent drops make Stage-B
55
+ // forensics painful, but a CRASHED tick is worse. We accept this trade-off.)
56
+ // eslint-disable-next-line no-console
57
+ console.warn(`[a2a-ledger] append failed (non-fatal) at ${target}:`, err instanceof Error ? err.message : String(err));
58
+ }
59
+ }
60
+ }
61
+ //# sourceMappingURL=AgentTelegramLedger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentTelegramLedger.js","sourceRoot":"","sources":["../../src/messaging/AgentTelegramLedger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAkC7B,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QAC/C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC;KACxD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,mBAAmB;IACb,QAAQ,CAAS;IACjB,YAAY,CAAS;IAEtC,YAAY,KAA+B;QACzC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IACzC,CAAC;IAED,UAAU,CAAC,GAAiB;QAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,cAAc,CAAC,GAAoB;QACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;IAEO,UAAU,CAAC,MAAc,EAAE,GAAY;QAC7C,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxD,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oFAAoF;YACpF,kFAAkF;YAClF,6EAA6E;YAC7E,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,6CAA6C,MAAM,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACzH,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * ProcessedIdStore — small persistent set of recently-processed a2a marker `id`s, so
3
+ * Telegram retries / adapter restarts can't double-inject the same prompt (spec
4
+ * MENTOR-LIVE-READINESS §Fix 2a "Processed-id ledger" + Codey's round-2 design point).
5
+ *
6
+ * Bounded by `maxEntries` (default 10_000) AND `maxAgeMs` (default 30 days) — whichever
7
+ * evicts first. **Bounded eviction is the same surface adversarial F2 worried about**:
8
+ * an `id` that ages out is no longer "duplicate" and could be re-injected by a replayer
9
+ * who captured it. The marker's `ts` + skew-window (24h default) is the defense at the
10
+ * primitive layer; this store's eviction policy is set generously so legitimate retries
11
+ * within hours/days are still de-duped.
12
+ *
13
+ * Convention note: instar prefers SQLite for durable dedup ledgers (MessageProcessingLedger,
14
+ * CommitmentTracker). This store uses a small JSON file because the working set is small
15
+ * (per-mentee processed-ids over 30d), the file is rewritten atomically on every mark, and
16
+ * there's no concurrent-writer story to need WAL. A future bump to SQLite is a drop-in
17
+ * replacement at the class boundary.
18
+ */
19
+ export interface ProcessedIdStoreOptions {
20
+ /** Absolute path to the JSON file backing the store. */
21
+ filePath: string;
22
+ /** Max entries to retain before evicting the oldest (default 10_000). */
23
+ maxEntries?: number;
24
+ /** Max age (ms) before an entry is evicted (default 30 days). */
25
+ maxAgeMs?: number;
26
+ /** Injected for testability. Default: Date.now. */
27
+ now?: () => number;
28
+ }
29
+ export declare class ProcessedIdStore {
30
+ private readonly filePath;
31
+ private readonly maxEntries;
32
+ private readonly maxAgeMs;
33
+ private readonly now;
34
+ private entries;
35
+ constructor(opts: ProcessedIdStoreOptions);
36
+ /** True if the id has been marked + has not been evicted. */
37
+ hasProcessed(id: string): boolean;
38
+ /** Mark this id processed at now() and persist. Idempotent (re-marking is a no-op
39
+ * beyond refreshing the persisted snapshot). */
40
+ markProcessed(id: string): void;
41
+ /** Test helper: current entry count. */
42
+ size(): number;
43
+ private load;
44
+ private persist;
45
+ private evictExpired;
46
+ private evictOverflow;
47
+ }
48
+ //# sourceMappingURL=ProcessedIdStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProcessedIdStore.d.ts","sourceRoot":"","sources":["../../src/messaging/ProcessedIdStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,MAAM,WAAW,uBAAuB;IACtC,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAgBD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,OAAO,CAA+B;gBAElC,IAAI,EAAE,uBAAuB;IASzC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAKjC;qDACiD;IACjD,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS/B,wCAAwC;IACxC,IAAI,IAAI,MAAM;IAKd,OAAO,CAAC,IAAI;IAmBZ,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,aAAa;CAStB"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * ProcessedIdStore — small persistent set of recently-processed a2a marker `id`s, so
3
+ * Telegram retries / adapter restarts can't double-inject the same prompt (spec
4
+ * MENTOR-LIVE-READINESS §Fix 2a "Processed-id ledger" + Codey's round-2 design point).
5
+ *
6
+ * Bounded by `maxEntries` (default 10_000) AND `maxAgeMs` (default 30 days) — whichever
7
+ * evicts first. **Bounded eviction is the same surface adversarial F2 worried about**:
8
+ * an `id` that ages out is no longer "duplicate" and could be re-injected by a replayer
9
+ * who captured it. The marker's `ts` + skew-window (24h default) is the defense at the
10
+ * primitive layer; this store's eviction policy is set generously so legitimate retries
11
+ * within hours/days are still de-duped.
12
+ *
13
+ * Convention note: instar prefers SQLite for durable dedup ledgers (MessageProcessingLedger,
14
+ * CommitmentTracker). This store uses a small JSON file because the working set is small
15
+ * (per-mentee processed-ids over 30d), the file is rewritten atomically on every mark, and
16
+ * there's no concurrent-writer story to need WAL. A future bump to SQLite is a drop-in
17
+ * replacement at the class boundary.
18
+ */
19
+ import fs from 'node:fs';
20
+ import path from 'node:path';
21
+ import { SafeFsExecutor } from '../core/SafeFsExecutor.js';
22
+ const DEFAULT_MAX_ENTRIES = 10_000;
23
+ const DEFAULT_MAX_AGE_MS = 30 * 24 * 60 * 60 * 1000;
24
+ export class ProcessedIdStore {
25
+ filePath;
26
+ maxEntries;
27
+ maxAgeMs;
28
+ now;
29
+ entries;
30
+ constructor(opts) {
31
+ this.filePath = opts.filePath;
32
+ this.maxEntries = opts.maxEntries ?? DEFAULT_MAX_ENTRIES;
33
+ this.maxAgeMs = opts.maxAgeMs ?? DEFAULT_MAX_AGE_MS;
34
+ this.now = opts.now ?? Date.now;
35
+ this.entries = new Map();
36
+ this.load();
37
+ }
38
+ /** True if the id has been marked + has not been evicted. */
39
+ hasProcessed(id) {
40
+ this.evictExpired();
41
+ return this.entries.has(id);
42
+ }
43
+ /** Mark this id processed at now() and persist. Idempotent (re-marking is a no-op
44
+ * beyond refreshing the persisted snapshot). */
45
+ markProcessed(id) {
46
+ if (!this.entries.has(id)) {
47
+ this.entries.set(id, { ts: this.now() });
48
+ }
49
+ this.evictExpired();
50
+ this.evictOverflow();
51
+ this.persist();
52
+ }
53
+ /** Test helper: current entry count. */
54
+ size() {
55
+ this.evictExpired();
56
+ return this.entries.size;
57
+ }
58
+ load() {
59
+ if (!fs.existsSync(this.filePath))
60
+ return;
61
+ try {
62
+ const raw = fs.readFileSync(this.filePath, 'utf-8');
63
+ const parsed = JSON.parse(raw);
64
+ if (parsed && parsed.v === 1 && parsed.entries && typeof parsed.entries === 'object') {
65
+ for (const [id, ts] of Object.entries(parsed.entries)) {
66
+ if (typeof ts === 'number' && Number.isFinite(ts)) {
67
+ this.entries.set(id, { ts });
68
+ }
69
+ }
70
+ }
71
+ }
72
+ catch {
73
+ // Corrupted store → start fresh (full re-allow). Better than crashing the recipient
74
+ // — duplicate prompts are recoverable; a dead recipient isn't.
75
+ this.entries = new Map();
76
+ }
77
+ }
78
+ persist() {
79
+ const file = {
80
+ v: 1,
81
+ entries: Object.fromEntries([...this.entries].map(([id, r]) => [id, r.ts])),
82
+ };
83
+ try {
84
+ fs.mkdirSync(path.dirname(this.filePath), { recursive: true });
85
+ SafeFsExecutor.atomicWriteJsonSync(this.filePath, file, { operation: 'ProcessedIdStore.persist' });
86
+ }
87
+ catch (err) {
88
+ // Best-effort persistence; on the next mark we retry.
89
+ // eslint-disable-next-line no-console
90
+ console.warn(`[a2a-processed-id] persist failed (non-fatal) at ${this.filePath}:`, err instanceof Error ? err.message : String(err));
91
+ }
92
+ }
93
+ evictExpired() {
94
+ const cutoff = this.now() - this.maxAgeMs;
95
+ for (const [id, r] of this.entries) {
96
+ if (r.ts < cutoff)
97
+ this.entries.delete(id);
98
+ }
99
+ }
100
+ evictOverflow() {
101
+ if (this.entries.size <= this.maxEntries)
102
+ return;
103
+ // Drop oldest first.
104
+ const sorted = [...this.entries].sort((a, b) => a[1].ts - b[1].ts);
105
+ const dropCount = this.entries.size - this.maxEntries;
106
+ for (let i = 0; i < dropCount; i++) {
107
+ this.entries.delete(sorted[i][0]);
108
+ }
109
+ }
110
+ }
111
+ //# sourceMappingURL=ProcessedIdStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProcessedIdStore.js","sourceRoot":"","sources":["../../src/messaging/ProcessedIdStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAwB3D,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IACV,QAAQ,CAAS;IACjB,UAAU,CAAS;IACnB,QAAQ,CAAS;IACjB,GAAG,CAAe;IAC3B,OAAO,CAA+B;IAE9C,YAAY,IAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,mBAAmB,CAAC;QACzD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,kBAAkB,CAAC;QACpD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,6DAA6D;IAC7D,YAAY,CAAC,EAAU;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;qDACiD;IACjD,aAAa,CAAC,EAAU;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,wCAAwC;IACxC,IAAI;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAEO,IAAI;QACV,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC1C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC;YAChD,IAAI,MAAM,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACrF,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtD,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;wBAClD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oFAAoF;YACpF,+DAA+D;YAC/D,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,OAAO;QACb,MAAM,IAAI,GAAkB;YAC1B,CAAC,EAAE,CAAC;YACJ,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC5E,CAAC;QACF,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/D,cAAc,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAAC,CAAC;QACrG,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sDAAsD;YACtD,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,oDAAoD,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACvI,CAAC;IACH,CAAC;IAEO,YAAY;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC1C,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,CAAC,EAAE,GAAG,MAAM;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QACjD,qBAAqB;QACrB,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"releaseReadinessWiring.d.ts","sourceRoot":"","sources":["../../src/monitoring/releaseReadinessWiring.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,OAAO,KAAK,EACV,4BAA4B,EAC5B,cAAc,EAGd,aAAa,EACd,MAAM,+BAA+B,CAAC;AAGvC,uFAAuF;AACvF,eAAO,MAAM,mBAAmB,QAA0E,CAAC;AAE3G,MAAM,WAAW,0BAA0B;IACzC,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAU1D;AAED,mGAAmG;AACnG,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAoBzC;AAgBD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,0BAA0B,GAAG,4BAA4B,CAuIxG;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,yBAAyB,UAAQ,GAAG,cAAc,CAevG;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI,CAKjF;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAExE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B,GAAG,eAAe,CAclB"}
1
+ {"version":3,"file":"releaseReadinessWiring.d.ts","sourceRoot":"","sources":["../../src/monitoring/releaseReadinessWiring.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,OAAO,KAAK,EACV,4BAA4B,EAC5B,cAAc,EAGd,aAAa,EACd,MAAM,+BAA+B,CAAC;AAGvC,uFAAuF;AACvF,eAAO,MAAM,mBAAmB,QAA0E,CAAC;AAE3G,MAAM,WAAW,0BAA0B;IACzC,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAU1D;AAED,mGAAmG;AACnG,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAoBzC;AAgBD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,0BAA0B,GAAG,4BAA4B,CAiJxG;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,yBAAyB,UAAQ,GAAG,cAAc,CAevG;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI,CAKjF;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAExE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B,GAAG,eAAe,CAclB"}
@@ -95,7 +95,17 @@ export function buildReleaseReadinessDeps(opts) {
95
95
  // analyze-release. --no-tags --no-recurse-submodules keeps the fetch
96
96
  // bounded without shallowing; incremental fetches against an existing
97
97
  // checkout transfer only new objects.
98
- SafeGitExecutor.run(['fetch', remote, 'main', '--no-tags', '--no-recurse-submodules'], { cwd: opts.repoPath, operation: 'releaseReadinessWiring:fetch', timeout: fetchTimeoutMs });
98
+ SafeGitExecutor.run(['fetch', remote, 'main', '--no-tags', '--no-recurse-submodules'], {
99
+ cwd: opts.repoPath,
100
+ operation: 'releaseReadinessWiring:fetch',
101
+ timeout: fetchTimeoutMs,
102
+ // The watchdog by-design runs against the instar source tree
103
+ // (the maintainer environment IS an instar checkout). fetch
104
+ // only touches FETCH_HEAD + objects — read-tier for source
105
+ // protection. Opt into the narrow allowlist documented on
106
+ // SafeGitOptions.sourceTreeReadOk.
107
+ sourceTreeReadOk: true,
108
+ });
99
109
  const headSha = SafeGitExecutor.run(['rev-parse', 'FETCH_HEAD'], {
100
110
  cwd: opts.repoPath,
101
111
  operation: 'releaseReadinessWiring:revparse',
@@ -1 +1 @@
1
- {"version":3,"file":"releaseReadinessWiring.js","sourceRoot":"","sources":["../../src/monitoring/releaseReadinessWiring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"releaseReadinessWiring.js","sourceRoot":"","sources":["../../src/monitoring/releaseReadinessWiring.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.3.36",
3
+ "version": "1.3.38",
4
4
  "description": "Coherence infrastructure for self-evolving AI agents — on the Claude Code or Codex subscription you already have.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-05-27T23:50:57.603Z",
5
- "instarVersion": "1.3.36",
4
+ "generatedAt": "2026-05-28T00:18:26.420Z",
5
+ "instarVersion": "1.3.38",
6
6
  "entryCount": 192,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -15,11 +15,27 @@ The **Release-Readiness Visibility** spec (`docs/specs/RELEASE-READINESS-VISIBIL
15
15
 
16
16
  The fix path for an existing silent stall: the watchdog opens an Attention item; auto-draft fills NEXT.md but BOTH publish gates refuse it until a human reviews each section (replacing the marker with a hash-locked receipt); rollback flips a state-file kill-switch loudly.
17
17
 
18
+ ---
19
+
20
+ **Agent-to-agent Telegram comms primitive — receiver-side storage primitives.** Two new
21
+ internal modules the next update will use to wire the recipient side of the a2a primitive,
22
+ both **dark** (no caller yet):
23
+
24
+ - `AgentTelegramLedger` — append-only JSONL audit trail of every a2a send and every a2a
25
+ receive decision (routed or dropped, with the drop reason). Best-effort + non-throwing
26
+ (an audit-write failure must not crash a tick).
27
+ - `ProcessedIdStore` — bounded persistent set of recently-processed marker `id`s, so
28
+ Telegram retries or adapter restarts can't double-inject the same prompt. Bounded by
29
+ `maxEntries` (10k default) AND `maxAgeMs` (30d default). Backed by an atomic-write JSON
30
+ file via SafeFsExecutor; corrupt-file recovery (starts fresh rather than crash the
31
+ recipient).
32
+
18
33
  ## What to Tell Your User
19
34
 
20
35
  - **I'll notice if my own ship is stuck**: when changes pile up and a release stops going out, I now raise a single, calm flag on my attention list — and the longer it sits, the louder that flag gets. You don't have to remember to check whether I'm actually shipping; I'll tell you when I'm not.
21
36
  - **The release notes draft themselves**: instead of waiting for someone to write release notes from scratch, the toolchain now sketches a starter version from the change list. A human still has to read and sign off on each section before it can publish — the safety net stays in place; it just isn't a blank page anymore.
22
37
  - **A merged feature can no longer be invisible to my own systems**: my feature board used to read whatever was on my laptop, which sometimes meant brand-new merged features didn't show up. It can now read the real shared copy directly, so the newest work stops being the most-hidden work.
38
+ - The agent-to-agent Telegram comms infrastructure continues to land in pieces; still plumbing, nothing user-visible changes today.
23
39
 
24
40
  This change is off by default everywhere. I'll dogfood it on myself first.
25
41
 
@@ -31,9 +47,13 @@ This change is off by default everywhere. I'll dogfood it on myself first.
31
47
  | Auto-draft an upgrade guide | `node scripts/analyze-release.js --draft-guide` (writes `upgrades/NEXT.md` with unreviewed markers) |
32
48
  | Canonical-ref spec scan | Set `featureRollout.canonicalRefScan: true` and `featureRollout.canonicalRemote` in `.instar/config.json` |
33
49
  | Enable the watchdog | Set `monitoring.releaseReadiness.enabled: true` in `.instar/config.json`; the `release-readiness-check` job runs every 6h (still ships disabled — flip it on per agent) |
50
+ | `AgentTelegramLedger` | Internal — `new AgentTelegramLedger(defaultLedgerPaths(stateDir))`; `appendSent(row)` + `appendReceived(row)`; JSONL, best-effort non-throwing |
51
+ | `ProcessedIdStore` | Internal — `new ProcessedIdStore({filePath, maxEntries?, maxAgeMs?})`; `hasProcessed(id)` + `markProcessed(id)`; bounded + persistent |
34
52
 
35
53
  ## Evidence
36
54
 
37
55
  The Layer B real-I/O E2E (`tests/e2e/release-readiness-live.test.ts`) reproduces the original silent-stall shape against a fixture instar repo (real git fetch + real `analyze-release.js` subprocess + real `merge-base`) and asserts that exactly one Attention item is raised for an aged, blocked backlog. The Layer A unit tests (`tests/unit/analyze-release-draft-guide.test.ts` and `tests/unit/upgrade-guide-autodraft-review.test.ts`) reproduce the placeholder-text bypass adversarial review caught (the analyzer's `'Review the commit for specifics'` fallback that previously could pass the section-presence gate) and confirm the new validator blocks it. The Layer C unit test (`tests/unit/featureRolloutScan-canonical.test.ts`) reproduces the exact bug — a spec deleted from the local working tree but committed to main — and confirms the canonical scan still detects it as merged. ~64 tests added across three layered tiers, all green.
38
56
 
39
57
  Additionally, this very NEXT.md authoring revealed the meta-failure: the two PRs above merged but their publishes silently skipped because **NEXT.md didn't exist** — exactly the silent-skip mechanism Layer A + Layer B were built to surface. This guide is the unblock; once it publishes, the watchdog this guide describes goes live and can catch the same shape next time.
58
+
59
+ Plus, the a2a comms storage primitives shipping here have 8 unit tests, all green: ledger writes to distinct files (append-only JSONL, one row per event); ledger captures the drop reason on routing-matrix drops; ledger never throws when the target is unwritable (best-effort guard tested by pointing at an unwritable path); store marks + recalls + persists across re-open; store evicts by `maxAgeMs` and by `maxEntries` (oldest first); store survives a corrupted file (starts fresh, doesn't crash); re-marking the same id is idempotent (first-seen-ts preserved).
@@ -0,0 +1,26 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- bump: patch -->
4
+ <!-- Valid values: patch, minor, major -->
5
+
6
+ ## What Changed
7
+
8
+ `SourceTreeGuard` gained a narrow, opt-in escape hatch for data-pull git operations on the instar source tree. The Release-Readiness Visibility watchdog (Layer B) and the FeatureRolloutReconciler canonical-ref scan (Layer C) both need to `git fetch` canonical `main` into the agent's own instar checkout to do their job — and the agent home IS by-definition an instar source tree. The guard's existing policy ("refuse non-readonly git ops on the source tree" — the 2026-04-22 incident class) caught the watchdog's first real tick on Echo: it correctly fail-louded with `release-readiness-eval-failure-fetch` and Layer C gracefully fell back to the local scan + emitted a degradation event. The architecture surfaced its own integration gap on day one of dogfooding — the principle of "speak up when you skip" worked exactly as designed.
9
+
10
+ This PR closes the gap principledly: `SafeGitOptions.sourceTreeReadOk?: boolean` (default false) + a closed allowlist `SOURCE_TREE_READ_TIER_VERBS = ['fetch']` lets a specific caller opt into bypassing `SourceTreeGuard` for read-tier git ops. `git fetch <remote> <branch> --no-tags --no-recurse-submodules` writes only to `FETCH_HEAD` and the object database; it does NOT modify the working tree or any committed ref, so from the source-protection standpoint it is read-tier. The bypass is per-call, audit-logged, and the allowlist is small + closed.
11
+
12
+ Both Layer B (`releaseReadinessWiring.fetchCanonical`) and Layer C (`featureRolloutScan.scanSpecArtifactsCanonical`) opt in at the callsite, so when the watchdog runs against the agent's own instar checkout the canonical-ref fetch goes through.
13
+
14
+ ## What to Tell Your User
15
+
16
+ - **I can actually watch myself now**: the release watchdog I shipped a moment ago hit its first real safety guard the second I turned it on — and instead of going quiet, it raised a calm flag and explained exactly what was wrong. That self-catch was the architecture working as designed. This update closes the loop so it can fetch the canonical copy it needs without bypassing the broader safety policy.
17
+
18
+ ## Summary of New Capabilities
19
+
20
+ | Capability | How to Use |
21
+ |-----------|-----------|
22
+ | Opt-in data-pull git on the instar source tree | Pass `sourceTreeReadOk: true` to `SafeGitExecutor.run`/`execSync`/`spawn` (verbs limited to `fetch`) |
23
+
24
+ ## Evidence
25
+
26
+ Caught live on Echo during the dogfood handoff: with `monitoring.releaseReadiness.enabled: true`, the first tick failed at `fetch` with `SourceTreeGuardError: Refusing to run releaseReadinessWiring:fetch against the instar source tree`. The watchdog correctly raised exactly one LOW-priority Attention item (`release-readiness-eval-failure-fetch`, deduped across re-ticks) and recorded each failure in `logs/sentinel-events.jsonl`. Layer C correctly logged `feature-rollout canonical scan degraded: canonical-ref scan failed (SourceTreeGuardError) — falling back to local scan`. After this PR lands + republishes, the same tick on the same setup proceeds through fetch successfully and produces real backlog signal (or silence below the age threshold). Unit tests (5 in `tests/unit/SafeGitExecutor-sourceTreeReadOk.test.ts`) cover the truth table: default-blocks on source, opt-passes on source, non-allowlist-still-blocks on source, allowlist-set is closed.
@@ -0,0 +1,68 @@
1
+ # Side-Effects Review — a2a audit ledger + processed-id store (PR 3a)
2
+
3
+ **Spec:** `docs/specs/MENTOR-LIVE-READINESS-SPEC.md` §Fix 2a "Round-trip audit ledger" +
4
+ "Processed-id ledger" + Codey's round-2 idempotency-on-receive design point. PR 3 of the
5
+ staged build, part a.
6
+ **Change:** Two new storage primitive modules the receiver wiring (PR 3b) will consume:
7
+ `AgentTelegramLedger` (append-only JSONL of sent + received audit rows) and
8
+ `ProcessedIdStore` (bounded persistent set of recently-processed marker `id`s for Telegram
9
+ retry / restart idempotency). Both **dark** — no caller yet; PR 3b wires the recipient
10
+ handler at `server.ts` and uses these.
11
+ **Files:** `src/messaging/AgentTelegramLedger.ts` (new), `src/messaging/ProcessedIdStore.ts`
12
+ (new), `tests/unit/messaging/AgentTelegramLedger.test.ts` (new — covers both).
13
+
14
+ ## The seven questions
15
+
16
+ 1. **Over-block.** N/A — no gate. The ledger always writes; the store only blocks on a
17
+ recorded `id` (the idempotency guarantee).
18
+ 2. **Under-block.** Ledger writes are **best-effort + non-throwing** — an audit-write
19
+ failure must not crash a tick (spec note: "silent drops make Stage-B forensics painful,
20
+ but a crashed tick is worse"). Tested: pointing the ledger at an unwritable path → no
21
+ throw. The store's persistence is also best-effort (warn + continue on persist failure,
22
+ retry on next mark).
23
+ 3. **Level-of-abstraction fit.** Each module owns ONE thing — ledger appends rows; store
24
+ answers "have I seen this id." Both injectable for PR 3b's wiring + tests. JSONL append
25
+ is intentional (atomic at line granularity on POSIX for `<PIPE_BUF`); SafeFsExecutor's
26
+ atomic-write-replace is wrong for append (documented in module header so a future
27
+ reviewer doesn't "fix" it incorrectly).
28
+ 4. **Signal vs authority.** N/A.
29
+ 5. **Interactions — both modules are dark.** No caller, no runtime side-effect. PR 3b
30
+ integrates them into the recipient handler. The ReceiveAuditRow shape is the wire
31
+ contract for Stage-B forensics + future debugging.
32
+ 6. **External surfaces.** None new. Default paths are `{stateDir}/a2a-sent.jsonl` +
33
+ `{stateDir}/a2a-received.jsonl` + (PR 3b chooses) `{stateDir}/a2a-processed-ids.json`.
34
+ Caller may override.
35
+ 7. **Rollback cost.** Trivial — revert removes two unused modules. No data, no migration.
36
+
37
+ ## Convention notes
38
+
39
+ - **JSONL ≠ SQLite for these two cases.** The MessageProcessingLedger header explicitly
40
+ prefers SQLite for dedup ledgers ("NOT a new ad-hoc JSON file") — and we follow that
41
+ spirit by isolating the data behind a class boundary (a SQLite swap-in is one constructor
42
+ away). The current JSON-file backing is justified for `ProcessedIdStore` because the
43
+ working set is small (bounded 10k entries / 30d), atomic-write-rewrite is cheap at that
44
+ size, and there's no concurrent-writer story to need WAL. For `AgentTelegramLedger`,
45
+ JSONL append IS the right shape (forensic trail, append-only, line-atomic).
46
+ - **Eviction policy + the round-2 adversarial F2 surface.** The store evicts by
47
+ `maxEntries` (10k) OR `maxAgeMs` (30d) — whichever first. A replayer who captured an `id`
48
+ outside that window could re-inject it; the **defense at that layer is the marker's
49
+ `ts` + `skewWindowMs` (24h)** added in PR 1 (already shipped). The store's job is
50
+ "de-dup within the legitimate-retry window," not "absolute replay protection." Documented.
51
+
52
+ ## Testing
53
+
54
+ 8 unit tests, all green:
55
+ - **Ledger**: appendSent + appendReceived to distinct files (+ JSONL line-per-row); drop
56
+ row with `dropReason` captured (the routing-matrix audit trail); **never throws** when
57
+ the target is unwritable (best-effort guard tested).
58
+ - **Store**: mark + recall + persist-across-reopen; eviction by `maxAgeMs`; eviction by
59
+ `maxEntries` (oldest first); corrupt-file recovery (start fresh, don't crash); idempotent
60
+ re-mark (first-seen-ts preserved).
61
+ - `tsc --noEmit` clean. Both modules dark (no caller).
62
+
63
+ ## Migration parity
64
+
65
+ None — two new unwired modules. No agent-installed file changes, no config consumed yet.
66
+ PR 3b adds the recipient handler wiring + `mentor.processedIdStorePath` (or similar) to
67
+ config defaults; PR 3c (mentor consumer) adds the file-outbox retirement + dead-config
68
+ removal migrations per the spec's §Migration parity.
@@ -0,0 +1,35 @@
1
+ # Side-Effects Review — SourceTreeGuard data-pull exemption for `git fetch`
2
+
3
+ **Driver:** RELEASE-READINESS-VISIBILITY-SPEC §4.2.2 + §4.3.2 (Layer B + Layer C canonical-ref reads). Discovered during dogfood on Echo (the instar source IS the agent home — exactly the maintainer environment the spec targets).
4
+
5
+ ## What changed
6
+
7
+ - **`src/core/SafeGitExecutor.ts`** —
8
+ - New `SafeGitOptions.sourceTreeReadOk?: boolean` (default false).
9
+ - New exported `SOURCE_TREE_READ_TIER_VERBS: Set<string>` — currently `['fetch']` only. Closed enumeration.
10
+ - `execSync` + `spawn` skip `runSourceTreeChecks` when `sourceTreeReadOk: true` AND the verb is in `SOURCE_TREE_READ_TIER_VERBS`. The bypass is audit-logged (`sourceTreeReadOk-bypass` reason).
11
+ - **`src/monitoring/releaseReadinessWiring.ts`** — Layer B's `fetchCanonical` passes `sourceTreeReadOk: true`.
12
+ - **`src/core/featureRolloutScan.ts`** — Layer C's `scanSpecArtifactsCanonical` passes `sourceTreeReadOk: true` for its bounded fetch.
13
+
14
+ ## Side-effects analysis
15
+
16
+ **The dogfood that prompted this.** With Layers B + C live and Echo's `monitoring.releaseReadiness.enabled: true`, the very first real tick on Echo hit `SourceTreeGuardError` on the watchdog's `git fetch <canonical-remote> main`. The watchdog correctly fail-louded (one LOW-priority Attention item `release-readiness-eval-failure-fetch`, deduped across ticks, full audit in `sentinel-events.jsonl`). Layer C correctly degraded + fell back to the local scan with a degradation log. So the architecture caught its own integration gap. This PR closes the gap principledly.
17
+
18
+ **Why this is safe.** SourceTreeGuard's mandate is "refuse destructive ops against the instar source tree" — the 2026-04-22 incident class. `git fetch <remote> <branch> --no-tags --no-recurse-submodules` writes only to `FETCH_HEAD` (transient ref) and the object database. It does NOT modify: the working tree, any committed ref (heads/tags/remotes), any source file. From the source-protection standpoint it is read-tier. `ls-remote` is pure read and already in `READONLY_GIT_VERBS` (so it goes through `readSync`, which doesn't run source-tree checks at all).
19
+
20
+ **Why opt-in.** The bypass is opt-in per-call, not a global relaxation. Every callsite that uses it is reviewable and audit-logged. The allowlist is a small closed set (`fetch` only) — adding to it requires a spec edit + this same review pattern.
21
+
22
+ **Reach.** Two callsites touched, both in the canonical-ref read path the spec defines (Layer B `fetchCanonical`, Layer C `scanSpecArtifactsCanonical`). Every existing callsite that does NOT pass `sourceTreeReadOk: true` is byte-identically guarded by the prior behavior.
23
+
24
+ **Rollback.** Reverting this PR re-blocks the canonical-ref fetch on source trees. Layer B's fail-loud path keeps signaling on the failure; Layer C's local-scan fallback keeps working. The watchdog and the reconciler degrade gracefully back to their prior behavior — no broken state.
25
+
26
+ ## Testing
27
+
28
+ - `tests/unit/SafeGitExecutor-sourceTreeReadOk.test.ts` (5 tests):
29
+ - Default: `fetch` on a non-source tree works (baseline).
30
+ - Default: `fetch` on a source tree is BLOCKED by `SourceTreeGuard`.
31
+ - `sourceTreeReadOk: true` + `fetch` on a source tree passes.
32
+ - `sourceTreeReadOk: true` does NOT bypass for non-allowlist verbs (e.g. `add`).
33
+ - `SOURCE_TREE_READ_TIER_VERBS` is a small closed set (`fetch` only, ≤3 entries).
34
+
35
+ All green; lint clean.