instar 1.3.954 → 1.3.955

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 (42) hide show
  1. package/dist/commands/server.d.ts.map +1 -1
  2. package/dist/commands/server.js +30 -10
  3. package/dist/commands/server.js.map +1 -1
  4. package/dist/core/DecisionQualityRecorderImpl.d.ts +22 -0
  5. package/dist/core/DecisionQualityRecorderImpl.d.ts.map +1 -1
  6. package/dist/core/DecisionQualityRecorderImpl.js +26 -0
  7. package/dist/core/DecisionQualityRecorderImpl.js.map +1 -1
  8. package/dist/core/MessagingToneGate.d.ts +67 -1
  9. package/dist/core/MessagingToneGate.d.ts.map +1 -1
  10. package/dist/core/MessagingToneGate.js +127 -19
  11. package/dist/core/MessagingToneGate.js.map +1 -1
  12. package/dist/core/PostUpdateMigrator.d.ts +10 -0
  13. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  14. package/dist/core/PostUpdateMigrator.js +44 -1
  15. package/dist/core/PostUpdateMigrator.js.map +1 -1
  16. package/dist/core/TelegramRelay.d.ts +27 -2
  17. package/dist/core/TelegramRelay.d.ts.map +1 -1
  18. package/dist/core/TelegramRelay.js +40 -1
  19. package/dist/core/TelegramRelay.js.map +1 -1
  20. package/dist/core/devGatedFeatures.d.ts.map +1 -1
  21. package/dist/core/devGatedFeatures.js +6 -0
  22. package/dist/core/devGatedFeatures.js.map +1 -1
  23. package/dist/data/provenanceCoverage.d.ts.map +1 -1
  24. package/dist/data/provenanceCoverage.js +22 -0
  25. package/dist/data/provenanceCoverage.js.map +1 -1
  26. package/dist/messaging/outbound-credential-guard.d.ts +116 -0
  27. package/dist/messaging/outbound-credential-guard.d.ts.map +1 -0
  28. package/dist/messaging/outbound-credential-guard.js +157 -0
  29. package/dist/messaging/outbound-credential-guard.js.map +1 -0
  30. package/dist/scaffold/templates.d.ts.map +1 -1
  31. package/dist/scaffold/templates.js +4 -2
  32. package/dist/scaffold/templates.js.map +1 -1
  33. package/dist/server/routes.d.ts.map +1 -1
  34. package/dist/server/routes.js +410 -11
  35. package/dist/server/routes.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/data/builtin-manifest.json +64 -64
  38. package/src/data/provenanceCoverage.ts +22 -0
  39. package/src/scaffold/templates.ts +4 -2
  40. package/src/templates/scripts/telegram-reply.sh +93 -2
  41. package/upgrades/1.3.955.md +73 -0
  42. package/upgrades/side-effects/tone-gate-advisory-migration.md +336 -0
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA4EH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAU3D,OAAO,EAAE,eAAe,EAAiC,MAAM,iCAAiC,CAAC;AA0BjG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AA8H7D,OAAO,KAAK,EAAW,oBAAoB,EAAe,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAgFtD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC1C,OAAO,CAUT;AAuID,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;2DACuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA+rDD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,oBAAoB,GAAG,IAAI,GACxC;IACD,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB,CAqBA;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,cAAc,EAC9B,YAAY,CAAC,EAAE,YAAY,EAC3B,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAGvE,UAAU,CAAC,EAAE,MAAM,OAAO,8BAA8B,EAAE,WAAW,GAAG,IAAI,EAK5E,qBAAqB,CAAC,EAAE,MAAM,OAAO,gCAAgC,EAAE,kBAAkB,GAAG,IAAI,EAKhG,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,EAQrD,oBAAoB,CAAC,EAAE,MAAM;IAC3B,YAAY,EAAE,OAAO,kBAAkB,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACrE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,GACP,IAAI,CAwtBN;AAgmBD,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAk+pBtE;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDzE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD5E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA4EH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAU3D,OAAO,EAAE,eAAe,EAAiC,MAAM,iCAAiC,CAAC;AA0BjG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AA8H7D,OAAO,KAAK,EAAW,oBAAoB,EAAe,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAgFtD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC1C,OAAO,CAUT;AAuID,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;2DACuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA+rDD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,oBAAoB,GAAG,IAAI,GACxC;IACD,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB,CAqBA;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,cAAc,EAC9B,YAAY,CAAC,EAAE,YAAY,EAC3B,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAGvE,UAAU,CAAC,EAAE,MAAM,OAAO,8BAA8B,EAAE,WAAW,GAAG,IAAI,EAK5E,qBAAqB,CAAC,EAAE,MAAM,OAAO,gCAAgC,EAAE,kBAAkB,GAAG,IAAI,EAKhG,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,EAQrD,oBAAoB,CAAC,EAAE,MAAM;IAC3B,YAAY,EAAE,OAAO,kBAAkB,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACrE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,GACP,IAAI,CAwtBN;AAgmBD,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAs/pBtE;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDzE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD5E"}
@@ -131,7 +131,7 @@ import { isSlackSessionKey, reconstructSlackMessage } from '../core/SlackForward
131
131
  import { formatForwardedTopicContext } from '../core/ForwardedTopicContext.js';
132
132
  import { resolveAdvertisedMeshUrl, advertiseSelfMeshUrl, detectTailscaleIp, pickPrimaryLanIp, computeSelfMeshEndpoints, advertiseSelfMeshEndpoints, resolveMeshBindHost } from '../core/MeshUrlAdvertiser.js';
133
133
  import { PeerEndpointResolver } from '../core/PeerEndpointResolver.js';
134
- import { relayOutbound } from '../core/TelegramRelay.js';
134
+ import { RelayRefusedError, isRelayRefusal, relayOutbound } from '../core/TelegramRelay.js';
135
135
  import { GitSyncManager } from '../core/GitSync.js';
136
136
  import { RegistrySyncDebouncer } from '../core/RegistrySyncDebouncer.js';
137
137
  import { wireRegistrySync } from '../core/wireRegistrySync.js';
@@ -15821,7 +15821,16 @@ export async function startServer(options) {
15821
15821
  // Single wiring point: resolveToneGateOperatorConfig reads the TOP-LEVEL
15822
15822
  // toneGate block (messaging is an array — a messaging.toneGate read is
15823
15823
  // structurally dead, the cause of the 2026-07-24 capture wiring gap).
15824
- messagingToneGate = new MessagingToneGate(sharedIntelligence, () => resolveToneGateOperatorConfig(config));
15824
+ // The getter re-runs on EVERY review, but `config` is the boot-time
15825
+ // snapshot — nothing re-reads the file into it, so a knob resolved only
15826
+ // from `config` is restart-required no matter how often the getter fires.
15827
+ // Layering the LIVE block on top is what makes the documented rollback
15828
+ // ("set advisoryMigration:false, no restart") actually true; without it
15829
+ // the spec would promise a lever that does not move until a bounce.
15830
+ messagingToneGate = new MessagingToneGate(sharedIntelligence, () => {
15831
+ const live = liveConfig.get('toneGate', undefined);
15832
+ return resolveToneGateOperatorConfig(live && typeof live === 'object' ? { ...config, toneGate: live } : config);
15833
+ });
15825
15834
  console.log(pc.green(' Messaging tone gate: active (Haiku via shared IntelligenceProvider)'));
15826
15835
  }
15827
15836
  else {
@@ -22443,14 +22452,25 @@ export async function startServer(options) {
22443
22452
  const v = config.multiMachine?.relayTimeoutMs;
22444
22453
  return typeof v === 'number' && v > 0 ? v : 15_000;
22445
22454
  })();
22446
- telegram.outboundRelay = (topicId, text, opts) => relayOutbound(topicId, text, opts, {
22447
- leaseHolder: () => coordinator.getSyncStatus().leaseHolder,
22448
- selfMachineId: meshSelfId,
22449
- peerUrl,
22450
- authToken: config.authToken,
22451
- timeoutMs: relayTimeoutMs,
22452
- log: (line) => console.warn(pc.yellow(` ${line}`)),
22453
- });
22455
+ telegram.outboundRelay = async (topicId, text, opts) => {
22456
+ const r = await relayOutbound(topicId, text, opts, {
22457
+ leaseHolder: () => coordinator.getSyncStatus().leaseHolder,
22458
+ selfMachineId: meshSelfId,
22459
+ peerUrl,
22460
+ authToken: config.authToken,
22461
+ timeoutMs: relayTimeoutMs,
22462
+ log: (line) => console.warn(pc.yellow(` ${line}`)),
22463
+ });
22464
+ // A holder REFUSAL (422 — a tone-gate nudge, the credential wall)
22465
+ // is not a transport failure and must not be reported as one. It
22466
+ // is thrown as a typed error so the standby's route can re-emit
22467
+ // the holder's own body verbatim; otherwise the agent sees
22468
+ // "router unreachable" and can never answer the nudge that is
22469
+ // actually waiting for it.
22470
+ if (isRelayRefusal(r))
22471
+ throw new RelayRefusedError(r);
22472
+ return r;
22473
+ };
22454
22474
  }
22455
22475
  // ── L4 transfer-by-nickname activation: the "move/run this on <nickname>"
22456
22476
  // trigger. The recognizer + planner are pure units; this wires them to the