@zq-silk/yui 2.20.0 → 2.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.
- package/README.md +5 -0
- package/dist/cli/commandCatalog.js +88 -28
- package/dist/cli/dynamicCompletion.js +4 -1
- package/dist/cli/helpRenderer.js +12 -1
- package/dist/cli/interactionPolicy.js +2 -0
- package/dist/cli/invocationAuthority.js +2 -6
- package/dist/cli/invocationRouter.js +5 -5
- package/dist/cli/managedDiagnostics.js +24 -16
- package/dist/cli/roleWizard.js +5 -1
- package/dist/commands/durableJobCommands.js +2 -3
- package/dist/commands/globalRoleCommands.js +33 -8
- package/dist/commands/inboxCommands.js +39 -12
- package/dist/commands/operatorCommands.js +2 -5
- package/dist/commands/releaseCommands.js +16 -2
- package/dist/commands/roleConfiguration.js +25 -2
- package/dist/commands/sessionCommands.js +5 -2
- package/dist/commands/taskCommands.js +225 -99
- package/dist/commands/taskContextCommand.js +26 -4
- package/dist/commands/taskFactCommands.js +20 -7
- package/dist/commands/taskIntegrationCommands.js +3 -3
- package/dist/commands/taskRoleRuntimeStatus.js +15 -5
- package/dist/commands/taskUsageCommand.js +2 -6
- package/dist/commands/textInput.js +2 -2
- package/dist/context/contextFamilies.js +10 -0
- package/dist/context/currentSkills.js +6 -4
- package/dist/context/runContextPack.js +44 -5
- package/dist/context/runInputContract.js +1 -1
- package/dist/context/sessionBootstrapManifest.js +7 -5
- package/dist/context/sessionSkillNotice.js +53 -0
- package/dist/context/taskCatalog.js +4 -13
- package/dist/context/taskContext.js +135 -103
- package/dist/context/taskSearch.js +3 -7
- package/dist/controlPlaneCli.js +23 -25
- package/dist/controller/agentRuntimeObserver.js +57 -12
- package/dist/controller/clientRuntime.js +37 -8
- package/dist/controller/controller.js +3 -1
- package/dist/controller/diagnosticJournal.js +10 -2
- package/dist/controller/fileSchedulerStoreAdapter.js +72 -24
- package/dist/controller/jobClient.js +2 -2
- package/dist/controller/jobControl.js +2 -2
- package/dist/controller/jobDefinitionControl.js +5 -1
- package/dist/controller/messageHealth.js +4 -3
- package/dist/controller/providerRetryAdmission.js +15 -1
- package/dist/controller/providerRetryDelivery.js +18 -2
- package/dist/controller/runtime.js +15 -5
- package/dist/controller/runtimeEventInbox.js +107 -13
- package/dist/controller/runtimeEventProcessor.js +3 -3
- package/dist/controller/taskRunRecovery.js +153 -0
- package/dist/core/controllerClient.js +16 -2
- package/dist/core/controllerServer.js +14 -5
- package/dist/core/controllerTelemetry.js +51 -5
- package/dist/errors/cliFailure.js +14 -5
- package/dist/executor/agentAdapter.js +32 -4
- package/dist/executor/agentConfigurationFields.js +2 -0
- package/dist/executor/taskAgentCapabilities.js +2 -2
- package/dist/integration/gitIntegrationService.js +3 -2
- package/dist/integration/integrationSourceApplication.js +12 -1
- package/dist/interaction/notificationPresentation.js +11 -16
- package/dist/interaction/operatorPresentation.js +1 -1
- package/dist/message/messageContinuation.js +3 -1
- package/dist/output/boundedRead.js +36 -7
- package/dist/output/rolePresentation.js +3 -1
- package/dist/runtime/agentHost.js +12 -3
- package/dist/runtime/codexAppServerRuntime.js +110 -24
- package/dist/runtime/codexInteractiveHost.js +46 -0
- package/dist/runtime/providerRetry.js +5 -2
- package/dist/runtime/providerRuntimeIdentity.js +1 -1
- package/dist/runtime/structuredProviderHost.js +32 -34
- package/dist/scheduler/wakeupQueue.js +10 -4
- package/dist/storage/sqliteSchema.js +9 -0
- package/dist/storage/storageVersions.js +1 -1
- package/dist/task/taskAuthority.js +7 -3
- package/dist/tmux/tmuxManager.js +4 -2
- package/dist/web/webSettings.js +2 -0
- package/docs/authorization.md +18 -3
- package/docs/cli-information-contract.md +245 -6
- package/docs/cli-information-contract.zh-CN.md +107 -5
- package/docs/managed-turn-and-session-runtime.md +82 -21
- package/docs/managed-turn-and-session-runtime.zh-CN.md +56 -13
- package/docs/provider-retry.md +11 -0
- package/docs/release-workflow.md +62 -0
- package/docs/release-workflow.zh-CN.md +46 -0
- package/docs/roles-and-configuration.md +28 -0
- package/docs/roles-and-configuration.zh-CN.md +21 -0
- package/docs/storage-baseline.md +4 -1
- package/docs/storage-baseline.zh-CN.md +1 -1
- package/docs/task-delivery.md +7 -0
- package/docs/task-delivery.zh-CN.md +5 -0
- package/docs/task-discovery.md +5 -5
- package/docs/task-discovery.zh-CN.md +4 -4
- package/docs/testing/review-evaluation.md +7 -7
- package/docs/testing/review-evaluation.zh-CN.md +7 -7
- package/docs/testing/verification-levels.md +45 -2
- package/docs/testing/verification-levels.zh-CN.md +21 -2
- package/i18n/README.zh-CN.md +6 -0
- package/package.json +1 -1
- package/skills/yui-leader/SKILL.md +98 -189
- package/skills/yui-leader/VERSION +1 -1
- package/skills/yui-leader/references/artifacts.md +41 -0
- package/skills/yui-leader/references/assignment-execution.md +140 -0
- package/skills/yui-leader/references/completion.md +79 -0
- package/skills/yui-leader/references/delivery-scope.md +26 -0
- package/skills/yui-leader/references/execution.md +16 -487
- package/skills/yui-leader/references/implementation.md +81 -0
- package/skills/yui-leader/references/planning.md +7 -45
- package/skills/yui-leader/references/review.md +90 -0
- package/skills/yui-leader/references/task-progress.md +23 -0
- package/skills/yui-leader/references/work-allocation.md +118 -0
- package/skills/yui-operator/SKILL.md +77 -331
- package/skills/yui-operator/VERSION +1 -1
- package/skills/yui-operator/references/body-transport.md +62 -0
- package/skills/yui-operator/references/configuration.md +47 -0
- package/skills/yui-operator/references/lifecycle.md +41 -0
- package/skills/yui-operator/references/progress.md +39 -0
- package/skills/yui-operator/references/routing.md +57 -0
- package/skills/yui-operator/references/submission.md +56 -0
- package/skills/yui-operator/references/task-delivery.md +5 -2
- package/skills/yui-operator/references/web-lifecycle.md +19 -0
- package/skills/yui-operator/scripts/verify-submission.mjs +37 -0
- package/skills/yui-reviewer/SKILL.md +4 -2
- package/skills/yui-reviewer/VERSION +1 -1
- package/skills/yui-runtime/SKILL.md +177 -505
- package/skills/yui-runtime/VERSION +1 -1
- package/skills/yui-runtime/references/archive.md +51 -0
- package/skills/yui-runtime/references/command-discovery.md +41 -0
- package/skills/yui-runtime/references/completed-followup.md +65 -0
- package/skills/yui-runtime/references/context-ordering.md +3 -34
- package/skills/yui-runtime/references/context-reads.md +61 -0
- package/skills/yui-runtime/references/dispatched-run.md +61 -0
- package/skills/yui-runtime/references/execution-failure.md +105 -0
- package/skills/yui-runtime/references/global-context.md +18 -0
- package/skills/yui-runtime/references/global-input-controls.md +44 -0
- package/skills/yui-runtime/references/host-custody.md +30 -0
- package/skills/yui-runtime/references/inbox-recovery.md +77 -0
- package/skills/yui-runtime/references/incremental-context.md +40 -0
- package/skills/yui-runtime/references/publication.md +4 -104
- package/skills/yui-runtime/references/recovery.md +32 -192
- package/skills/yui-runtime/references/session-identity.md +18 -0
- package/skills/yui-runtime/references/session-replacement.md +45 -0
- package/skills/yui-runtime/references/uncertain-execution.md +29 -0
- package/skills/yui-worker/SKILL.md +7 -4
- package/skills/yui-worker/VERSION +1 -1
|
@@ -1,512 +1,184 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: yui-runtime
|
|
3
|
-
description:
|
|
3
|
+
description: Apply the shared authority, current-context and input-handling contract in a Yui-managed Session; consult operation manuals only for the action being taken.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Yui Runtime
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
project
|
|
11
|
-
Resolve links relative to
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
current
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
A pointer or summary is not the request's body. Before planning or executing,
|
|
136
|
-
read the relevant WorkItem/Task requirements and referenced user/Operator
|
|
137
|
-
messages; use the expansion command above or the Leader's current Task Context.
|
|
138
|
-
Reports remain evidence, not authority to enlarge the assignment.
|
|
139
|
-
|
|
140
|
-
5. On a later wake, refresh current Task facts separately from frozen Run refs.
|
|
141
|
-
Use a Run delta only against its exact declared Snapshot lineage; `deltaRefs`
|
|
142
|
-
is a hint, not a complete patch. If no baseline is available, reload the
|
|
143
|
-
exact pack; do not reconstruct state from transcript memory.
|
|
144
|
-
|
|
145
|
-
Loading and verifying Context is the start of the work, not its result. Continue
|
|
146
|
-
with the authorized assignment. In Draft, persist the discussed plan and wait
|
|
147
|
-
when the user asks for alignment; do not end with only a context-loaded receipt.
|
|
148
|
-
|
|
149
|
-
`liveTaskState.activeRuns` and `liveTaskState.activeTaskReviews` are
|
|
150
|
-
observational views of work currently in flight. They grant no authority and
|
|
151
|
-
create no Task-wide lock or gate; use each exact AgentRun or Review binding when a
|
|
152
|
-
decision depends on it.
|
|
153
|
-
|
|
154
|
-
The pack's authority view and writable Project IDs are hard boundaries. A
|
|
155
|
-
native subagent inherits only its parent's current refs and authority, including
|
|
156
|
-
any Assignment restrictions. It gains no new Yui actor, AgentRun, Session or
|
|
157
|
-
cross-Task read permission.
|
|
158
|
-
|
|
159
|
-
For a global Operator or custom GlobalRole Session, execute the exact
|
|
160
|
-
`contextProtocol.loadCommand` carried by the current Session Manifest before
|
|
161
|
-
routing or acting. That command is self-contained because a Global Codex Thread
|
|
162
|
-
may move between Yui's remote TUI and Desktop; never reconstruct it from
|
|
163
|
-
`YUI_SESSION_*` process variables.
|
|
164
|
-
|
|
165
|
-
If that read fails because the Controller is unavailable, use only authorized
|
|
166
|
-
offline diagnostics and [Controller recovery](references/recovery.md) to restore
|
|
167
|
-
access, then reload context. Failure does not grant Task execution authority,
|
|
168
|
-
but a successful preliminary RPC is not a prerequisite for that recovery.
|
|
169
|
-
|
|
170
|
-
Global context grants no Task implementation workspace. Read a Task only after
|
|
171
|
-
the Operator has routed to its public/task-authorized context command; never
|
|
172
|
-
invent a Task AgentRun identity for a GlobalRole.
|
|
173
|
-
|
|
174
|
-
A GlobalRole's durable input uses the same three actions as a Task Role,
|
|
175
|
-
addressed by the Role's own name instead of a Task. The local-user Web surface
|
|
176
|
-
exposes this contract. Use `yui role message queue|steer <role> <text>` or
|
|
177
|
-
`yui role interrupt <role>` through the public CLI. Queue/steer require a stable
|
|
178
|
-
`--request-id`; steer/interrupt require the exact `--expected-target`.
|
|
179
|
-
Configuration remains under `config role` and lifecycle under `session`.
|
|
180
|
-
Do not fabricate Task/Run ownership or borrow the browser's user authority to
|
|
181
|
-
bypass a managed Session boundary.
|
|
182
|
-
|
|
183
|
-
Queue and steer
|
|
184
|
-
save an owned Message; bare interrupt records a control request, not a new
|
|
185
|
-
Message. Each uses a stable request id and that Role's own Session; none fabricates a Task or
|
|
186
|
-
runId to reuse Task-scoped delivery. `queue` delivers at the Role's next legal
|
|
187
|
-
opportunity and is idempotent by request id. `steer` and `interrupt` affect only
|
|
188
|
-
the exact current native Turn — a stale `--expected-target`, an incapable plan,
|
|
189
|
-
or an unproven delivery leaves the Message saved and reports the reason, and
|
|
190
|
-
`interrupt` stops only through the Provider's native cancel with an optional
|
|
191
|
-
`--then-message` naming one already-saved GlobalRole Message. When the Role holds
|
|
192
|
-
no live managed Turn, a steer or interrupt is `NO_ACTIVE_TURN` and never falls
|
|
193
|
-
back to another action.
|
|
194
|
-
|
|
195
|
-
New controlled Global Sessions use the existing Host console, not the native
|
|
196
|
-
TUI, with the configured Agent, permissions and workspace unchanged. A live
|
|
197
|
-
unmanaged Session is not silently replaced or adopted; use an explicit Session
|
|
198
|
-
lifecycle action before enabling controlled delivery.
|
|
199
|
-
|
|
200
|
-
Context reads never consume queue entries. Global Context returns a bounded
|
|
201
|
-
`pending` discovery page of current-turn and available input, not Message bodies,
|
|
202
|
-
Profile bodies, historical receipt debt or accumulated retry details. Its
|
|
203
|
-
`historyCount` is a separate absence-of-handling-evidence count, not new work.
|
|
204
|
-
The Manifest retains the exact Role profile.
|
|
205
|
-
Read a referenced
|
|
206
|
-
original with `role message show <role> <message-id> --json`. Follow a pending
|
|
207
|
-
page's `nextCursor` using `role message list <role> --current --cursor <cursor>`
|
|
208
|
-
when it is incomplete; accepted delivery does not erase the Message from the
|
|
209
|
-
separate all-message list. Native/transport acceptance is not implementation, and
|
|
210
|
-
`interrupt-requested` is not a stopped Turn or stopped background resources.
|
|
211
|
-
`role message list <role> --diagnostics` projects repeated classified failures
|
|
212
|
-
from original evidence with first/latest occurrence, count and recovery evidence.
|
|
213
|
-
`--diagnostic <key>` pages the original affected observations. Counts cover
|
|
214
|
-
distinct observations, not repeated polling of one identity. A recovery notice
|
|
215
|
-
is neither an input acknowledgement nor proof that prior effects were undone.
|
|
216
|
-
Saving a Task Message or Brief is not notification delivery to Operator. A
|
|
217
|
-
Task Role uses the existing Task InputRequest path for a genuinely missing
|
|
218
|
-
user decision, not global Role input controls or fabricated progress questions.
|
|
219
|
-
Only an exact terminal and the original Session/writer boundary can release a
|
|
220
|
-
then handoff. An accepted or unconfirmed steer must not be submitted again by
|
|
221
|
-
changing its request id or composing then. A conclusive rejection permits an
|
|
222
|
-
explicit new control attempt; uncertainty does not.
|
|
223
|
-
|
|
224
|
-
## Handle your own inbox in the current turn
|
|
225
|
-
|
|
226
|
-
For an automatic delivery naming an exact Message or wake, use that entry
|
|
227
|
-
directly: read its original, claim it, and record its semantic disposition
|
|
228
|
-
before ending this turn. Do not first enumerate history to rediscover it.
|
|
229
|
-
After loading authorized context, at useful work boundaries and before handing
|
|
230
|
-
off, use `yui inbox list --view current --json` to discover current-turn and
|
|
231
|
-
available input addressed to your current managed identity. This applies to Operator, custom GlobalRole, Leader,
|
|
232
|
-
Worker and Reviewer. Do not poll an empty inbox or create another model turn.
|
|
233
|
-
No target Role, Task or native Session is supplied: Yui resolves your current
|
|
234
|
-
identity. A native child gains no separate actor or inbox.
|
|
235
|
-
|
|
236
|
-
`--view history` discovers old missing receipts explicitly; default `--view all`
|
|
237
|
-
prioritizes current inputs and labels each entry's category. Never treat an
|
|
238
|
-
absent historical ACK as proof that its work was not done. Read history when a
|
|
239
|
-
specific reminder, recovery or user request calls for it, not every turn.
|
|
240
|
-
Current correlation reuses exact delivery/continuation/control identities;
|
|
241
|
-
active claims retain their observed native attempt when available. Missing
|
|
242
|
-
historical correlation is not reconstructed from timestamps or final text.
|
|
243
|
-
|
|
244
|
-
1. Read the selected `yui inbox show <entry> --json`. Reads never consume input.
|
|
245
|
-
Follow `nextCursor` and all `contentPage` pages using the rules below.
|
|
246
|
-
2. Before processing, reserve exact entries with
|
|
247
|
-
`yui inbox claim <entry> [<entry> ...] --request-id <stable-id> --json`.
|
|
248
|
-
At most 16 entries are allowed, with independent per-entry results. Retain
|
|
249
|
-
each successful returned ID and request ID; do not replay successful items
|
|
250
|
-
when another item fails. A changed pending window requires a fresh list.
|
|
251
|
-
3. Read complete originals and referenced results, then handle the request
|
|
252
|
-
within its existing authority. Leader notification-window claims move one exact pending window
|
|
253
|
-
into a durable wake: use the returned `originals` command, follow every
|
|
254
|
-
relevant original Message/Run reference, and use its returned wake ID for
|
|
255
|
-
acknowledgement. Later arrivals remain in the next pending window.
|
|
256
|
-
Assignment inbox reads (including a managed Leader Assignment) expose only
|
|
257
|
-
messages for the current Assignment;
|
|
258
|
-
they supplement the frozen pack without expanding it or changing candidates.
|
|
259
|
-
4. Only after handling, explicitly acknowledge each successful item:
|
|
8
|
+
This entry is the shared core, not a requirement to keep every operation manual
|
|
9
|
+
in context. Role Skills own coordination/delivery judgment; Project Skills,
|
|
10
|
+
Policy and Knowledge own project methods. None grants additional authority.
|
|
11
|
+
Resolve links relative to their containing file.
|
|
12
|
+
|
|
13
|
+
## Keep the current working set
|
|
14
|
+
|
|
15
|
+
The managed Host mechanically checks current Skill VERSION/readability for each
|
|
16
|
+
input. Use its short check result/current pointers; do not duplicate that check.
|
|
17
|
+
Without a Host check, run the Manifest's `contextProtocol.skillCheckCommand`
|
|
18
|
+
(older Manifests: `yui session skills --json`) through the intended CLI/Home.
|
|
19
|
+
Global `loadCommand` includes the check. Recheck after repair/relevant change.
|
|
20
|
+
|
|
21
|
+
A check is metadata, not bodies, remembered instructions, a loading receipt or
|
|
22
|
+
authority. Current stable paths supersede historical audit packages. Reuse
|
|
23
|
+
unchanged full instructions only while actually available in current context.
|
|
24
|
+
|
|
25
|
+
On first entry, new/restored Session or Host attachment, or missing/compacted/
|
|
26
|
+
uncertain context, read the exact Manifest profile and every current Skill entry
|
|
27
|
+
listed for this Session, including this full core, Role and custom Skills.
|
|
28
|
+
For a localized version change, reload that owner's entry/relevant references;
|
|
29
|
+
retain other available full entries.
|
|
30
|
+
Then select references for the **current action**, not all previous topics or
|
|
31
|
+
every action in the Task's stage. After compaction, reconstruct that minimum
|
|
32
|
+
working set from current intent and facts; do not restore an accumulated manual
|
|
33
|
+
history. A genuine Host reconnect may provide an entry pointer, but neither its
|
|
34
|
+
presence nor absence proves provider memory or compaction. Recover missing
|
|
35
|
+
instructions even without a Host notice.
|
|
36
|
+
|
|
37
|
+
Read every selected required file through EOF, including references triggered
|
|
38
|
+
inside it. A link alone is not a mandatory read. Keep output within tool budgets;
|
|
39
|
+
recover truncated ranges before acting. A summary or successful read exit is
|
|
40
|
+
not the full body. A localized gap needs that full file, not unrelated manuals.
|
|
41
|
+
References use their owner's VERSION; check a cross-Skill owner's current stable
|
|
42
|
+
version when absent from the check result. No stored memory/read receipts are needed.
|
|
43
|
+
Missing current entries/VERSIONs are concrete installation errors: report exact
|
|
44
|
+
paths, preserve input/authority, repair legally and recheck. Damaged historical
|
|
45
|
+
packages do not revoke a valid Session and current source cannot prove past loads.
|
|
46
|
+
|
|
47
|
+
Prefer grouping already-known, independent, necessary read-only requests in one
|
|
48
|
+
tool call when their combined output fits its budget. Inspect each result and recover
|
|
49
|
+
missing or truncated bodies. Stop at dependencies on earlier results; do not
|
|
50
|
+
guess targets or mix writes into a read group. Grouping does not bypass required
|
|
51
|
+
instruction loading, authority checks or input-handling order.
|
|
52
|
+
Choose the working set for one action, not one file at a time: combine its known
|
|
53
|
+
applicable manuals before acting, then follow newly discovered prerequisites.
|
|
54
|
+
Use directories, timestamps and excerpts to select sources, never to replace
|
|
55
|
+
required originals or infer authority from recency. Prefer complete relevant
|
|
56
|
+
documents/sections over serial field probes; a citation location is not a read
|
|
57
|
+
plan. After compaction select again from current intent, not the old reading list.
|
|
58
|
+
|
|
59
|
+
## Use the exact authority and originals
|
|
60
|
+
|
|
61
|
+
Manifest/Bootstrap are pointers, not requirements. Tasks, WorkItems, Messages,
|
|
62
|
+
Decisions, results and managed workspaces hold durable intent/progress; native
|
|
63
|
+
transcripts, processes, directories and prior Runs do not supply Task authority.
|
|
64
|
+
Refresh relevant dynamic facts even when reusing instructions:
|
|
65
|
+
|
|
66
|
+
- Direct Leader conversation/notification: use the Manifest `currentCommand`
|
|
67
|
+
or `yui task context <task-id> --json`. No self-wake or old completed Run is
|
|
68
|
+
needed. Pending delivery/missing reports do not revoke the current Leader.
|
|
69
|
+
- Explicit managed Task Run: read [Dispatched context](references/dispatched-run.md)
|
|
70
|
+
and, when expanding its input/refs/pages, [Context reads](references/context-reads.md)
|
|
71
|
+
before planning/acting; load the newest exact Run, verify its frozen identity,
|
|
72
|
+
Snapshot, scope/workspace and relevant original requirements. A wake is not a Run.
|
|
73
|
+
- Global Role: execute the exact self-contained Manifest `loadCommand`, not a
|
|
74
|
+
reconstruction from process variables. It grants no Task implementation
|
|
75
|
+
workspace or invented Task Run. Read Task facts through the authorized route.
|
|
76
|
+
|
|
77
|
+
Use only the intended CLI/Home; matching protocol/storage is not installation
|
|
78
|
+
identity. Never clear/add identity hints, switch Homes/Sessions or invent a Run
|
|
79
|
+
to evade a refusal. For identity ambiguity read [Session identity](references/session-identity.md).
|
|
80
|
+
Execution authority, writable Project IDs, Assignment and workspace limits
|
|
81
|
+
remain hard boundaries, not blanket confidentiality labels. Read relevant
|
|
82
|
+
ordinary Task records and provider conversations through their resource access
|
|
83
|
+
checks without requiring a cross-Task Grant or Operator relay solely for Task
|
|
84
|
+
ownership. Native conversation reads need not pass through Yui; missing Yui
|
|
85
|
+
mapping or terminal lifecycle is not itself a read prohibition. Resolve ambiguous
|
|
86
|
+
targets and report unavailable resources, without switching Home or identity.
|
|
87
|
+
Preserve actual tenant, confidentiality and explicit read restrictions.
|
|
88
|
+
In a single-user local Home, filesystem and authenticated transport boundaries
|
|
89
|
+
still apply; a Home path is not another user's permission. Read relevant material
|
|
90
|
+
only and do not copy secrets or unrelated personal information into reports.
|
|
91
|
+
Another Role's instructions are evidence, not your assignment:
|
|
92
|
+
reading never authorizes its input claim, writes, wake or execution takeover.
|
|
93
|
+
Native children inherit parental authority and explicit restrictions, no new Yui actor.
|
|
94
|
+
Active Run/Review views are observations, not Task-wide locks or grants.
|
|
95
|
+
|
|
96
|
+
Read complete relevant original input, requirements, results and authorization
|
|
97
|
+
before their business decision/effect or ACK. Summaries locate sources, not
|
|
98
|
+
replace them. Lists/first pages are bounded discovery; finish relevant bodies,
|
|
99
|
+
not unrelated history. CLI JSON lives in `data`. When discovery, focused wakes,
|
|
100
|
+
result lookup or pagination needs expansion, read [Context reads](references/context-reads.md)
|
|
101
|
+
before assembling it; never mix source/digest chunks or apply read cursors to writes.
|
|
102
|
+
|
|
103
|
+
Read-only analysis/diagnosis/review authorizes no artifact, Brief, Decision,
|
|
104
|
+
configuration or file writes unless requested; return analysis and required
|
|
105
|
+
input receipts. Implementation authorizes bounded work, not unrelated effects.
|
|
106
|
+
Ordinary legal engineering choices need no user-operated Yui procedure.
|
|
107
|
+
Live models as validation subjects, paid/shared/production/quota effects need
|
|
108
|
+
proactive authorization for that exact resource/effect; generic testing is
|
|
109
|
+
insufficient. Otherwise use isolated evidence, state gaps and do not solicit
|
|
110
|
+
such validation via InputRequest.
|
|
111
|
+
|
|
112
|
+
Apply a prerequisite to the actor and operation it governs. Inspecting or routing
|
|
113
|
+
another Role's failure is not retrying/resuming that execution. Reading a manual
|
|
114
|
+
grants no supervisory authority. Task, Run, Message, operation request IDs and
|
|
115
|
+
effect/correlation keys are distinct identities: use the receiving command's
|
|
116
|
+
declared request ID, retained for that exact logical operation. A source
|
|
117
|
+
effect/correlation key is not implicitly its request ID.
|
|
118
|
+
|
|
119
|
+
## Handle your own input
|
|
120
|
+
|
|
121
|
+
After context load, at useful boundaries and before handoff, use
|
|
122
|
+
`yui inbox list --view current --json`. Handle an exact delivered entry directly,
|
|
123
|
+
not by rediscovering history; do not poll empty inboxes or manufacture turns.
|
|
124
|
+
|
|
125
|
+
1. Identify the exact entry from its complete original. Global Context may supply
|
|
126
|
+
it in `currentOriginals`; otherwise read `yui inbox show <entry> --json`.
|
|
127
|
+
2. Reserve it with `yui inbox claim <entry> --request-id <stable-id> --json`.
|
|
128
|
+
Claim only reserves handling; it is neither processing nor business effect.
|
|
129
|
+
3. Read/reuse complete relevant originals/results, then handle within scope.
|
|
130
|
+
A Leader wake's `inbox show` may include the focused `originalContext`;
|
|
131
|
+
reuse its complete originals, following exact reads only for missing content.
|
|
132
|
+
A pending-window claim still returns its durable wake ID and `originals` read.
|
|
133
|
+
Assignment input does not expand its frozen permissions.
|
|
134
|
+
4. After your disposition, use
|
|
260
135
|
`yui inbox ack <returned-entry> --request-id <stable-id> --reason "<disposition>" --json`.
|
|
261
|
-
Record
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
stopped before acknowledgement, ask the Leader to inspect its exact native
|
|
311
|
-
terminal and use the existing `task message handoff` to the current authorized
|
|
312
|
-
Assignment. The original claim remains; handoff never resubmits it automatically.
|
|
313
|
-
If that Assignment is obsolete, the Leader may inspect the original and prior
|
|
314
|
-
effects, then explicitly use `task message retire <task/message> --reason "<disposition>"`.
|
|
315
|
-
Retirement preserves the original claim and records the management decision;
|
|
316
|
-
it neither fabricates an acknowledgement nor proves native execution stopped.
|
|
317
|
-
An unfinished claim fences its Assignment, not unrelated work of the same Role.
|
|
318
|
-
|
|
319
|
-
In-flight, unknown, not-yet-delivered explicit interrupt-then and
|
|
320
|
-
unsettled steer inputs retain their existing owner/receipt and report a bounded
|
|
321
|
-
reason instead of being taken over. Use existing exact-receipt recovery when
|
|
322
|
-
needed; do not change request IDs, clear identity, or copy input to bypass it.
|
|
323
|
-
A steer with no control receipt was not submitted; it may be explicitly handled
|
|
324
|
-
and acknowledged in its authorized inbox, without converting it into a queue.
|
|
325
|
-
An accepted notification still follows its normal handling path, not another
|
|
326
|
-
native delivery. Accepted Global inputs, delivered Leader windows and current
|
|
327
|
-
Assignment continuations remain in the inbox until explicitly handled. Claim the
|
|
328
|
-
received entry, inspect its originals and existing effects, then ack with a
|
|
329
|
-
concrete disposition (including result or effect receipt references when useful).
|
|
330
|
-
This claim never sends the input again. A current rightful successor may settle
|
|
331
|
-
an accepted Global input or Leader window while retaining the original delivery
|
|
332
|
-
target; it must inspect prior effects first. Pending/unknown acceptance stays
|
|
333
|
-
blocked and cannot use claim as a replay path.
|
|
334
|
-
An explicitly released Leader notification (`notification.resolved` with
|
|
335
|
-
`released-without-replay`) can be claimed for evidence inspection and settlement
|
|
336
|
-
after verified native stop. Its original delivery status stays unknown or
|
|
337
|
-
unaccepted; handling it cannot retarget Session-specific instructions or
|
|
338
|
-
authorize re-executing unknown effects. If a required fact or user decision is
|
|
339
|
-
unavailable, preserve the claim and report that exact boundary.
|
|
340
|
-
|
|
341
|
-
An ack belongs to the exact original and revision: fixed windows pin
|
|
342
|
-
`message.updated` event identities, including same-timestamp edits. A later
|
|
343
|
-
revision still needs its own handling. Before Task completion, settle handled
|
|
344
|
-
user-input windows; native acceptance or a terminal does not settle them.
|
|
345
|
-
Original Messages, wake windows and handling receipts remain readable after
|
|
346
|
-
acknowledgement. Lost context, Session continuation and installation upgrades
|
|
347
|
-
do not reset receipts. If ack fails after an external effect, read back the
|
|
348
|
-
original claim and the external receipt before retrying the same ack; do not
|
|
349
|
-
repeat the effect. This is durable handling evidence, not arbitrary external
|
|
350
|
-
exactly-once execution.
|
|
351
|
-
|
|
352
|
-
## Read bounded information completely when required
|
|
353
|
-
|
|
354
|
-
For apparent conflicts, stage handoffs or incremental maintenance, read
|
|
355
|
-
[current intent and temporal reads](references/context-ordering.md).
|
|
356
|
-
It distinguishes stage progression from independent constraints and explains
|
|
357
|
-
source attribution, Brief guards, fixed delta windows and bounded recovery.
|
|
358
|
-
|
|
359
|
-
Structured CLI results live in the top-level `data`, not a JSON-encoded
|
|
360
|
-
`output` string. Task current Context includes bounded current facts and
|
|
361
|
-
message references; it does not include event or terminal Run history.
|
|
362
|
-
`collections` and `attention` identify incomplete discovery. Use
|
|
363
|
-
`task context list <task> --store <store> [--cursor <cursor>]` to discover one
|
|
364
|
-
family, then `task context inspect <task> --store <store> --ref <refId>
|
|
365
|
-
--digest <digest>` to read its exact current value. Common Task lists use the
|
|
366
|
-
same `items`, `total`, `complete`, and `nextCursor` contract. Do not treat the
|
|
367
|
-
first page or a summary as complete requirements.
|
|
368
|
-
The 32 KiB compact-JSON read budget includes nested data, cursors and structure;
|
|
369
|
-
summaries are at most 512 UTF-8 bytes. Current Task Message discovery excludes
|
|
370
|
-
explicit acknowledgements and retirements, not uncertain delivery. Use
|
|
371
|
-
`--view current` for its continuation and the default all view for history.
|
|
372
|
-
Skill checks remain metadata-only; unusually large checks use the same explicit
|
|
373
|
-
document pagination. A small default window is not a request to fetch all history.
|
|
374
|
-
|
|
375
|
-
Long detail reads return `contentPage` instead of the ordinary value (under
|
|
376
|
-
`data.context` for Run context/expand, `data.contextDelta` for Run Context delta). Repeat the same read with
|
|
377
|
-
`--cursor <contentPage.nextCursor>` until `complete: true`. Concatenate `text`
|
|
378
|
-
in offset order and parse the combined JSON once, retaining the same source
|
|
379
|
-
and digest. A source-change error requires a fresh read, not mixing old and
|
|
380
|
-
new chunks. Never use a read cursor to repeat a mutation.
|
|
381
|
-
|
|
382
|
-
Read all pages of a relevant original requirement, result, or authorization
|
|
383
|
-
before acting on it. For a wake, read its complete focused input/result view and
|
|
384
|
-
relevant original Messages. `task wake show <task> <wake>` preserves the fixed
|
|
385
|
-
window and explicit older refs, deduplicates inputs, and provides exact original
|
|
386
|
-
reads. Use `--history` when window history or diagnostics is needed; unrelated
|
|
387
|
-
events and merely started Runs are not required for ordinary result disposition.
|
|
388
|
-
Follow any `contentPage` continuation for either view. The wake contains pointers
|
|
389
|
-
and attributed summaries, not complete reports.
|
|
390
|
-
For unrelated discovery, stop once the necessary evidence is found. Task
|
|
391
|
-
event deltas retain their fixed upper bound and are history, not replacement
|
|
392
|
-
current state. No read acknowledges implementation or consumes a queue.
|
|
393
|
-
|
|
394
|
-
## Discover operations for the current caller
|
|
395
|
-
|
|
396
|
-
Use `yui help` or `yui --json help [command ...]` through the authorized CLI
|
|
397
|
-
entry for the current caller's command view. Help, examples and shell completion
|
|
398
|
-
share the catalog projection; public terminals and unmanaged Agents share one
|
|
399
|
-
public view. This offline view is only guidance, not an authenticated permission
|
|
400
|
-
or a way to switch Roles. An incomplete or stale managed identity must not be
|
|
401
|
-
cleared to obtain public execution authority.
|
|
402
|
-
|
|
403
|
-
For Codex, the native `CODEX_THREAD_ID` takes precedence over the transport's
|
|
404
|
-
`YUI_NATIVE_SESSION_ID`; a newly created thread can legitimately lack the latter.
|
|
405
|
-
Other adapters do not borrow Codex identity for offline discovery. A missing
|
|
406
|
-
transport variable or hidden help entry alone does not prove Session failure.
|
|
407
|
-
Discovery does not establish that a Session is current: actual execution still
|
|
408
|
-
revalidates Session, Task/Assignment, workspace, resource and Grant boundaries.
|
|
409
|
-
|
|
410
|
-
When capability discovery appears in that view, use `capability search` for
|
|
411
|
-
templates and `capability describe <name> --task
|
|
412
|
-
<task-id> --input '<json>'` for supported exact authorization assessments.
|
|
413
|
-
No `access` field means no exact authorization conclusion was made: supply the
|
|
414
|
-
required parameters and follow the domain's existing execution checks. Hidden
|
|
415
|
-
operations are omitted; `requestable` includes the exact missing Grant bounds
|
|
416
|
-
and existing request route; `authorized` remains subject to execution-time
|
|
417
|
-
revalidation. Provider outages do not change this authorization observation.
|
|
418
|
-
|
|
419
|
-
Discovery never sends requests, consumes Grants, starts plugins or approves
|
|
420
|
-
effects. If the Task actually needs a requestable operation, use the existing
|
|
421
|
-
Assignment Message to Leader, Leader InputRequest, or Operator path. Preserve
|
|
422
|
-
the exact action, resource/plugin, digest, environment and phase. A response is
|
|
423
|
-
not a Grant. Existing source-authorized Leader Grant operations and Operator
|
|
424
|
-
Grant authority remain unchanged; never expand an authorization source or
|
|
425
|
-
solicit real-resource validation merely because an operation is requestable.
|
|
426
|
-
|
|
427
|
-
## Preserve intent and authority
|
|
428
|
-
|
|
429
|
-
An analysis, diagnosis, or review request is read-only unless the user also
|
|
430
|
-
requests changes. A request to fix or implement authorizes the bounded work,
|
|
431
|
-
not unrelated configuration, new external effects, or broader cleanup.
|
|
432
|
-
Choose routine legal implementation and recovery actions without asking the
|
|
433
|
-
user to operate Yui mechanically.
|
|
434
|
-
|
|
435
|
-
Tasks, WorkItems, Messages, Decisions, results and managed workspaces hold
|
|
436
|
-
durable intent and progress. Sessions, AgentRuns and runtime observations
|
|
437
|
-
describe execution; their failure is not failed acceptance or permission to
|
|
438
|
-
discard the assignment. Save context that a successor needs in durable records,
|
|
439
|
-
not only in the native conversation.
|
|
440
|
-
|
|
441
|
-
The Leader normally owns Task coordination and acceptance. An authorized
|
|
442
|
-
Operator may perform the same legal Task-management actions; responsibility
|
|
443
|
-
is not an extra permission gate. Worker and Reviewer results remain evidence
|
|
444
|
-
until an authorized acceptance decision.
|
|
445
|
-
|
|
446
|
-
## Separate execution from real-resource validation
|
|
447
|
-
|
|
448
|
-
The current Leader and configured Worker, Reviewer, Operator, custom Role, and
|
|
449
|
-
native child Agents are normal execution resources. They may develop, inspect,
|
|
450
|
-
and review within their existing Task authority without additional user
|
|
451
|
-
authorization merely because the Agent uses a real model.
|
|
452
|
-
|
|
453
|
-
Using a live provider or model as the subject of validation is different.
|
|
454
|
-
Paid APIs, shared infrastructure, production systems, real account quota, and
|
|
455
|
-
other non-disposable external effects require the user to proactively authorize
|
|
456
|
-
that exact resource and effect boundary. A generic request to implement, test,
|
|
457
|
-
validate, run E2E, or complete a Task does not grant that authority.
|
|
458
|
-
|
|
459
|
-
When such validation was not requested, use deterministic or isolated evidence,
|
|
460
|
-
state the material gap, and optionally recommend a separate follow-up. Do not
|
|
461
|
-
create an InputRequest merely to solicit permission for it.
|
|
462
|
-
|
|
463
|
-
## Return evidence and recover within scope
|
|
464
|
-
|
|
465
|
-
When authoring a durable Message or managed final report, put a concise
|
|
466
|
-
`Yui-Summary: <one line>` first when useful for notification readers. Keep the
|
|
467
|
-
summary itself at most 512 UTF-8 bytes, and preserve material failure,
|
|
468
|
-
unverified-result, pending-decision and authority qualifications. Do this as
|
|
469
|
-
part of producing the original, not a separate model call. The optional line
|
|
470
|
-
remains part of the original text; missing or oversized summaries use factual
|
|
471
|
-
templates without blocking delivery. Core may reuse that line as explicitly
|
|
472
|
-
attributed presentation, never parse it into acceptance, review verdict or
|
|
473
|
-
Task state. A returned execution result is not completed requirements; a
|
|
474
|
-
returned review is not approval. Summaries do not replace reading full
|
|
475
|
-
requirements, results or authorizations before decisions.
|
|
476
|
-
|
|
477
|
-
Ordinary Task/Global notifications grant no new Assignment or authority and
|
|
478
|
-
require no separate execution report. Read the referenced originals and advance
|
|
479
|
-
outstanding work within existing authority under the relevant Role Skill.
|
|
480
|
-
Reading context or accepting notification delivery does not implement input.
|
|
481
|
-
Unknown delivery must not be replayed; use the recovery contract below.
|
|
482
|
-
|
|
483
|
-
Provider acceptance, Context load, AgentRun completion, and Task completion are
|
|
484
|
-
separate facts. For an explicitly dispatched managed Task AgentRun, end with one truthful
|
|
485
|
-
final report. Yui automatically correlates that native terminal with the exact
|
|
486
|
-
current AgentRun and persists the report; no completion command is required. The
|
|
487
|
-
report itself does not accept the WorkItem or complete the Task.
|
|
488
|
-
|
|
489
|
-
Ordinary native conversation is not an implicit managed assignment and does
|
|
490
|
-
not require a separate execution report. Result Messages reference the
|
|
491
|
-
execution's original report; read them with `task message show <task/message>`
|
|
492
|
-
instead of asking the producer to copy or resend the report.
|
|
493
|
-
|
|
494
|
-
Session reuse is a preference, not a prerequisite for progress. Before retry,
|
|
495
|
-
replacement, or intervention in uncertain execution, read
|
|
496
|
-
[runtime recovery](references/recovery.md). Preserve pending intent, exact
|
|
497
|
-
runtime identity and workspace progress; never edit Run status or substitute
|
|
498
|
-
a native Session behind Yui's back. A timeout is not proof of quiescence and
|
|
499
|
-
does not authorize replay of unknown input.
|
|
500
|
-
|
|
501
|
-
Qualifying transient Provider failures have bounded Controller-owned recovery.
|
|
502
|
-
Read the current `providerRetry`/`retry` projection before dispatching a manual
|
|
503
|
-
successor. `waiting` and `in-flight` mean infrastructure recovery is already
|
|
504
|
-
owned; do not add a private retry loop or resend the input. Only a proven native
|
|
505
|
-
success resets that chain, and it never accepts a WorkItem or completes a Task.
|
|
506
|
-
After recovery, inspect existing work and external receipts before continuing;
|
|
507
|
-
the system's recovery instruction supplies no new user authority.
|
|
508
|
-
|
|
509
|
-
After an authorized external PR/MR operation, use the shared
|
|
510
|
-
[publication recording contract](references/publication.md). Recording delivery
|
|
511
|
-
facts does not authorize the external operation, imply acceptance, or grant
|
|
512
|
-
permission to archive.
|
|
136
|
+
Record executed, legally routed, necessary question, or inspected supersession/
|
|
137
|
+
no action with exact references. Operator routing may settle before delivery.
|
|
138
|
+
|
|
139
|
+
ACK covers that exact original/revision and your responsibility, not transport
|
|
140
|
+
acceptance, WorkItem acceptance, Task completion or archive. Never ACK merely to
|
|
141
|
+
empty a list. Later arrivals/edits remain separate. Retain successful IDs in
|
|
142
|
+
batches (maximum 16); inspect each outcome and do not replay successes.
|
|
143
|
+
Failed/interrupted claims remain discoverable and do not expire/replay.
|
|
144
|
+
Before retained claims, handoff, reminders, retirement, unknown/control-owned
|
|
145
|
+
delivery or failed ACK, read [Inbox recovery](references/inbox-recovery.md).
|
|
146
|
+
Preserve original targets/claims; Assignment change does not inherit handling.
|
|
147
|
+
Missing historical ACK is missing evidence, not proof that work was undone.
|
|
148
|
+
Settle handled user-input windows before Task completion.
|
|
149
|
+
|
|
150
|
+
Unknown delivery/effects must not be replayed. A timeout proves neither stop
|
|
151
|
+
nor failure. Preserve original request/receipt and inspect prior effects before
|
|
152
|
+
recovery; never change request identity to bypass uncertainty.
|
|
153
|
+
|
|
154
|
+
## Action index
|
|
155
|
+
|
|
156
|
+
Read only the material needed for the action, in full before taking it:
|
|
157
|
+
|
|
158
|
+
- Conflicting intent/stage handoff: [Current intent](references/context-ordering.md).
|
|
159
|
+
Task/Run delta maintenance: [Incremental context](references/incremental-context.md).
|
|
160
|
+
- Global pending-page expansion/diagnostics: [Global context](references/global-context.md).
|
|
161
|
+
Sending/steering/interrupting Global input: [Controls](references/global-input-controls.md).
|
|
162
|
+
A Task Role uses Task InputRequest for genuine user decisions, not Global controls;
|
|
163
|
+
Message/Brief saves are not Operator notifications.
|
|
164
|
+
- Help/capability or hidden-command investigation: [Discovery](references/command-discovery.md);
|
|
165
|
+
requestability is not a Grant.
|
|
166
|
+
- Actual retry, replacement, unavailable Controller or unknown-execution intervention:
|
|
167
|
+
[Recovery](references/recovery.md), then its applicable topic only. Inspect
|
|
168
|
+
Controller-owned retry before manual successors; never create competing retries.
|
|
169
|
+
Ordinary continuation after compaction is instruction recovery, not Session recovery.
|
|
170
|
+
- Authorized same-result completed-Task follow-up: [Reopen boundary](references/completed-followup.md).
|
|
171
|
+
- Authorized external PR/MR facts: [Publication](references/publication.md).
|
|
172
|
+
Authorized archive/retained-resource cleanup: [Archive](references/archive.md).
|
|
173
|
+
|
|
174
|
+
Use runtime `TMPDIR` for temporary material. Cleanup checks exact ownership and
|
|
175
|
+
preserves unknown/dirty data; save durable evidence before workspace release.
|
|
176
|
+
Retained resources do not turn terminal execution into unresolved business.
|
|
177
|
+
|
|
178
|
+
Each explicit managed Task Run returns one truthful final report, automatically
|
|
179
|
+
persisted at its exact native terminal; no completion command is needed.
|
|
180
|
+
Ordinary chat/notifications are not implicit assignments. Native acceptance,
|
|
181
|
+
Run terminal, result acceptance, Task completion, remote delivery and archive
|
|
182
|
+
are separate facts. Durable reports may begin with a qualified `Yui-Summary:`
|
|
183
|
+
line (at most 512 UTF-8 bytes), attributed presentation only, never semantic
|
|
184
|
+
approval or a substitute for originals.
|