@plurnk/plurnk-service 1.17.0 → 1.18.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.
- package/.env.defaults +19 -1
- package/README.md +1 -1
- package/SPEC.md +1025 -946
- package/dist/build-info.json +1 -1
- package/dist/content/read-projector.js +2 -2
- package/dist/content/read-projector.js.map +1 -1
- package/dist/content/read-resolve.d.ts +1 -0
- package/dist/content/read-resolve.d.ts.map +1 -1
- package/dist/content/read-resolve.js +13 -10
- package/dist/content/read-resolve.js.map +1 -1
- package/dist/core/AdmittedTurnExecutor.d.ts +1 -2
- package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
- package/dist/core/AdmittedTurnExecutor.js +12 -12
- package/dist/core/AdmittedTurnExecutor.js.map +1 -1
- package/dist/core/CapabilityResolver.d.ts.map +1 -1
- package/dist/core/CapabilityResolver.js +40 -33
- package/dist/core/CapabilityResolver.js.map +1 -1
- package/dist/core/ChannelWrite.d.ts +1 -0
- package/dist/core/ChannelWrite.d.ts.map +1 -1
- package/dist/core/ChannelWrite.js +1 -1
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/DataStatementRunner.d.ts.map +1 -1
- package/dist/core/DataStatementRunner.js +194 -144
- package/dist/core/DataStatementRunner.js.map +1 -1
- package/dist/core/Dispatcher.d.ts +6 -1
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +25 -26
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.js +1 -1
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/ExecutionOutputs.sql +8 -0
- package/dist/core/ExecutorRegistry.d.ts +4 -0
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +1 -0
- package/dist/core/ExecutorRegistry.js.map +1 -1
- package/dist/core/LogBody.d.ts.map +1 -1
- package/dist/core/LogBody.js +2 -1
- package/dist/core/LogBody.js.map +1 -1
- package/dist/core/LogEntryProjection.d.ts.map +1 -1
- package/dist/core/LogEntryProjection.js +4 -10
- package/dist/core/LogEntryProjection.js.map +1 -1
- package/dist/core/LogWriter.d.ts.map +1 -1
- package/dist/core/LogWriter.js +9 -7
- package/dist/core/LogWriter.js.map +1 -1
- package/dist/core/LoopDriver.d.ts.map +1 -1
- package/dist/core/LoopDriver.js +1 -3
- package/dist/core/LoopDriver.js.map +1 -1
- package/dist/core/ModelCall.d.ts.map +1 -1
- package/dist/core/ModelCall.js +2 -6
- package/dist/core/ModelCall.js.map +1 -1
- package/dist/core/ModelCall.sql +7 -36
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +8 -6
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/RuntimeWorker.d.ts.map +1 -1
- package/dist/core/RuntimeWorker.js +6 -1
- package/dist/core/RuntimeWorker.js.map +1 -1
- package/dist/core/RuntimeWorker.sql +7 -1
- package/dist/core/SchemeRegistry.js +1 -1
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/StrikeRail.d.ts +2 -2
- package/dist/core/StrikeRail.d.ts.map +1 -1
- package/dist/core/StrikeRail.js +7 -5
- package/dist/core/StrikeRail.js.map +1 -1
- package/dist/core/ToolResources.d.ts.map +1 -1
- package/dist/core/ToolResources.js +5 -3
- package/dist/core/ToolResources.js.map +1 -1
- package/dist/core/TurnDispositionHandler.d.ts +4 -6
- package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
- package/dist/core/TurnDispositionHandler.js +88 -80
- package/dist/core/TurnDispositionHandler.js.map +1 -1
- package/dist/core/TurnMaterialization.d.ts.map +1 -1
- package/dist/core/TurnMaterialization.js +7 -9
- package/dist/core/TurnMaterialization.js.map +1 -1
- package/dist/core/TurnOps.d.ts.map +1 -1
- package/dist/core/TurnOps.js +1 -1
- package/dist/core/TurnOps.js.map +1 -1
- package/dist/core/TurnRunner.d.ts +1 -5
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +1096 -1062
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/WorkerControlHandler.d.ts.map +1 -1
- package/dist/core/WorkerControlHandler.js +23 -0
- package/dist/core/WorkerControlHandler.js.map +1 -1
- package/dist/core/WorkerName.d.ts +3 -6
- package/dist/core/WorkerName.d.ts.map +1 -1
- package/dist/core/WorkerName.js +9 -25
- package/dist/core/WorkerName.js.map +1 -1
- package/dist/core/WorkspaceGate.js +4 -4
- package/dist/core/WorkspaceGate.js.map +1 -1
- package/dist/core/env-catalog.d.ts +28 -0
- package/dist/core/env-catalog.d.ts.map +1 -0
- package/dist/core/env-catalog.js +99 -0
- package/dist/core/env-catalog.js.map +1 -0
- package/dist/core/file-materialization.js +1 -1
- package/dist/core/file-materialization.js.map +1 -1
- package/dist/core/git-state.js +1 -1
- package/dist/core/git-state.js.map +1 -1
- package/dist/core/operation-target-groups.d.ts.map +1 -1
- package/dist/core/operation-target-groups.js +2 -1
- package/dist/core/operation-target-groups.js.map +1 -1
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +320 -295
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +3 -1
- package/dist/digest/Digest.js.map +1 -1
- package/dist/digest/DigestRender.d.ts +1 -0
- package/dist/digest/DigestRender.d.ts.map +1 -1
- package/dist/digest/DigestRender.js +44 -8
- package/dist/digest/DigestRender.js.map +1 -1
- package/dist/digest/digest-rows.d.ts +6 -0
- package/dist/digest/digest-rows.d.ts.map +1 -1
- package/dist/digest/digest.sql +11 -2
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +68 -33
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/schemes/ExecScheduler.js +2 -2
- package/dist/schemes/ExecScheduler.js.map +1 -1
- package/dist/schemes/File.d.ts.map +1 -1
- package/dist/schemes/File.js +2 -1
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Log.js +1 -1
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/QuestionTool.js +1 -1
- package/dist/schemes/QuestionTool.js.map +1 -1
- package/dist/schemes/TurnSource.d.ts.map +1 -1
- package/dist/schemes/TurnSource.js +7 -6
- package/dist/schemes/TurnSource.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +18 -0
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js +5 -14
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-manifest.sql +1 -1
- package/dist/schemes/_search-index.d.ts +5 -1
- package/dist/schemes/_search-index.d.ts.map +1 -1
- package/dist/schemes/_search-index.js +96 -56
- package/dist/schemes/_search-index.js.map +1 -1
- package/dist/schemes/_search-index.sql +17 -0
- package/dist/schemes/exec-abort.js +1 -1
- package/dist/schemes/exec-abort.js.map +1 -1
- package/dist/schemes/exec-env.d.ts +3 -0
- package/dist/schemes/exec-env.d.ts.map +1 -1
- package/dist/schemes/exec-env.js +66 -15
- package/dist/schemes/exec-env.js.map +1 -1
- package/dist/schemes/exec-runtime.d.ts +1 -1
- package/dist/schemes/exec-runtime.d.ts.map +1 -1
- package/dist/schemes/exec-runtime.js +1 -1
- package/dist/schemes/exec-runtime.js.map +1 -1
- package/dist/server/ClientReads.d.ts.map +1 -1
- package/dist/server/ClientReads.js +2 -1
- package/dist/server/ClientReads.js.map +1 -1
- package/dist/server/Daemon.d.ts +1 -0
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +32 -14
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonModule.d.ts +7 -2
- package/dist/server/DaemonModule.d.ts.map +1 -1
- package/dist/server/EnvFunctionality.d.ts +43 -0
- package/dist/server/EnvFunctionality.d.ts.map +1 -0
- package/dist/server/EnvFunctionality.js +194 -0
- package/dist/server/EnvFunctionality.js.map +1 -0
- package/dist/server/Functionality.d.ts +4 -2
- package/dist/server/Functionality.d.ts.map +1 -1
- package/dist/server/Functionality.js +188 -79
- package/dist/server/Functionality.js.map +1 -1
- package/dist/server/FunctionalityManager.d.ts +2 -0
- package/dist/server/FunctionalityManager.d.ts.map +1 -1
- package/dist/server/FunctionalityManager.js +13 -3
- package/dist/server/FunctionalityManager.js.map +1 -1
- package/dist/server/MembersFunctionality.d.ts.map +1 -1
- package/dist/server/MembersFunctionality.js +0 -1
- package/dist/server/MembersFunctionality.js.map +1 -1
- package/dist/server/Retention.d.ts +3 -0
- package/dist/server/Retention.d.ts.map +1 -1
- package/dist/server/Retention.js +7 -4
- package/dist/server/Retention.js.map +1 -1
- package/dist/server/Retention.sql +23 -0
- package/dist/server/SkillsFunctionality.d.ts.map +1 -1
- package/dist/server/SkillsFunctionality.js +5 -2
- package/dist/server/SkillsFunctionality.js.map +1 -1
- package/dist/server/WorkspaceResidency.d.ts +2 -0
- package/dist/server/WorkspaceResidency.d.ts.map +1 -1
- package/dist/server/WorkspaceResidency.js +27 -0
- package/dist/server/WorkspaceResidency.js.map +1 -1
- package/dist/server/client-input.js +1 -1
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/drain.sql +1 -1
- package/dist/server/envelope.d.ts +0 -1
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +0 -12
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/lifecycle-recovery.sql +4 -3
- package/dist/server/workspace-capabilities.sql +45 -0
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +16 -1
- package/dist/service.js.map +1 -1
- package/docs/env.md +55 -0
- package/docs/members.md +4 -4
- package/docs/skills.md +1 -1
- package/migrations/002_workers.sql +15 -0
- package/migrations/004_inference.sql +53 -12
- package/migrations/005_entries.sql +8 -0
- package/migrations/006_log.sql +18 -15
- package/migrations/007_subscriptions.sql +2 -2
- package/package.json +42 -32
package/.env.defaults
CHANGED
|
@@ -23,6 +23,9 @@ PLURNK_PORT=1066
|
|
|
23
23
|
# PLURNK_SERVICE_SQLITE_MMAP_SIZE=268435456
|
|
24
24
|
# Database size ceiling, pages; writes beyond it fail. Unset = SQLite default.
|
|
25
25
|
# PLURNK_SERVICE_SQLITE_MAX_PAGE_COUNT=524288
|
|
26
|
+
# Read-only database Workers beside the one writer Worker (database Workers = 1 + readers);
|
|
27
|
+
# 0 = every read shares the writer. Non-negative integer. Blank = sqlrite's own default.
|
|
28
|
+
PLURNK_SERVICE_SQLITE_READERS=0
|
|
26
29
|
|
|
27
30
|
# --- Permissions and membership ---
|
|
28
31
|
# CapabilityPolicy JSON: deny removes matching demands; only admits only matches.
|
|
@@ -32,7 +35,7 @@ PLURNK_SERVICE_CAPABILITIES={}
|
|
|
32
35
|
PLURNK_SERVICE_FILE_CREATE_SCOPE=root
|
|
33
36
|
# Model-added membership: none | root | namespace. Workspaces may narrow it.
|
|
34
37
|
# Operator definitions use PLURNK_MEMBERS_<alias>=<glob> and PLURNK_MEMBERS_ENABLED=["alias"].
|
|
35
|
-
PLURNK_SERVICE_MEMBERS_MODEL_SCOPE=
|
|
38
|
+
PLURNK_SERVICE_MEMBERS_MODEL_SCOPE=namespace
|
|
36
39
|
# Git membership, status, and branch integration: 1 = permitted; 0 = denied service-wide.
|
|
37
40
|
PLURNK_SERVICE_GIT_ALLOWED=1
|
|
38
41
|
# Include the repository containing project_root as members: 1 = yes; 0 = explicit members only.
|
|
@@ -96,6 +99,16 @@ PLURNK_SERVICE_OPTIMISTIC_WAIT_MS=5000
|
|
|
96
99
|
PLURNK_SERVICE_EXEC_POLL_SEC=60
|
|
97
100
|
# Backoff steps: delay doubles to BASE * 2^(TURNS-1), then stays capped.
|
|
98
101
|
PLURNK_SERVICE_EXEC_POLL_TURNS=8
|
|
102
|
+
# Ambient environment an EXEC subprocess may inherit from the host: exact names, or one
|
|
103
|
+
# trailing-* prefix glob. This is a CEILING — a worker or a heading modifier narrows it,
|
|
104
|
+
# nothing widens it. plurnk's own secrets (PLURNK_* and every provider credential name) are
|
|
105
|
+
# stripped beneath it unconditionally and are not governed by this knob.
|
|
106
|
+
# The shipped list is what a shell, git, node and python need to run at all. An operator
|
|
107
|
+
# who wants a tool's credential reachable by model-written commands adds it by name.
|
|
108
|
+
PLURNK_SERVICE_EXEC_ENV_INHERIT=PATH,HOME,USER,LOGNAME,SHELL,PWD,TMPDIR,TERM,TZ,LANG,LC_*,PAGER,GIT_PAGER,NO_COLOR,CI
|
|
109
|
+
# Names removed after INHERIT, same shapes; narrows without rewriting the list above.
|
|
110
|
+
PLURNK_SERVICE_EXEC_ENV_EXCLUDE=
|
|
111
|
+
|
|
99
112
|
# Grace after a termination signal, ms; then SIGKILL the surviving process group.
|
|
100
113
|
PLURNK_SERVICE_EXEC_KILL_GRACE_MS=2000
|
|
101
114
|
|
|
@@ -154,6 +167,11 @@ PLURNK_SERVICE_REQUIEM_RETRY_MAX_TOKENS=32768
|
|
|
154
167
|
PLURNK_SERVICE_RETAIN_PACKET_TURNS=-1
|
|
155
168
|
# Packet compositions kept by age, ms since the turn completed; -1 = no age limit.
|
|
156
169
|
PLURNK_SERVICE_RETAIN_PACKET_MS=-1
|
|
170
|
+
# Model response bodies kept per loop, newest first; -1 = every body, forever. The call's
|
|
171
|
+
# evidence, admission and accounting always stay.
|
|
172
|
+
PLURNK_SERVICE_RETAIN_RESPONSE_TURNS=-1
|
|
173
|
+
# Model response bodies kept by age, ms since the turn completed; -1 = no age limit.
|
|
174
|
+
PLURNK_SERVICE_RETAIN_RESPONSE_MS=-1
|
|
157
175
|
# Collect packet items no turn's composition references (1), or keep them (0).
|
|
158
176
|
PLURNK_SERVICE_COLLECT_PACKET_ITEMS=1
|
|
159
177
|
# Collect derivations no channel, turn source, or log row cites (1), or keep them (0).
|
package/README.md
CHANGED
|
@@ -73,7 +73,7 @@ The daemon can emit OpenTelemetry traces and low-cardinality metrics through the
|
|
|
73
73
|
|
|
74
74
|
## The file sandbox
|
|
75
75
|
|
|
76
|
-
Plurnk sees what Git tracks or a `members` definition includes. The AGENTS.md policy path is injected separately as privileged policy, not as a file entry. A path admitted by neither source does not exist to the model and cannot be overwritten. Accepted creation is exclusive and never orphaned: it is Git-added or receives an inspectable exact pick. Creation defaults to `project_root`, can be disabled or expanded to the canonical namespace by operator policy, and only an explicit pick overrides Git ignore. Member edits remain proposal-gated; an outside-root member is read-only unless a pick grants it.
|
|
76
|
+
Plurnk sees what Git tracks or a `members` definition includes. The AGENTS.md policy path is injected separately as privileged policy, not as a file entry. A path admitted by neither source does not exist to the model and cannot be overwritten. Accepted creation is exclusive and never orphaned: it is Git-added or receives an inspectable exact pick. Creation defaults to `project_root`, can be disabled or expanded to the canonical namespace by operator policy, and only an explicit pick overrides Git ignore. Member edits remain proposal-gated; an outside-root member is read-only unless a pick grants it. An execution deliberately reaches beyond this file sandbox, so its proposal policy is the machine perimeter. Details: SPEC {§scheme-address} ({§fs-namespace} through {§fs-world-state}).
|
|
77
77
|
|
|
78
78
|
## Tests
|
|
79
79
|
|