pi-forge 1.2.4 → 1.3.0

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/README.md +1 -1
  2. package/dist/client/assets/{CodeMirrorEditor-M7HIAKX2.js → CodeMirrorEditor-BuLFJjB1.js} +13 -13
  3. package/dist/client/assets/CodeMirrorEditor-BuLFJjB1.js.map +1 -0
  4. package/dist/client/assets/index-CEqSkIuy.css +1 -0
  5. package/dist/client/assets/index-GubcPYw6.js +375 -0
  6. package/dist/client/assets/index-GubcPYw6.js.map +1 -0
  7. package/dist/client/assets/{workbox-window.prod.es5-Cch4wiA5.js → workbox-window.prod.es5-Bd17z0YL.js} +2 -2
  8. package/dist/client/assets/{workbox-window.prod.es5-Cch4wiA5.js.map → workbox-window.prod.es5-Bd17z0YL.js.map} +1 -1
  9. package/dist/client/index.html +2 -2
  10. package/dist/client/sw.js +1 -1
  11. package/dist/client/sw.js.map +1 -1
  12. package/dist/server/agent-extensions/compaction-continuation.js +65 -0
  13. package/dist/server/agent-extensions/compaction-continuation.js.map +1 -0
  14. package/dist/server/agent-resource-loader.js +10 -0
  15. package/dist/server/agent-resource-loader.js.map +1 -1
  16. package/dist/server/git-clone.js +364 -0
  17. package/dist/server/git-clone.js.map +1 -0
  18. package/dist/server/index.js +26 -1
  19. package/dist/server/index.js.map +1 -1
  20. package/dist/server/mcp/tool-bridge.js +14 -8
  21. package/dist/server/mcp/tool-bridge.js.map +1 -1
  22. package/dist/server/orchestration/config.js +61 -0
  23. package/dist/server/orchestration/config.js.map +1 -0
  24. package/dist/server/orchestration/event-bridge.js +93 -0
  25. package/dist/server/orchestration/event-bridge.js.map +1 -0
  26. package/dist/server/orchestration/inbox.js +199 -0
  27. package/dist/server/orchestration/inbox.js.map +1 -0
  28. package/dist/server/orchestration/init.js +39 -0
  29. package/dist/server/orchestration/init.js.map +1 -0
  30. package/dist/server/orchestration/store.js +352 -0
  31. package/dist/server/orchestration/store.js.map +1 -0
  32. package/dist/server/orchestration/tools.js +769 -0
  33. package/dist/server/orchestration/tools.js.map +1 -0
  34. package/dist/server/orchestration/types.js +57 -0
  35. package/dist/server/orchestration/types.js.map +1 -0
  36. package/dist/server/processes/envelope.js +60 -0
  37. package/dist/server/processes/envelope.js.map +1 -0
  38. package/dist/server/processes/log-store.js +132 -0
  39. package/dist/server/processes/log-store.js.map +1 -0
  40. package/dist/server/processes/manager.js +370 -0
  41. package/dist/server/processes/manager.js.map +1 -0
  42. package/dist/server/processes/prompt-strings.js +43 -0
  43. package/dist/server/processes/prompt-strings.js.map +1 -0
  44. package/dist/server/processes/tool.js +273 -0
  45. package/dist/server/processes/tool.js.map +1 -0
  46. package/dist/server/processes/types.js +21 -0
  47. package/dist/server/processes/types.js.map +1 -0
  48. package/dist/server/processes/watches.js +59 -0
  49. package/dist/server/processes/watches.js.map +1 -0
  50. package/dist/server/project-manager.js +46 -32
  51. package/dist/server/project-manager.js.map +1 -1
  52. package/dist/server/routes/config.js +5 -0
  53. package/dist/server/routes/config.js.map +1 -1
  54. package/dist/server/routes/control.js +9 -0
  55. package/dist/server/routes/control.js.map +1 -1
  56. package/dist/server/routes/health.js +14 -1
  57. package/dist/server/routes/health.js.map +1 -1
  58. package/dist/server/routes/orchestration.js +464 -0
  59. package/dist/server/routes/orchestration.js.map +1 -0
  60. package/dist/server/routes/processes.js +228 -0
  61. package/dist/server/routes/processes.js.map +1 -0
  62. package/dist/server/routes/projects.js +239 -14
  63. package/dist/server/routes/projects.js.map +1 -1
  64. package/dist/server/routes/sessions.js +53 -34
  65. package/dist/server/routes/sessions.js.map +1 -1
  66. package/dist/server/routes/webhooks.js +362 -0
  67. package/dist/server/routes/webhooks.js.map +1 -0
  68. package/dist/server/session-registry.js +246 -3
  69. package/dist/server/session-registry.js.map +1 -1
  70. package/dist/server/sse-bridge.js +226 -18
  71. package/dist/server/sse-bridge.js.map +1 -1
  72. package/dist/server/webhooks/dispatcher.js +254 -0
  73. package/dist/server/webhooks/dispatcher.js.map +1 -0
  74. package/dist/server/webhooks/event-bridge.js +185 -0
  75. package/dist/server/webhooks/event-bridge.js.map +1 -0
  76. package/dist/server/webhooks/init.js +55 -0
  77. package/dist/server/webhooks/init.js.map +1 -0
  78. package/dist/server/webhooks/store.js +394 -0
  79. package/dist/server/webhooks/store.js.map +1 -0
  80. package/dist/server/webhooks/types.js +32 -0
  81. package/dist/server/webhooks/types.js.map +1 -0
  82. package/package.json +4 -4
  83. package/dist/client/assets/CodeMirrorEditor-M7HIAKX2.js.map +0 -1
  84. package/dist/client/assets/index-DFDpaYie.css +0 -1
  85. package/dist/client/assets/index-DjYKKZRm.js +0 -363
  86. package/dist/client/assets/index-DjYKKZRm.js.map +0 -1
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Wire-shape definitions for the webhook feature. The config file
3
+ * (`${FORGE_DATA_DIR}/webhooks.json`) and the rolling delivery log
4
+ * (`${FORGE_DATA_DIR}/webhook-deliveries.json`) both serialize using
5
+ * these types directly. Adding fields is safe (older
6
+ * configs/deliveries deserialize with the new fields undefined);
7
+ * renaming or removing requires a migration step.
8
+ */
9
+ /**
10
+ * Canonical event list. Iteration order matches the UI's checklist
11
+ * order; the order is part of the user-visible surface (the
12
+ * Settings tab renders checkboxes in this order).
13
+ */
14
+ export const WEBHOOK_EVENTS = [
15
+ "agent_end",
16
+ "ask_user_question",
17
+ "process_alert",
18
+ "auto_retry_end",
19
+ "compaction_end",
20
+ "session_created",
21
+ "session_deleted",
22
+ ];
23
+ export function isWebhookEvent(v) {
24
+ return typeof v === "string" && WEBHOOK_EVENTS.includes(v);
25
+ }
26
+ /**
27
+ * Cap on persisted delivery records per webhook. Older deliveries
28
+ * roll off FIFO. 100 is enough for "did my last few fires work?"
29
+ * debugging without letting the file grow unbounded.
30
+ */
31
+ export const MAX_DELIVERIES_PER_WEBHOOK = 100;
32
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/webhooks/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgBH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAA4B;IACrD,WAAW;IACX,mBAAmB;IACnB,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;CACT,CAAC;AAEX,MAAM,UAAU,cAAc,CAAC,CAAU;IACvC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAK,cAAoC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC;AAmFD;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-forge",
3
- "version": "1.2.4",
3
+ "version": "1.3.0",
4
4
  "description": "Browser UI for the pi coding agent — embedded HTTP server with a React workbench (chat, file browser, terminal, git, MCP).",
5
5
  "keywords": [
6
6
  "pi",
@@ -45,9 +45,9 @@
45
45
  "@fastify/swagger": "^9.5.0",
46
46
  "@fastify/swagger-ui": "^5.2.3",
47
47
  "@fastify/websocket": "^11.0.2",
48
- "@earendil-works/pi-agent-core": "0.74.0",
49
- "@earendil-works/pi-ai": "0.74.0",
50
- "@earendil-works/pi-coding-agent": "0.74.0",
48
+ "@earendil-works/pi-agent-core": "0.75.5",
49
+ "@earendil-works/pi-ai": "0.75.5",
50
+ "@earendil-works/pi-coding-agent": "0.75.5",
51
51
  "@modelcontextprotocol/sdk": "^1.29.0",
52
52
  "exceljs": "^4.4.0",
53
53
  "fastify": "^5.3.2",