instar 1.3.188 → 1.3.190

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 (33) hide show
  1. package/dist/scaffold/templates.d.ts.map +1 -1
  2. package/dist/scaffold/templates.js +2 -1
  3. package/dist/scaffold/templates.js.map +1 -1
  4. package/dist/server/SecretDrop.d.ts +37 -0
  5. package/dist/server/SecretDrop.d.ts.map +1 -1
  6. package/dist/server/SecretDrop.js +63 -0
  7. package/dist/server/SecretDrop.js.map +1 -1
  8. package/dist/server/routes.d.ts.map +1 -1
  9. package/dist/server/routes.js +117 -16
  10. package/dist/server/routes.js.map +1 -1
  11. package/dist/threadline/OperatorConfirmGate.d.ts +92 -0
  12. package/dist/threadline/OperatorConfirmGate.d.ts.map +1 -0
  13. package/dist/threadline/OperatorConfirmGate.js +102 -0
  14. package/dist/threadline/OperatorConfirmGate.js.map +1 -0
  15. package/dist/threadline/SecureInvitation.d.ts +4 -0
  16. package/dist/threadline/SecureInvitation.d.ts.map +1 -1
  17. package/dist/threadline/SecureInvitation.js +11 -2
  18. package/dist/threadline/SecureInvitation.js.map +1 -1
  19. package/dist/threadline/ThreadlineMCPServer.d.ts +43 -0
  20. package/dist/threadline/ThreadlineMCPServer.d.ts.map +1 -1
  21. package/dist/threadline/ThreadlineMCPServer.js +46 -0
  22. package/dist/threadline/ThreadlineMCPServer.js.map +1 -1
  23. package/dist/threadline/mcp-http-client.d.ts +13 -1
  24. package/dist/threadline/mcp-http-client.d.ts.map +1 -1
  25. package/dist/threadline/mcp-http-client.js +48 -0
  26. package/dist/threadline/mcp-http-client.js.map +1 -1
  27. package/dist/threadline/mcp-stdio-entry.js +4 -1
  28. package/dist/threadline/mcp-stdio-entry.js.map +1 -1
  29. package/package.json +1 -1
  30. package/src/data/builtin-manifest.json +46 -46
  31. package/src/scaffold/templates.ts +2 -1
  32. package/upgrades/1.3.189.md +59 -0
  33. package/upgrades/1.3.190.md +55 -0
@@ -0,0 +1,55 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ Agent-to-agent secret transfers (the **Sealed Handoff**) are now **trust-gated**,
9
+ like every other Instar capability. Whether a transfer needs your approval is
10
+ decided by two trust levels you already control: **your trust of the agent**
11
+ (its autonomy for this kind of operation) and **the agent's trust of the other
12
+ agent** (the peer's trust level). When both are high, the transfer goes through
13
+ with **no approval needed**; otherwise it requires an explicit operator
14
+ authorization, and below the bar it is refused before the one-time secret link is
15
+ ever consumed.
16
+
17
+ This refines the operator-confirm gate from "the operator always approves" into a
18
+ trust-conditional one, reusing the two existing trust systems (no new concept):
19
+ the peer trust ladder (`untrusted → verified → trusted → autonomous`) and the
20
+ operation-autonomy ladder (`ask-every-time → ask-first → log → autonomous`). A
21
+ credential transfer defaults to requiring approval; it only becomes
22
+ no-approval when you've both raised the peer to `trusted`+ and granted the agent
23
+ autonomy for transfers.
24
+
25
+ ## What to Tell Your User
26
+
27
+ You stay in control of agent-to-agent secret transfers through the same trust
28
+ levels you already use elsewhere. For peers you've explicitly marked trusted and
29
+ agents you've granted autonomy, transfers happen without interrupting you; for
30
+ anything less trusted, the transfer is held. Nothing to configure — it follows
31
+ the trust you've already set.
32
+
33
+ ## Summary of New Capabilities
34
+
35
+ - Sealed Handoff transfers consult both trust axes (peer trust + the user's
36
+ operation-autonomy for the agent) before a transfer is allowed.
37
+ - High trust on both axes → no operator approval needed; below the bar → refused
38
+ (fail-closed) until an explicit operator authorization exists.
39
+ - Reuses the existing AgentTrustManager + AdaptiveTrust systems — no new trust
40
+ concept, and ordinary user Secret Drops are never gated by it.
41
+
42
+ ## Evidence
43
+
44
+ - Decision logic: `src/threadline/OperatorConfirmGate.ts`
45
+ (`evaluateTransferAuthorization`, `isHighTrustTransfer`) — 15 unit tests
46
+ covering both sides of each threshold + the trust-bypass + fallback paths.
47
+ - Wiring: `src/server/routes.ts` submit handler consults the gate for
48
+ peer-pinned requests before consuming them — 4 integration tests
49
+ (`tests/integration/sealed-handoff-r2-trust-gate.test.ts`): peer-below-bar →
50
+ 403, op-below-bar → 403, high-both → passes (410 on the downstream signature
51
+ check), ordinary drop → never gated.
52
+ - `npm run lint` + `tsc --noEmit` clean.
53
+ - Follow-up (separate): the operator-authorization store + the low-trust
54
+ approval flow (so a below-the-bar transfer can be approved one-off rather than
55
+ only via raising trust levels).