@plurnk/plurnk-service 0.34.0 → 0.35.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 (85) hide show
  1. package/SPEC.md +30 -5
  2. package/dist/core/ChannelWrite.d.ts +1 -0
  3. package/dist/core/ChannelWrite.d.ts.map +1 -1
  4. package/dist/core/ChannelWrite.js.map +1 -1
  5. package/dist/core/Engine.d.ts +8 -2
  6. package/dist/core/Engine.d.ts.map +1 -1
  7. package/dist/core/Engine.js +95 -24
  8. package/dist/core/Engine.js.map +1 -1
  9. package/dist/core/ExecutorRegistry.d.ts +2 -0
  10. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  11. package/dist/core/ExecutorRegistry.js +1 -0
  12. package/dist/core/ExecutorRegistry.js.map +1 -1
  13. package/dist/core/SchemeRegistry.d.ts +4 -0
  14. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  15. package/dist/core/SchemeRegistry.js +18 -1
  16. package/dist/core/SchemeRegistry.js.map +1 -1
  17. package/dist/core/git-membership.d.ts.map +1 -1
  18. package/dist/core/git-membership.js +4 -1
  19. package/dist/core/git-membership.js.map +1 -1
  20. package/dist/core/git-state.d.ts.map +1 -1
  21. package/dist/core/git-state.js +3 -1
  22. package/dist/core/git-state.js.map +1 -1
  23. package/dist/core/path-decode.d.ts +2 -0
  24. package/dist/core/path-decode.d.ts.map +1 -0
  25. package/dist/core/path-decode.js +8 -0
  26. package/dist/core/path-decode.js.map +1 -0
  27. package/dist/core/run-cap.d.ts +8 -0
  28. package/dist/core/run-cap.d.ts.map +1 -0
  29. package/dist/core/run-cap.js +20 -0
  30. package/dist/core/run-cap.js.map +1 -0
  31. package/dist/core/session-settings.d.ts +19 -0
  32. package/dist/core/session-settings.d.ts.map +1 -0
  33. package/dist/core/session-settings.js +44 -0
  34. package/dist/core/session-settings.js.map +1 -0
  35. package/dist/schemes/File.d.ts.map +1 -1
  36. package/dist/schemes/File.js +3 -1
  37. package/dist/schemes/File.js.map +1 -1
  38. package/dist/schemes/Run.d.ts.map +1 -1
  39. package/dist/schemes/Run.js +5 -1
  40. package/dist/schemes/Run.js.map +1 -1
  41. package/dist/schemes/_entry-find.d.ts.map +1 -1
  42. package/dist/schemes/_entry-find.js +4 -3
  43. package/dist/schemes/_entry-find.js.map +1 -1
  44. package/dist/schemes/_entry-graph.d.ts +6 -0
  45. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  46. package/dist/schemes/_entry-graph.js +8 -0
  47. package/dist/schemes/_entry-graph.js.map +1 -1
  48. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  49. package/dist/schemes/_entry-manifest.js +13 -0
  50. package/dist/schemes/_entry-manifest.js.map +1 -1
  51. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  52. package/dist/schemes/_entry-ops.js +4 -3
  53. package/dist/schemes/_entry-ops.js.map +1 -1
  54. package/dist/schemes/_entry-send.d.ts.map +1 -1
  55. package/dist/schemes/_entry-send.js +4 -3
  56. package/dist/schemes/_entry-send.js.map +1 -1
  57. package/dist/server/Daemon.d.ts.map +1 -1
  58. package/dist/server/Daemon.js +6 -0
  59. package/dist/server/Daemon.js.map +1 -1
  60. package/dist/server/envelope.d.ts +2 -0
  61. package/dist/server/envelope.d.ts.map +1 -1
  62. package/dist/server/envelope.js +8 -1
  63. package/dist/server/envelope.js.map +1 -1
  64. package/dist/server/methods/discover.d.ts.map +1 -1
  65. package/dist/server/methods/discover.js +6 -3
  66. package/dist/server/methods/discover.js.map +1 -1
  67. package/dist/server/methods/loop_run.d.ts.map +1 -1
  68. package/dist/server/methods/loop_run.js +14 -10
  69. package/dist/server/methods/loop_run.js.map +1 -1
  70. package/dist/server/methods/session_create.d.ts.map +1 -1
  71. package/dist/server/methods/session_create.js +51 -1
  72. package/dist/server/methods/session_create.js.map +1 -1
  73. package/dist/server/methods/session_prompts.d.ts +5 -0
  74. package/dist/server/methods/session_prompts.d.ts.map +1 -0
  75. package/dist/server/methods/session_prompts.js +29 -0
  76. package/dist/server/methods/session_prompts.js.map +1 -0
  77. package/dist/server/version-info.d.ts +14 -0
  78. package/dist/server/version-info.d.ts.map +1 -0
  79. package/dist/server/version-info.js +69 -0
  80. package/dist/server/version-info.js.map +1 -0
  81. package/dist/server/yolo.d.ts.map +1 -1
  82. package/dist/server/yolo.js +8 -0
  83. package/dist/server/yolo.js.map +1 -1
  84. package/migrations/0000-00-00.01_schema.sql +21 -1
  85. package/package.json +2 -2
@@ -9,7 +9,10 @@ CREATE TABLE IF NOT EXISTS sessions (
9
9
  created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ', 'now')),
10
10
  cost_pico INTEGER NOT NULL DEFAULT 0 CHECK (cost_pico >= 0),
11
11
  scheme_registry_additions TEXT NOT NULL DEFAULT '[]' CHECK (json_valid(scheme_registry_additions)),
12
- project_root TEXT
12
+ project_root TEXT,
13
+ -- #231 client-chosen session-open context: { manifestItems?, mdDocs? }, read at turn-0
14
+ -- with precedence over env (manifestItems replaces PLURNK_MANIFEST_ITEMS; mdDocs unions PLURNK_MD_*).
15
+ settings TEXT NOT NULL DEFAULT '{}' CHECK (json_valid(settings))
13
16
  ) STRICT;
14
17
 
15
18
  CREATE INDEX IF NOT EXISTS sessions_created_at ON sessions (created_at);
@@ -46,11 +49,28 @@ CREATE TABLE IF NOT EXISTS loops (
46
49
  status INTEGER NOT NULL DEFAULT 102 CHECK (status IN (100, 102, 200, 499)),
47
50
  prompt TEXT NOT NULL,
48
51
  flags TEXT NOT NULL DEFAULT '{}' CHECK (json_valid(flags)),
52
+ -- §run-scheme loop-termination delta: terminated_at is stamped by the trigger
53
+ -- below when status crosses into terminal (every death-path, uniformly);
54
+ -- terminal_message is the deliverable — the SEND[200] body or the abandonment
55
+ -- reason — set by the terminating PREP (engine_loop_set_status / _cancel).
56
+ terminated_at TEXT,
57
+ terminal_message TEXT,
49
58
  FOREIGN KEY (run_id) REFERENCES runs(id) ON DELETE CASCADE
50
59
  ) STRICT;
51
60
 
52
61
  CREATE UNIQUE INDEX IF NOT EXISTS loops_run_id_sequence ON loops (run_id, sequence);
53
62
 
63
+ -- §run-scheme: a loop crossing into a terminal status (200/499) stamps terminated_at,
64
+ -- so sibling runs pull the termination as a folded ambient delta — the time is caught
65
+ -- uniformly across every death-path (SEND, grinder, KILL). The stamp updates
66
+ -- terminated_at, never status, so it cannot re-fire this trigger.
67
+ CREATE TRIGGER IF NOT EXISTS loops_stamp_terminated_at
68
+ AFTER UPDATE OF status ON loops
69
+ WHEN NEW.status IN (200, 499) AND OLD.status NOT IN (200, 499)
70
+ BEGIN
71
+ UPDATE loops SET terminated_at = strftime('%Y-%m-%dT%H:%M:%fZ', 'now') WHERE id = NEW.id;
72
+ END;
73
+
54
74
  -- INIT: turns
55
75
  -- finish_reason / model: provider-call metadata (plurnk-grammar Turn.json).
56
76
  -- Properties of the call, not of the model's emission payload — kept on
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-service",
3
- "version": "0.34.0",
3
+ "version": "0.35.0",
4
4
  "description": "Plurnk agent runtime — the server / engine / core. Implements the @plurnk/plurnk-grammar contract.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -47,7 +47,7 @@
47
47
  "@plurnk/plurnk-execs": "0.4.8",
48
48
  "@plurnk/plurnk-execs-all": "0.1.5",
49
49
  "@plurnk/plurnk-grammar": "0.54.0",
50
- "@plurnk/plurnk-mimetypes": "0.15.16",
50
+ "@plurnk/plurnk-mimetypes": "0.15.17",
51
51
  "@plurnk/plurnk-mimetypes-embeddings": "0.2.0",
52
52
  "@plurnk/plurnk-providers": "0.7.0",
53
53
  "@plurnk/plurnk-providers-all": "0.5.0",