instar 1.3.703 → 1.3.705

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 (69) hide show
  1. package/dist/commands/server.d.ts.map +1 -1
  2. package/dist/commands/server.js +216 -17
  3. package/dist/commands/server.js.map +1 -1
  4. package/dist/core/DeliverMessageHandler.d.ts +16 -0
  5. package/dist/core/DeliverMessageHandler.d.ts.map +1 -1
  6. package/dist/core/DeliverMessageHandler.js +0 -0
  7. package/dist/core/DeliverMessageHandler.js.map +1 -1
  8. package/dist/core/PostUpdateMigrator.d.ts +15 -0
  9. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  10. package/dist/core/PostUpdateMigrator.js +108 -0
  11. package/dist/core/PostUpdateMigrator.js.map +1 -1
  12. package/dist/core/QueueDrainLoop.d.ts +6 -2
  13. package/dist/core/QueueDrainLoop.d.ts.map +1 -1
  14. package/dist/core/QueueDrainLoop.js +0 -0
  15. package/dist/core/QueueDrainLoop.js.map +1 -1
  16. package/dist/core/SessionRouter.d.ts +24 -4
  17. package/dist/core/SessionRouter.d.ts.map +1 -1
  18. package/dist/core/SessionRouter.js +25 -2
  19. package/dist/core/SessionRouter.js.map +1 -1
  20. package/dist/core/meshRejectionLog.d.ts +37 -0
  21. package/dist/core/meshRejectionLog.d.ts.map +1 -0
  22. package/dist/core/meshRejectionLog.js +73 -0
  23. package/dist/core/meshRejectionLog.js.map +1 -0
  24. package/dist/core/registryHighWater.d.ts +59 -0
  25. package/dist/core/registryHighWater.d.ts.map +1 -0
  26. package/dist/core/registryHighWater.js +120 -0
  27. package/dist/core/registryHighWater.js.map +1 -0
  28. package/dist/core/senderRejectionNotice.d.ts +89 -0
  29. package/dist/core/senderRejectionNotice.d.ts.map +1 -0
  30. package/dist/core/senderRejectionNotice.js +149 -0
  31. package/dist/core/senderRejectionNotice.js.map +1 -0
  32. package/dist/core/senderValidationGate.d.ts +80 -0
  33. package/dist/core/senderValidationGate.d.ts.map +1 -0
  34. package/dist/core/senderValidationGate.js +133 -0
  35. package/dist/core/senderValidationGate.js.map +1 -0
  36. package/dist/core/types.d.ts +12 -0
  37. package/dist/core/types.d.ts.map +1 -1
  38. package/dist/core/types.js.map +1 -1
  39. package/dist/messaging/MessageProcessingLedger.d.ts +33 -5
  40. package/dist/messaging/MessageProcessingLedger.d.ts.map +1 -1
  41. package/dist/messaging/MessageProcessingLedger.js +50 -7
  42. package/dist/messaging/MessageProcessingLedger.js.map +1 -1
  43. package/dist/messaging/ingressDedup.d.ts.map +1 -1
  44. package/dist/messaging/ingressDedup.js +9 -0
  45. package/dist/messaging/ingressDedup.js.map +1 -1
  46. package/dist/scaffold/templates.d.ts.map +1 -1
  47. package/dist/scaffold/templates.js +2 -1
  48. package/dist/scaffold/templates.js.map +1 -1
  49. package/dist/server/CapabilityIndex.d.ts.map +1 -1
  50. package/dist/server/CapabilityIndex.js +1 -0
  51. package/dist/server/CapabilityIndex.js.map +1 -1
  52. package/dist/server/routes.d.ts.map +1 -1
  53. package/dist/server/routes.js +36 -0
  54. package/dist/server/routes.js.map +1 -1
  55. package/dist/users/UserManager.d.ts +22 -1
  56. package/dist/users/UserManager.d.ts.map +1 -1
  57. package/dist/users/UserManager.js +87 -2
  58. package/dist/users/UserManager.js.map +1 -1
  59. package/dist/users/testIdentityMarkers.d.ts +94 -0
  60. package/dist/users/testIdentityMarkers.d.ts.map +1 -0
  61. package/dist/users/testIdentityMarkers.js +170 -0
  62. package/dist/users/testIdentityMarkers.js.map +1 -0
  63. package/package.json +1 -1
  64. package/src/data/builtin-manifest.json +63 -63
  65. package/src/scaffold/templates.ts +2 -1
  66. package/upgrades/1.3.704.md +48 -0
  67. package/upgrades/1.3.705.md +79 -0
  68. package/upgrades/side-effects/postmortem-standards-s1-s6.md +46 -0
  69. package/upgrades/side-effects/silent-loss-refusal-conservation.md +124 -0
@@ -36,6 +36,22 @@ export interface DeliverMessageHandlerDeps {
36
36
  validateSender?: (senderEnvelope: {
37
37
  userId?: string | number;
38
38
  }, session: string) => boolean;
39
+ /**
40
+ * silent-loss-refusal-conservation §2.B — the receiver-side rejection trace.
41
+ * Fired SYNCHRONOUSLY, once, immediately before the `sender-rejected` NACK is
42
+ * returned, so the DECIDING (owner) machine keeps a forensic record of its own
43
+ * refusal (the incident was diagnosed only from the sender's ledger). METADATA
44
+ * ONLY: the raw command/payload is NEVER passed through this seam (round-1
45
+ * security #1). try/catch-wrapped by the handler — a trace fault never changes
46
+ * the NACK. Not fired on a suppression-cache short-circuit (a replay of the
47
+ * SAME rejected messageId) — the trace is written once per rejection, bounded.
48
+ */
49
+ onRejected?: (meta: {
50
+ reason: 'sender-rejected';
51
+ session: string;
52
+ messageId: string;
53
+ senderUid?: number;
54
+ }) => void;
39
55
  }
40
56
  export type DeliverMessageAck = {
41
57
  messageId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"DeliverMessageHandler.d.ts","sourceRoot":"","sources":["../../src/core/DeliverMessageHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEpE,MAAM,WAAW,yBAAyB;IACxC,+EAA+E;IAC/E,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACjD,2FAA2F;IAC3F,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/D,0FAA0F;IAC1F,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,gBAAgB,CAAA;KAAE,CAAC,KAAK,IAAI,CAAC;IACjF;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;CAC7F;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;CAC1E,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,yBAAyB,GAAG,kBAAkB,CAsB/F"}
1
+ {"version":3,"file":"DeliverMessageHandler.d.ts","sourceRoot":"","sources":["../../src/core/DeliverMessageHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEpE,MAAM,WAAW,yBAAyB;IACxC,+EAA+E;IAC/E,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACjD,2FAA2F;IAC3F,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/D,0FAA0F;IAC1F,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,gBAAgB,CAAA;KAAE,CAAC,KAAK,IAAI,CAAC;IACjF;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC5F;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACpH;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;CAC1E,CAAC;AAYF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,yBAAyB,GAAG,kBAAkB,CA8D/F"}
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"DeliverMessageHandler.js","sourceRoot":"","sources":["../../src/core/DeliverMessageHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AA4BH,MAAM,UAAU,2BAA2B,CAAC,IAA+B;IACzE,OAAO,CAAC,OAAoB,EAAqB,EAAE;QACjD,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACtC,4EAA4E;YAC5E,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QACtD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,UAAU,IAAI,IAAI,IAAI,OAAO,CAAC,cAAc,GAAG,UAAU,EAAE,CAAC;YAC9D,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;QACvE,CAAC;QACD,sEAAsE;QACtE,2EAA2E;QAC3E,iDAAiD;QACjD,MAAM,QAAQ,GAAI,OAA6D,CAAC,cAAc,CAAC;QAC/F,IAAI,QAAQ,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvF,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;QACvE,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACzE,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;QAC/E,IAAI,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"DeliverMessageHandler.js","sourceRoot":"","sources":["../../src/core/DeliverMessageHandler.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ import { type MigratorStep, type RunPendingStepsResult } from './MigratorStepEng
27
27
  * Registry'. Spec: docs/specs/playwright-profile-registry.md.
28
28
  */
29
29
  export declare function MACHINE_LOAD_ASSESSMENT_CLAUDEMD_SECTION(): string;
30
+ export declare function SENDER_REJECTION_CLAUDEMD_SECTION(): string;
30
31
  export declare function DYNAMIC_MCP_CLAUDEMD_SECTION(port: number): string;
31
32
  export declare function PLAYWRIGHT_PROFILE_REGISTRY_CLAUDEMD_SECTION(port: number): string;
32
33
  export interface MigrationResult {
@@ -251,6 +252,20 @@ export declare class PostUpdateMigrator {
251
252
  * each migration is idempotent.
252
253
  */
253
254
  migrate(): MigrationResult;
255
+ /**
256
+ * silent-loss-refusal-conservation §4 — one-time idempotent remediation of an
257
+ * ALREADY-polluted `users.json`. `validateProfile`/`loadUsers` only guard NEW
258
+ * writes + in-memory loads; a machine already carrying fixture rows on disk
259
+ * would re-create the 2026-07-01 incident on its next captain flip. This scans
260
+ * `users.json` against `TEST_IDENTITY_MARKERS`, SKIPS any row carrying a `sig`
261
+ * that VERIFIES (the signed allow-marker — a legitimate collision), QUARANTINES
262
+ * the rest (backup + audit), and BACK-FILLS the high-water marker when ≥1
263
+ * surviving NON-fixture user remains in a store that has no marker (the
264
+ * installed-base set-point). Idempotent: after quarantine no fixtures remain →
265
+ * a re-run is a no-op. NOTE (§6 rollback): the quarantine is NOT git-revertable
266
+ * — a wrongly-quarantined legitimate user is recovered from the timestamped backup.
267
+ */
268
+ private migrateFixtureIdentityQuarantine;
254
269
  /**
255
270
  * Backfill the AutonomousProgressHeartbeat config defaults into an EXISTING
256
271
  * agent's config.json (Migration Parity item 2 + the spec's §Migration parity).
@@ -1 +1 @@
1
- {"version":3,"file":"PostUpdateMigrator.d.ts","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostUpdateMigrator.d.ts","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,8 @@ import { armCodexHooks, makeTmuxTrustDriver } from './codexHookArm.js';
50
50
  import { detectCodexPath, detectTmuxPath } from './Config.js';
51
51
  import { DegradationReporter } from '../monitoring/DegradationReporter.js';
52
52
  import { MigratorStepEngine, } from './MigratorStepEngine.js';
53
+ import { matchTestIdentity, verifyAllowTestIdentity, loadTestIdentityKey, } from '../users/testIdentityMarkers.js';
54
+ import { readRegistryHighWater, setRegistryHighWater } from './registryHighWater.js';
53
55
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
54
56
  /**
55
57
  * The "Playwright Profile Registry" CLAUDE.md awareness section. SHARED by
@@ -67,6 +69,14 @@ Before deferring work because the machine "looks loaded," RUN \`.instar/scripts/
67
69
  - **NEVER** judge load from \`uptime\` 1-min load average alone — quote the script's verdict + real idle%, never the load average. (This rule exists because that exact misread caused a false "heavy load" deferral on 2026-06-19.)
68
70
  - **When to use** (PROACTIVE — this is the trigger): the moment you catch yourself about to hold off on work, fan out parallel sub-agents, or report "the machine is loaded" → run \`load-assess.sh\` and act on its verdict, not on a load-average glance.\n`;
69
71
  }
72
+ export function SENDER_REJECTION_CLAUDEMD_SECTION() {
73
+ return `\n### Sender-Rejection Notices ("message not delivered — sender not recognized")
74
+
75
+ When I run across more than one machine and a message is forwarded to the machine that OWNS the conversation, that machine re-validates the sender against its OWN user registry. If it can't confirm the sender, the message is REFUSED (a first-class terminal outcome — never silently logged as "delivered") and the user is told with ONE neutral notice: *"I got your message but couldn't confirm you as an approved sender, so it wasn't delivered. I've logged the details so this can be diagnosed."*
76
+ - **Why a user got that notice:** the owning machine didn't resolve the sender's id in its user registry. Read \`logs/mesh-rejections.jsonl\` on the DECIDING machine (metadata-only: \`ts/reason/session/messageId/senderUid\`, never payload) and check the registration path — the sender may not be registered on that machine, or its \`users.json\` may be degenerate.
77
+ - **The safety gate (silent-loss-refusal-conservation §2.D):** sender re-validation refuses to ARM against a genuinely-empty / never-populated / corrupt / operator-unresolvable registry — it fails toward DELIVERY and shouts (a fresh install must let the operator's first message through), and it keeps a durable \`state/registry-high-water.json\` marker so a never-populated \`[]\` (fresh install → deliver) is told apart from an emptied-by-deletion \`[]\` (→ keep rejecting + HIGH alert). A corrupt/unparseable registry fails CLOSED (reject unresolved) — never silently opens the doors. Test/fixture identities are refused at the write AND load layers so the registry can't be clobbered the way it was on 2026-07-01.
78
+ - **When to use** (PROACTIVE): user asks "why did I get a 'message not delivered / sender not recognized' notice?" → read \`logs/mesh-rejections.jsonl\` + check whether they're registered on the owning machine. "why did my messages silently stop?" → check that machine's registry health (an emptied registry disarms + shouts; a corrupt one fails closed). Spec: \`docs/specs/silent-loss-refusal-conservation.md\`.\n`;
79
+ }
70
80
  export function DYNAMIC_MCP_CLAUDEMD_SECTION(port) {
71
81
  return `\n### Dynamic MCP Lifecycle (⚗️ experimental, ships DARK) — load heavy MCP servers on demand
72
82
 
@@ -631,8 +641,97 @@ export class PostUpdateMigrator {
631
641
  this.migrateConformanceGateAutoInvoke(result);
632
642
  this.migrateHonestProgressMessagingDefaults(result);
633
643
  this.migrateAutonomousHeartbeatDefaults(result);
644
+ this.migrateFixtureIdentityQuarantine(result);
634
645
  return result;
635
646
  }
647
+ /**
648
+ * silent-loss-refusal-conservation §4 — one-time idempotent remediation of an
649
+ * ALREADY-polluted `users.json`. `validateProfile`/`loadUsers` only guard NEW
650
+ * writes + in-memory loads; a machine already carrying fixture rows on disk
651
+ * would re-create the 2026-07-01 incident on its next captain flip. This scans
652
+ * `users.json` against `TEST_IDENTITY_MARKERS`, SKIPS any row carrying a `sig`
653
+ * that VERIFIES (the signed allow-marker — a legitimate collision), QUARANTINES
654
+ * the rest (backup + audit), and BACK-FILLS the high-water marker when ≥1
655
+ * surviving NON-fixture user remains in a store that has no marker (the
656
+ * installed-base set-point). Idempotent: after quarantine no fixtures remain →
657
+ * a re-run is a no-op. NOTE (§6 rollback): the quarantine is NOT git-revertable
658
+ * — a wrongly-quarantined legitimate user is recovered from the timestamped backup.
659
+ */
660
+ migrateFixtureIdentityQuarantine(result) {
661
+ const usersFile = path.join(this.config.stateDir, 'users.json');
662
+ if (!fs.existsSync(usersFile)) {
663
+ result.skipped.push('fixture-identity-quarantine: users.json not found');
664
+ return;
665
+ }
666
+ let rows;
667
+ try {
668
+ const parsed = JSON.parse(fs.readFileSync(usersFile, 'utf-8'));
669
+ if (!Array.isArray(parsed)) {
670
+ result.skipped.push('fixture-identity-quarantine: users.json is not an array (left untouched — corruption is not this migration\'s job)');
671
+ return;
672
+ }
673
+ rows = parsed;
674
+ }
675
+ catch (err) {
676
+ // A corrupt store is NOT this migration's concern (loadUsers backs it up);
677
+ // never clobber an unparseable file.
678
+ result.skipped.push(`fixture-identity-quarantine: users.json parse-failure (left untouched): ${err instanceof Error ? err.message : String(err)}`);
679
+ return;
680
+ }
681
+ const key = loadTestIdentityKey(this.config.stateDir);
682
+ const survivors = [];
683
+ const quarantined = [];
684
+ for (const row of rows) {
685
+ const profile = row;
686
+ const marker = matchTestIdentity({ id: String(profile.id ?? ''), slackUserId: profile.slackUserId, channels: profile.channels ?? [] });
687
+ if (!marker) {
688
+ survivors.push(row);
689
+ continue;
690
+ }
691
+ // A row with a VERIFYING signed allow-marker is a legitimate collision — keep it.
692
+ if (verifyAllowTestIdentity(key, String(profile.id ?? ''), marker, profile.allowTestIdentity)) {
693
+ survivors.push(row);
694
+ continue;
695
+ }
696
+ quarantined.push(row);
697
+ }
698
+ if (quarantined.length > 0) {
699
+ // Back up the quarantined rows to a timestamped file (recoverable — §6).
700
+ const backupPath = `${usersFile}.fixture-quarantine.${Date.now()}.json`;
701
+ try {
702
+ fs.writeFileSync(backupPath, JSON.stringify(quarantined, null, 2));
703
+ }
704
+ catch (err) {
705
+ // If we can't back up, do NOT quarantine (never a non-recoverable delete).
706
+ result.errors.push(`fixture-identity-quarantine: backup write failed, leaving users.json untouched: ${err instanceof Error ? err.message : String(err)}`);
707
+ return;
708
+ }
709
+ // Atomic rewrite of users.json with the survivors (temp + rename).
710
+ try {
711
+ const tmp = `${usersFile}.${process.pid}.${crypto.randomBytes(6).toString('hex')}.tmp`;
712
+ fs.writeFileSync(tmp, JSON.stringify(survivors, null, 2));
713
+ fs.renameSync(tmp, usersFile);
714
+ }
715
+ catch (err) {
716
+ result.errors.push(`fixture-identity-quarantine: users.json rewrite failed: ${err instanceof Error ? err.message : String(err)}`);
717
+ return;
718
+ }
719
+ result.upgraded.push(`fixture-identity-quarantine: quarantined ${quarantined.length} fixture/test identit${quarantined.length === 1 ? 'y' : 'ies'} out of users.json ` +
720
+ `(backup: ${path.basename(backupPath)}); ${survivors.length} real user(s) remain`);
721
+ }
722
+ // Back-fill the high-water marker for the installed base: a store that has
723
+ // held ≥1 real (non-fixture) user should classify POPULATED if later emptied
724
+ // (emptied-by-deletion → keep rejecting), not never-populated.
725
+ const realSurvivors = survivors.filter((r) => {
726
+ const p = r;
727
+ return matchTestIdentity({ id: String(p.id ?? ''), slackUserId: p.slackUserId, channels: p.channels ?? [] }) === null;
728
+ });
729
+ if (realSurvivors.length > 0 && !readRegistryHighWater(this.config.stateDir)) {
730
+ if (setRegistryHighWater(this.config.stateDir, 'migration-backfill')) {
731
+ result.upgraded.push('fixture-identity-quarantine: back-filled registry high-water marker (installed-base set-point)');
732
+ }
733
+ }
734
+ }
636
735
  /**
637
736
  * Backfill the AutonomousProgressHeartbeat config defaults into an EXISTING
638
737
  * agent's config.json (Migration Parity item 2 + the spec's §Migration parity).
@@ -6856,6 +6955,15 @@ Create worktrees for collaborator repos with \`instar worktree create <branch>\`
6856
6955
  patched = true;
6857
6956
  result.upgraded.push('CLAUDE.md: added Fork-Bomb Spawn Cap section');
6858
6957
  }
6958
+ // Sender-Rejection Notices (silent-loss-refusal-conservation §2.E) — Agent
6959
+ // Awareness + Migration Parity: an agent that doesn't know a "sender not
6960
+ // recognized" notice comes from the mesh sender re-validation will be confused
6961
+ // by it. Content-sniffed on a stable heading → idempotent.
6962
+ if (!content.includes('Sender-Rejection Notices')) {
6963
+ content += SENDER_REJECTION_CLAUDEMD_SECTION();
6964
+ patched = true;
6965
+ result.upgraded.push('CLAUDE.md: added Sender-Rejection Notices section');
6966
+ }
6859
6967
  if (patched) {
6860
6968
  try {
6861
6969
  fs.writeFileSync(claudeMdPath, content);