pilotswarm-sdk 0.5.44 → 0.5.46

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 (86) hide show
  1. package/api/src/api-client.js +6 -1
  2. package/api/src/http-api-transport.js +47 -0
  3. package/api/src/protocol.js +14 -0
  4. package/dist/agent-manager-tools.d.ts +2 -0
  5. package/dist/agent-manager-tools.d.ts.map +1 -1
  6. package/dist/agent-manager-tools.js +4 -1
  7. package/dist/agent-manager-tools.js.map +1 -1
  8. package/dist/agent-package-format.d.ts +6 -0
  9. package/dist/agent-package-format.d.ts.map +1 -1
  10. package/dist/agent-package-format.js +33 -0
  11. package/dist/agent-package-format.js.map +1 -1
  12. package/dist/agent-package-service.d.ts.map +1 -1
  13. package/dist/agent-package-service.js +7 -2
  14. package/dist/agent-package-service.js.map +1 -1
  15. package/dist/artifact-tools.js +1 -1
  16. package/dist/artifact-tools.js.map +1 -1
  17. package/dist/canvas-app-catalog.d.ts +61 -0
  18. package/dist/canvas-app-catalog.d.ts.map +1 -0
  19. package/dist/canvas-app-catalog.js +146 -0
  20. package/dist/canvas-app-catalog.js.map +1 -0
  21. package/dist/canvas-app-manifest.d.ts +94 -2
  22. package/dist/canvas-app-manifest.d.ts.map +1 -1
  23. package/dist/canvas-app-manifest.js +140 -1
  24. package/dist/canvas-app-manifest.js.map +1 -1
  25. package/dist/canvas-kv.d.ts +176 -0
  26. package/dist/canvas-kv.d.ts.map +1 -0
  27. package/dist/canvas-kv.js +281 -0
  28. package/dist/canvas-kv.js.map +1 -0
  29. package/dist/canvas-support.d.ts +40 -0
  30. package/dist/canvas-support.d.ts.map +1 -0
  31. package/dist/canvas-support.js +79 -0
  32. package/dist/canvas-support.js.map +1 -0
  33. package/dist/cms-migrations.d.ts.map +1 -1
  34. package/dist/cms-migrations.js +822 -0
  35. package/dist/cms-migrations.js.map +1 -1
  36. package/dist/cms.d.ts +101 -0
  37. package/dist/cms.d.ts.map +1 -1
  38. package/dist/cms.js +80 -1
  39. package/dist/cms.js.map +1 -1
  40. package/dist/facts-migrations.d.ts.map +1 -1
  41. package/dist/facts-migrations.js +30 -0
  42. package/dist/facts-migrations.js.map +1 -1
  43. package/dist/index.d.ts +10 -2
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +5 -1
  46. package/dist/index.js.map +1 -1
  47. package/dist/inspect-tools.d.ts +6 -0
  48. package/dist/inspect-tools.d.ts.map +1 -1
  49. package/dist/inspect-tools.js +1 -0
  50. package/dist/inspect-tools.js.map +1 -1
  51. package/dist/managed-session.d.ts +7 -0
  52. package/dist/managed-session.d.ts.map +1 -1
  53. package/dist/managed-session.js +193 -64
  54. package/dist/managed-session.js.map +1 -1
  55. package/dist/management-client.d.ts +37 -1
  56. package/dist/management-client.d.ts.map +1 -1
  57. package/dist/management-client.js +80 -3
  58. package/dist/management-client.js.map +1 -1
  59. package/dist/mcp-loader.d.ts +68 -0
  60. package/dist/mcp-loader.d.ts.map +1 -1
  61. package/dist/mcp-loader.js +79 -0
  62. package/dist/mcp-loader.js.map +1 -1
  63. package/dist/session-manager.d.ts +20 -0
  64. package/dist/session-manager.d.ts.map +1 -1
  65. package/dist/session-manager.js +13 -1
  66. package/dist/session-manager.js.map +1 -1
  67. package/dist/session-proxy.d.ts +1 -9
  68. package/dist/session-proxy.d.ts.map +1 -1
  69. package/dist/session-proxy.js +95 -77
  70. package/dist/session-proxy.js.map +1 -1
  71. package/dist/web/generated-op-methods.d.ts +53 -0
  72. package/dist/web/generated-op-methods.d.ts.map +1 -1
  73. package/dist/web/generated-op-methods.js +12 -0
  74. package/dist/web/generated-op-methods.js.map +1 -1
  75. package/dist/web/web-management-client.d.ts +18 -0
  76. package/dist/web/web-management-client.d.ts.map +1 -1
  77. package/dist/web/web-management-client.js +27 -0
  78. package/dist/web/web-management-client.js.map +1 -1
  79. package/dist/worker.d.ts +27 -0
  80. package/dist/worker.d.ts.map +1 -1
  81. package/dist/worker.js +145 -13
  82. package/dist/worker.js.map +1 -1
  83. package/package.json +3 -3
  84. package/plugins/system/agents/default.agent.md +30 -126
  85. package/plugins/system/skills/canvas-apps/SKILL.md +224 -111
  86. package/plugins/system/skills/html-visuals/SKILL.md +2 -2
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Canvas helpers shared by the session bridge (session-proxy.ts) and the app
3
+ * catalog (canvas-app-catalog.ts). Kept in their own module so the catalog
4
+ * can be exercised without importing the whole bridge, and so the bridge and
5
+ * the catalog can never disagree about slot names or revision derivation.
6
+ *
7
+ * The session canvas: one reserved artifact per session slot, drawn by the
8
+ * agent with draw_canvas and rendered live in the portal. The revision is
9
+ * derived from the durable session.canvas_updated event log, not a counter
10
+ * column — see docs/proposals/session-canvas.md.
11
+ */
12
+ export const CANVAS_ARTIFACT_FILENAME = "canvas.html";
13
+ /** Slot 1 keeps the historical name; 2-5 are canvas2.html .. canvas5.html. */
14
+ export function canvasArtifactFilename(slot) {
15
+ return slot <= 1 ? CANVAS_ARTIFACT_FILENAME : `canvas${slot}.html`;
16
+ }
17
+ /** 1-5, defaulting absent to 1. Returns null for anything else. */
18
+ export function normalizeCanvasSlot(value) {
19
+ if (value === undefined || value === null || value === "")
20
+ return 1;
21
+ const n = Number(value);
22
+ if (!Number.isInteger(n) || n < 1 || n > 5)
23
+ return null;
24
+ return n;
25
+ }
26
+ /** Event rows predate slots; a missing slot means slot 1. */
27
+ export function eventSlot(row) {
28
+ const n = Number(row?.data?.slot);
29
+ return Number.isInteger(n) && n >= 1 && n <= 5 ? n : 1;
30
+ }
31
+ /**
32
+ * Latest canvas draw's full data (rev + armed contract) from the durable
33
+ * event log — the single authority. Reads a bounded window rather than
34
+ * exactly one row and takes the max of the VALID revs it finds, so one
35
+ * garbage event (rev missing, NaN, negative — injectable via
36
+ * send_session_event, which validates nothing) cannot reset the sequence.
37
+ *
38
+ * No empty-coerce on failure: a transient read error that reads as "no
39
+ * canvas" would mint rev 1 over a live rev-12 canvas. Callers route the
40
+ * throw to a structured { error }.
41
+ *
42
+ * Window 30, not 5: five interleaved slots can push one slot's latest draw
43
+ * well past a five-event window. The session_canvases table is the fast
44
+ * path; this scan is the durable fallback.
45
+ */
46
+ export async function latestCanvasEventData(catalog, sessionId, slot = 1) {
47
+ const rows = await catalog.getSessionEventsBefore(sessionId, Number.MAX_SAFE_INTEGER, 30, ["session.canvas_updated"]);
48
+ let latest = { rev: 0 };
49
+ for (const row of rows || []) {
50
+ if (eventSlot(row) !== slot)
51
+ continue;
52
+ const rev = Number(row?.data?.rev);
53
+ if (Number.isFinite(rev) && Number.isInteger(rev) && rev > latest.rev) {
54
+ latest = { rev, responseContract: row?.data?.responseContract };
55
+ }
56
+ }
57
+ return latest;
58
+ }
59
+ /** The current canvas revision: table first (migration 0045), event scan as the durable fallback. */
60
+ export async function latestCanvasRev(catalog, sessionId, slot = 1) {
61
+ try {
62
+ const rows = await catalog.getSessionCanvases?.(sessionId);
63
+ const hit = (rows || []).find((r) => Number(r.slot) === slot);
64
+ if (hit && Number(hit.latestRev) > 0)
65
+ return Number(hit.latestRev);
66
+ }
67
+ catch { /* fall through to the event scan */ }
68
+ const rows = await catalog.getSessionEventsBefore(sessionId, Number.MAX_SAFE_INTEGER, 30, ["session.canvas_updated"]);
69
+ let latest = 0;
70
+ for (const row of rows || []) {
71
+ if (eventSlot(row) !== slot)
72
+ continue;
73
+ const rev = Number(row?.data?.rev);
74
+ if (Number.isFinite(rev) && rev > latest && Number.isInteger(rev))
75
+ latest = rev;
76
+ }
77
+ return latest;
78
+ }
79
+ //# sourceMappingURL=canvas-support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"canvas-support.js","sourceRoot":"","sources":["../src/canvas-support.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cms-migrations.d.ts","sourceRoot":"","sources":["../src/cms-migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAyT/D"}
1
+ {"version":3,"file":"cms-migrations.d.ts","sourceRoot":"","sources":["../src/cms-migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAmU/D"}