@plurnk/plurnk-service 0.21.0 → 0.22.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 (88) hide show
  1. package/README.md +6 -6
  2. package/SPEC.md +347 -291
  3. package/dist/Paths.d.ts +4 -0
  4. package/dist/Paths.d.ts.map +1 -1
  5. package/dist/Paths.js +20 -0
  6. package/dist/Paths.js.map +1 -1
  7. package/dist/content/edited-span.js +2 -2
  8. package/dist/content/edited-span.js.map +1 -1
  9. package/dist/content/matcher.js +1 -1
  10. package/dist/content/matcher.js.map +1 -1
  11. package/dist/content/mimetype-binary.js +1 -1
  12. package/dist/content/mimetype-binary.js.map +1 -1
  13. package/dist/core/ChannelWrite.js +2 -2
  14. package/dist/core/ChannelWrite.js.map +1 -1
  15. package/dist/core/Engine.d.ts.map +1 -1
  16. package/dist/core/Engine.js +65 -44
  17. package/dist/core/Engine.js.map +1 -1
  18. package/dist/core/ExecutorRegistry.js +1 -1
  19. package/dist/core/ExecutorRegistry.js.map +1 -1
  20. package/dist/core/PluginLoader.js +1 -1
  21. package/dist/core/PluginLoader.js.map +1 -1
  22. package/dist/core/SchemeRegistry.js +1 -1
  23. package/dist/core/SchemeRegistry.js.map +1 -1
  24. package/dist/core/caps/DbChannelCaps.js +1 -1
  25. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  26. package/dist/core/caps/DbEntryCaps.js +1 -1
  27. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  28. package/dist/core/caps/SchemeCtxImpl.js +1 -1
  29. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  30. package/dist/core/fork.d.ts +5 -0
  31. package/dist/core/fork.d.ts.map +1 -0
  32. package/dist/core/fork.js +47 -0
  33. package/dist/core/fork.js.map +1 -0
  34. package/dist/core/git-membership.js +4 -4
  35. package/dist/core/git-membership.js.map +1 -1
  36. package/dist/core/git-state.js +1 -1
  37. package/dist/core/git-state.js.map +1 -1
  38. package/dist/core/packet-wire.js +7 -7
  39. package/dist/core/packet-wire.js.map +1 -1
  40. package/dist/schemes/File.js +6 -6
  41. package/dist/schemes/File.js.map +1 -1
  42. package/dist/schemes/_entry-crud.js +2 -2
  43. package/dist/schemes/_entry-crud.js.map +1 -1
  44. package/dist/schemes/_entry-find.js +1 -1
  45. package/dist/schemes/_entry-find.js.map +1 -1
  46. package/dist/schemes/_entry-graph.js +1 -1
  47. package/dist/schemes/_entry-graph.js.map +1 -1
  48. package/dist/schemes/_entry-manifest.js +1 -1
  49. package/dist/schemes/_entry-manifest.js.map +1 -1
  50. package/dist/schemes/_entry-ops.js +6 -6
  51. package/dist/schemes/_entry-ops.js.map +1 -1
  52. package/dist/schemes/_entry-semantic.js +1 -1
  53. package/dist/schemes/_entry-semantic.js.map +1 -1
  54. package/dist/schemes/_entry-send.js +3 -3
  55. package/dist/schemes/_entry-send.js.map +1 -1
  56. package/dist/server/ClientConnection.js +3 -3
  57. package/dist/server/ClientConnection.js.map +1 -1
  58. package/dist/server/Daemon.d.ts +2 -2
  59. package/dist/server/Daemon.js +4 -4
  60. package/dist/server/Daemon.js.map +1 -1
  61. package/dist/server/MethodRegistry.js +1 -1
  62. package/dist/server/MethodRegistry.js.map +1 -1
  63. package/dist/server/envelope.d.ts +1 -0
  64. package/dist/server/envelope.d.ts.map +1 -1
  65. package/dist/server/envelope.js +19 -6
  66. package/dist/server/envelope.js.map +1 -1
  67. package/dist/server/methods/_dispatchAsPlurnk.d.ts +7 -0
  68. package/dist/server/methods/_dispatchAsPlurnk.d.ts.map +1 -0
  69. package/dist/server/methods/_dispatchAsPlurnk.js +23 -0
  70. package/dist/server/methods/_dispatchAsPlurnk.js.map +1 -0
  71. package/dist/server/methods/entry_read.js +1 -1
  72. package/dist/server/methods/entry_read.js.map +1 -1
  73. package/dist/server/methods/log_read.js +1 -1
  74. package/dist/server/methods/log_read.js.map +1 -1
  75. package/dist/server/methods/loop_cancel.js +1 -1
  76. package/dist/server/methods/loop_cancel.js.map +1 -1
  77. package/dist/server/methods/loop_resolve.js +1 -1
  78. package/dist/server/methods/loop_resolve.js.map +1 -1
  79. package/dist/server/methods/loop_run.d.ts.map +1 -1
  80. package/dist/server/methods/loop_run.js +31 -4
  81. package/dist/server/methods/loop_run.js.map +1 -1
  82. package/dist/server/methods/session_constraints.js +2 -2
  83. package/dist/server/methods/session_constraints.js.map +1 -1
  84. package/dist/server/yolo.js +1 -1
  85. package/dist/server/yolo.js.map +1 -1
  86. package/migrations/0000-00-00.01_schema.sql +7 -7
  87. package/package.json +10 -10
  88. package/requirements.md +1 -1
@@ -98,7 +98,7 @@ CREATE TABLE IF NOT EXISTS entries (
98
98
  pathname TEXT NOT NULL,
99
99
  params TEXT CHECK (params IS NULL OR json_valid(params)),
100
100
  attributes TEXT NOT NULL DEFAULT '{}' CHECK (json_valid(attributes)),
101
- -- SPEC §14.3 — how a file member entered the curated surface. 'git' rows are
101
+ -- SPEC §membership — how a file member entered the curated surface. 'git' rows are
102
102
  -- reconciled against `git ls-files − ignore` each turn (registered + un-registered
103
103
  -- so entries == members); 'client'/'constraint' (model-created, add-glob) are not
104
104
  -- git's to reclaim. NULL = not a file member (other schemes don't carry origin).
@@ -116,7 +116,7 @@ CREATE TABLE IF NOT EXISTS entries (
116
116
  CREATE UNIQUE INDEX IF NOT EXISTS entries_agent_identity ON entries (scheme, pathname) WHERE scope = 'agent';
117
117
  CREATE UNIQUE INDEX IF NOT EXISTS entries_session_identity ON entries (session_id, scheme, pathname) WHERE scope = 'session';
118
118
 
119
- -- The ONE engine-imposed constraint (SPEC §7.8): 100 MiB char-length cap
119
+ -- The ONE engine-imposed constraint (SPEC §stream-constraints): 100 MiB char-length cap
120
120
  -- per channel content body. All other limits are extrinsic.
121
121
  CREATE TABLE IF NOT EXISTS entry_channels (
122
122
  entry_id INTEGER NOT NULL,
@@ -217,7 +217,7 @@ CREATE TABLE IF NOT EXISTS log_entries (
217
217
  sequence INTEGER NOT NULL CHECK (sequence >= 1),
218
218
  at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ', 'now')),
219
219
  origin TEXT NOT NULL CHECK (origin IN ('model', 'client', 'plurnk', 'plugin')),
220
- -- §14.5 environment-delta cause: a sibling run-id or a scheme ('file');
220
+ -- §env-delta environment-delta cause: a sibling run-id or a scheme ('file');
221
221
  -- NULL = the owning run itself (self), rendered without a run= label.
222
222
  source TEXT,
223
223
 
@@ -354,7 +354,7 @@ BEGIN
354
354
  END;
355
355
 
356
356
  -- INIT: subscriptions
357
- -- Subscription registry per SPEC §7.1. Exists ONLY for cancellation
357
+ -- Subscription registry per SPEC §subscriptions. Exists ONLY for cancellation
358
358
  -- routing (SEND[499] → lookup → scheme teardown). Closed rows persist
359
359
  -- for forensics; partial unique index enforces one active subscription
360
360
  -- per (run, entry).
@@ -385,9 +385,9 @@ CREATE INDEX IF NOT EXISTS subscriptions_scheme_active
385
385
  CREATE INDEX IF NOT EXISTS subscriptions_opened_at ON subscriptions (opened_at);
386
386
 
387
387
  -- INIT: run_watermarks
388
- -- §14.5 environment-delta detection. Per (run, entry, channel): the content this
388
+ -- §env-delta environment-delta detection. Per (run, entry, channel): the content this
389
389
  -- run last reconciled. First sight sets it silently (no delta); a later content
390
- -- change materializes a delta-EDIT (the diff span, §14.6) and advances the mark.
390
+ -- change materializes a delta-EDIT (the diff span, §edit-result-render) and advances the mark.
391
391
  -- plurnk:// derived entries (manifest/prompt) are excluded at the query, not here.
392
392
  CREATE TABLE IF NOT EXISTS run_watermarks (
393
393
  run_id INTEGER NOT NULL,
@@ -400,7 +400,7 @@ CREATE TABLE IF NOT EXISTS run_watermarks (
400
400
  ) STRICT, WITHOUT ROWID;
401
401
 
402
402
  -- INIT: session_constraints
403
- -- SPEC §14.3 constraint overlay — the client's supersede over git membership.
403
+ -- SPEC §membership constraint overlay — the client's supersede over git membership.
404
404
  -- Per (session, effect, glob): `add` (members git misses, resolved by a targeted
405
405
  -- client-dictated scan), `ignore` (drop git-tracked matches), `read-only` (member
406
406
  -- for read; File.edit rejects the write). git-absent, `add` rows are the sole
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-service",
3
- "version": "0.21.0",
3
+ "version": "0.22.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",
@@ -51,8 +51,8 @@
51
51
  "@plurnk/plurnk-execs-search": "0.2.3",
52
52
  "@plurnk/plurnk-execs-sqlite": "0.1.3",
53
53
  "@plurnk/plurnk-execs-wasm": "0.1.2",
54
- "@plurnk/plurnk-grammar": "0.32.0",
55
- "@plurnk/plurnk-mimetypes": "0.15.8",
54
+ "@plurnk/plurnk-grammar": "0.33.0",
55
+ "@plurnk/plurnk-mimetypes": "0.15.9",
56
56
  "@plurnk/plurnk-mimetypes-embeddings": "0.1.0",
57
57
  "@plurnk/plurnk-providers": "0.2.2",
58
58
  "@plurnk/plurnk-schemes": "0.6.0",
@@ -66,21 +66,21 @@
66
66
  "@plurnk/plurnk-mimetypes-text-clojure": "0.2.2",
67
67
  "@plurnk/plurnk-mimetypes-text-cmake": "0.2.2",
68
68
  "@plurnk/plurnk-mimetypes-text-common-lisp": "0.2.2",
69
- "@plurnk/plurnk-mimetypes-text-csharp": "0.2.2",
69
+ "@plurnk/plurnk-mimetypes-text-csharp": "0.2.3",
70
70
  "@plurnk/plurnk-mimetypes-text-datalog": "0.3.2",
71
71
  "@plurnk/plurnk-mimetypes-text-erlang": "0.2.2",
72
72
  "@plurnk/plurnk-mimetypes-text-graphql": "0.2.2",
73
- "@plurnk/plurnk-mimetypes-text-mariadb": "0.3.2",
74
- "@plurnk/plurnk-mimetypes-text-plsql": "0.2.2",
75
- "@plurnk/plurnk-mimetypes-text-postgresql": "0.3.2",
73
+ "@plurnk/plurnk-mimetypes-text-mariadb": "0.3.3",
74
+ "@plurnk/plurnk-mimetypes-text-plsql": "0.2.3",
75
+ "@plurnk/plurnk-mimetypes-text-postgresql": "0.3.3",
76
76
  "@plurnk/plurnk-mimetypes-text-prolog": "0.2.2",
77
77
  "@plurnk/plurnk-mimetypes-text-protobuf": "0.3.2",
78
78
  "@plurnk/plurnk-mimetypes-text-redis": "0.3.2",
79
79
  "@plurnk/plurnk-mimetypes-text-sparql": "0.2.2",
80
- "@plurnk/plurnk-mimetypes-text-sqlite": "0.3.2",
80
+ "@plurnk/plurnk-mimetypes-text-sqlite": "0.3.3",
81
81
  "@plurnk/plurnk-mimetypes-text-swift": "0.1.2",
82
- "@plurnk/plurnk-mimetypes-text-terraform": "1.0.2",
83
- "@plurnk/plurnk-mimetypes-text-tsql": "0.2.2",
82
+ "@plurnk/plurnk-mimetypes-text-terraform": "1.0.3",
83
+ "@plurnk/plurnk-mimetypes-text-tsql": "0.2.3",
84
84
  "@tree-sitter-grammars/tree-sitter-kotlin": "^1.1.0",
85
85
  "@tree-sitter-grammars/tree-sitter-lua": "^0.4.1",
86
86
  "@tree-sitter-grammars/tree-sitter-toml": "^0.7.0",
package/requirements.md CHANGED
@@ -3,7 +3,7 @@ Syntax: <<OPsuffix[signal]?(target)?<Line/Result>?:body?:OPsuffix
3
3
  YOU MUST document all relevant questions and uncertainties into taxonomized, tagged, and topical unknown entries.
4
4
  YOU MUST ONLY populate known entries with source entry information, never with model training.
5
5
  YOU SHOULD prefer deterministic calculations and retrievals over model training or speculation.
6
- YOU SHOULD FOLD log entries that are irrelevant, resolved, or already distilled into known entries.
6
+ YOU SHOULD manage your own context to maximize signal, as irrelevant tokens degrade reasoning.
7
7
  YOU SHOULD leverage folksonomic path names, tags, and bulk pattern operations to optimize for context relevance.
8
8
  YOU MUST use OPEN and FOLD to keep your context budget healthy, optimized, and topical, below the `tokensFree` limit.
9
9
  YOU MUST terminate the turn with either a continuing (102) or loop terminating (200) `<<SEND[102]:status update:SEND`