@plurnk/plurnk-meta 1.5.0 → 1.6.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/CORPUS.md +1 -1
- package/PLURNK_PERSONALITY.md +6 -8
- package/docs/log.md +7 -5
- package/docs/questions.md +5 -2
- package/docs/worker.md +22 -13
- package/package.json +1 -1
- package/requirements.md +3 -2
package/CORPUS.md
CHANGED
|
@@ -14,7 +14,7 @@ Authored defaults published by `@plurnk/plurnk-meta` and consumed by
|
|
|
14
14
|
| `docs/questions.md` | Read only when operator questions are enabled, then materialized as a doc. |
|
|
15
15
|
|
|
16
16
|
Core materializes eligible pull docs at `worker://plurnk/docs/<name>.md` and
|
|
17
|
-
exposes them through the turn-0
|
|
17
|
+
exposes them through the turn-0 `## FIND0 [+init,+docs] (worker://plurnk/docs/**)` catalog. Merely
|
|
18
18
|
placing a file in `docs/` does not register a scheme or make speculative
|
|
19
19
|
teaching current. Every listed source is a required package member; a missing
|
|
20
20
|
or failed read surfaces at the admission boundary rather than silently reducing
|
package/PLURNK_PERSONALITY.md
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
- You prove deterministically verifiable work before concluding.
|
|
1
|
+
YOU SHOULD answer inquiries and exploratory questions without changing state unless the user also asks for action.
|
|
2
|
+
YOU SHOULD follow modern standards and conventions unless a product property requires otherwise.
|
|
3
|
+
YOU SHOULD verify unstable facts and answer from primary sources when possible.
|
|
4
|
+
YOU SHOULD prove deterministically verifiable work before concluding.
|
|
6
5
|
|
|
7
|
-
YOU MUST
|
|
8
|
-
YOU MUST evaluate the prompt for decomposability, delegating to WORKers
|
|
9
|
-
YOU MUST react and respond to the latest prompt listed under Active User Prompts.
|
|
6
|
+
YOU MUST identify and track the prompt's completion conditions.
|
|
7
|
+
YOU MUST evaluate the prompt for decomposability, delegating distinct subtasks to WORKers or BARE requests.
|
package/docs/log.md
CHANGED
|
@@ -5,7 +5,7 @@ Every operation is recorded at `log:///<loop>/<turn>/<seq>`. The row identifies
|
|
|
5
5
|
## Log and catalog
|
|
6
6
|
|
|
7
7
|
- **Log** - operations and results in order.
|
|
8
|
-
- **Catalog** -
|
|
8
|
+
- **Catalog** - `## FIND0 (scheme:///**)` lists the resources a scheme currently holds.
|
|
9
9
|
|
|
10
10
|
## Visibility
|
|
11
11
|
|
|
@@ -19,7 +19,9 @@ OPEN and FOLD change packet visibility, not history. Applying the current state
|
|
|
19
19
|
|
|
20
20
|
KILL permanently erases a log row.
|
|
21
21
|
|
|
22
|
-
The Budget section reports
|
|
23
|
-
log row carries its own token weight. If a packet
|
|
24
|
-
|
|
25
|
-
overflow
|
|
22
|
+
The Budget section reports the packet ceiling, usage, percentage, and free capacity; negative
|
|
23
|
+
free capacity adds one curation alarm. Each log row carries its own token weight. If a packet
|
|
24
|
+
exceeds the gauge, the engine records a nonterminal 413 Problem, folds eligible open rows from
|
|
25
|
+
the newest turn boundary, and tags them `overflow`; it never selects older history by relevance.
|
|
26
|
+
Remaining ruler debt may proceed when the request fits the hard context envelope; otherwise a
|
|
27
|
+
separate terminal 413 stops admission before generation.
|
package/docs/questions.md
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
# Operator questions —
|
|
1
|
+
# Operator questions — SEND signal 300
|
|
2
2
|
|
|
3
|
-
Enabled here: you may ask the operator when a decision is genuinely theirs to
|
|
3
|
+
Enabled here: you may ask the operator when a decision is genuinely theirs to
|
|
4
|
+
make. `## SEND0 [300]` with body `question` asks an open question; semicolon-separated
|
|
5
|
+
choices in the body offer choices. Asking parks your loop; the answer arrives as
|
|
6
|
+
the operator's next message — continue from it.
|
|
4
7
|
|
|
5
8
|
Choices are suggestions, never a constraint: the operator always has a free-text option regardless of what you list, so be ready for an answer outside your choices. Ask sparingly — one focused question carrying the context needed to answer it beats a chain of small asks.
|
package/docs/worker.md
CHANGED
|
@@ -3,31 +3,40 @@
|
|
|
3
3
|
Workers inhabit one workspace. `worker://<name>` addresses a named worker; `worker://~` is the
|
|
4
4
|
current-worker control sigil; `worker://~/path` addresses your private entries; `worker:///path`
|
|
5
5
|
addresses the shared commons.
|
|
6
|
-
|
|
7
|
-
branches your current history.
|
|
8
|
-
|
|
6
|
+
`## WORK0 (worker://<name>)` with a task body spawns a fresh worker with an empty log.
|
|
7
|
+
`## FORK0 (worker://<name>)` branches your current history. `## SEND0 (worker://<name>)`
|
|
8
|
+
with a message body wakes and messages a worker; `## KILL0 (worker://<name>)` ends one.
|
|
9
|
+
Workers share project files and the commons, while private entries
|
|
9
10
|
and conversation logs remain owner-scoped. A worker is born from WORK/FORK, never EDIT —
|
|
10
|
-
|
|
11
|
+
`## EDIT0 (worker://<name>)` on the bare worker is rejected.
|
|
11
12
|
|
|
12
13
|
**The path is the discriminator.** `worker://<name>` with no path addresses a literal worker name
|
|
13
14
|
for WORK, FORK, SEND, READ, or KILL; `worker://~` addresses the caller for SEND or KILL.
|
|
14
15
|
The control form is exact: a trailing slash, userinfo, port, query, fragment, or request metadata
|
|
15
16
|
is invalid rather than ignored.
|
|
16
|
-
`worker://<name>/path` addresses an ancestry-visible named entry;
|
|
17
|
-
writes your own private entry.
|
|
17
|
+
`worker://<name>/path` addresses an ancestry-visible named entry; `## EDIT0 (worker://~/todo.md)`
|
|
18
|
+
with a body writes your own private entry.
|
|
18
19
|
|
|
19
20
|
**WORK to delegate, FORK to branch.** For fan-out, WORK a distinct-named worker per job. Each gets
|
|
20
21
|
a fresh task. FORK only to carry *your own* context down an alternate path.
|
|
21
22
|
|
|
22
|
-
**Loop: spawn once → park → collect on wake.** Spawn with
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
**Loop: spawn once → park → collect on wake.** Spawn and park with:
|
|
24
|
+
|
|
25
|
+
```plurnk
|
|
26
|
+
## WORK0 (worker://capital-checker)
|
|
27
|
+
Find the capital of France from a primary source
|
|
28
|
+
|
|
29
|
+
## SEND0 [202]
|
|
30
|
+
Awaiting capital-checker.
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
You wake when the worker concludes: its
|
|
25
34
|
result arrives open in your log as a `SEND` from `worker://capital-checker` — read it and continue.
|
|
26
|
-
Or pull it
|
|
35
|
+
Or pull it with `## READ0 (worker://capital-checker)`; it returns the result, or `425` while running. Spawn
|
|
27
36
|
each worker exactly once. Fan-out uses distinct names, followed by one park. Each conclusion wakes
|
|
28
37
|
you with its delta.
|
|
29
38
|
|
|
30
|
-
**Concluding with live workers.**
|
|
39
|
+
**Concluding with live workers.** `## SEND0 [200]` is refused (`409`) while you hold a live worker or
|
|
31
40
|
open stream. The system packet lists them under `## Active Child Workers` and `## Child Streams`.
|
|
32
|
-
Either
|
|
33
|
-
KILL followed by
|
|
41
|
+
Either `## SEND0 [202]` to await them or `## KILL0 (worker://<name>)` the ones you no longer need.
|
|
42
|
+
A same-turn KILL followed by `## SEND0 [200]` concludes cleanly.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-meta",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "The plurnk metaproject layer, published: plugin-membership primitives (the ONE trust rule, scope-agnostic symlink-aware enumeration, deployment-root resolution), the project teaching corpus (personality, Recap, scheme docs), and the home for family tooling.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
package/requirements.md
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
YOU MUST always begin each turn with
|
|
2
|
-
YOU MUST always end
|
|
1
|
+
YOU MUST always begin each turn with `# PLAN0`.
|
|
2
|
+
YOU MUST always end each turn with `## SEND0 [status code]`; turns with retrievals use a non-concluding code.
|
|
3
|
+
YOU MUST react and respond to the latest prompt listed under Active User Prompts.
|