@abot-ai/runtime 1.1.0 → 1.2.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 +6 -3
- package/dist/src/capabilities/tool-types.d.ts +1 -1
- package/dist/src/model-gateway/providers/ollama/generation-options.d.ts +1 -3
- package/dist/src/model-gateway/providers/ollama/generation-options.js +1 -5
- package/dist/src/model-gateway/providers/ollama/payload.js +0 -8
- package/dist/src/model-gateway/server/request-body.js +1 -0
- package/dist/src/plugin-sdk/index.d.ts +2 -0
- package/dist/src/plugin-sdk/index.js +2 -0
- package/dist/src/plugin-sdk/tool-availability-brief.d.ts +9 -0
- package/dist/src/plugin-sdk/tool-availability-brief.js +48 -0
- package/dist/src/plugin-sdk/tool-availability-overview.d.ts +9 -0
- package/dist/src/plugin-sdk/tool-availability-overview.js +62 -0
- package/dist/src/runtime/adapters/registered-tool-payload-plan.d.ts +0 -9
- package/dist/src/runtime/adapters/registered-tool-payload-plan.js +0 -67
- package/dist/src/runtime/adapters/registered-tool-payload-related-artifacts.d.ts +13 -0
- package/dist/src/runtime/adapters/registered-tool-payload-related-artifacts.js +84 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/catalog.js +4 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.js +3 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.js +11 -1
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.js +9 -1
- package/dist/src/runtime/capabilities/request-bound-tool-registry.js +1 -24
- package/dist/src/runtime/capabilities/tool-availability.d.ts +6 -0
- package/dist/src/runtime/capabilities/tool-availability.js +28 -0
- package/dist/src/runtime/context/capability-brief.d.ts +25 -0
- package/dist/src/runtime/context/capability-brief.js +106 -0
- package/dist/src/runtime/context/request-tool-results-message-binding.d.ts +6 -0
- package/dist/src/runtime/context/request-tool-results-message-binding.js +30 -0
- package/dist/src/runtime/context/request-tool-results-scope.d.ts +3 -0
- package/dist/src/runtime/context/request-tool-results-scope.js +8 -0
- package/dist/src/runtime/context/request-tool-results.d.ts +8 -4
- package/dist/src/runtime/context/request-tool-results.js +49 -38
- package/dist/src/runtime/orchestration/role-calls/candidate-validation.js +8 -1
- package/dist/src/runtime/orchestration/role-calls/child-return.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/child-return.js +25 -5
- package/dist/src/runtime/orchestration/role-calls/command-decoder.js +8 -3
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/child-transitions.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/child-transitions.js +17 -2
- package/dist/src/runtime/orchestration/role-calls/command-dispatch.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/command-dispatch.js +2 -2
- package/dist/src/runtime/orchestration/role-calls/contracts.d.ts +5 -2
- package/dist/src/runtime/orchestration/role-calls/contracts.js +4 -4
- package/dist/src/runtime/orchestration/role-calls/dependency-results.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/dependency-results.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/index.d.ts +5 -1
- package/dist/src/runtime/orchestration/role-calls/index.js +5 -1
- package/dist/src/runtime/orchestration/role-calls/ledger.d.ts +3 -1
- package/dist/src/runtime/orchestration/role-calls/ledger.js +9 -2
- package/dist/src/runtime/orchestration/role-calls/reducer.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/reducer.js +2 -2
- package/dist/src/runtime/orchestration/role-calls/result-receipt.d.ts +49 -0
- package/dist/src/runtime/orchestration/role-calls/result-receipt.js +188 -0
- package/dist/src/runtime/orchestration/role-calls/return-result-receipt.d.ts +19 -0
- package/dist/src/runtime/orchestration/role-calls/return-result-receipt.js +52 -0
- package/dist/src/runtime/orchestration/role-calls/transactions.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-lineage.d.ts +34 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-lineage.js +185 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-receipt.d.ts +36 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-receipt.js +187 -0
- package/dist/src/runtime/orchestration/role-executors/activation/result-normalization.js +6 -3
- package/dist/src/runtime/orchestration/role-executors/child-invocation/transaction.js +1 -0
- package/dist/src/runtime/orchestration/role-executors/contracts.d.ts +2 -1
- package/dist/src/runtime/orchestration/worker-capabilities/assignment-provenance.d.ts +36 -0
- package/dist/src/runtime/orchestration/worker-capabilities/assignment-provenance.js +171 -0
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.d.ts +32 -1
- package/dist/src/runtime/orchestration/worker-capabilities/execution/invocation-preparation.d.ts +2 -1
- package/dist/src/runtime/orchestration/worker-capabilities/execution/invocation-preparation.js +3 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution.js +42 -19
- package/dist/src/runtime/orchestration/worker-capabilities/index.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/index.js +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-assignment-validation.d.ts +3 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-assignment-validation.js +30 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-author.js +8 -19
- package/dist/src/runtime/orchestration/worker-capabilities/payload-contracts.d.ts +5 -1
- package/dist/src/runtime/orchestration/worker-capabilities/payload-instructions.js +1 -1
- package/dist/src/runtime/orchestration/worker-capabilities/payload-source-provenance.d.ts +14 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-source-provenance.js +132 -0
- package/dist/src/runtime/request/capability-brief.d.ts +5 -0
- package/dist/src/runtime/request/capability-brief.js +24 -0
- package/dist/src/runtime/request/execution-scope.d.ts +2 -1
- package/dist/src/runtime/request/role-executor-composition.js +1 -1
- package/dist/src/runtime/request/worker-capability-composition.d.ts +2 -1
- package/dist/src/runtime/request/worker-capability-composition.js +6 -1
- package/dist/src/runtime/request/worker-capability-payload.js +11 -8
- package/dist/src/runtime/steps/execution-agent/prompt.js +4 -3
- package/dist/src/runtime/steps/planner-decision/capability-catalog-context.d.ts +14 -0
- package/dist/src/runtime/steps/planner-decision/capability-catalog-context.js +87 -0
- package/dist/src/runtime/steps/planner-decision/contracts.d.ts +3 -5
- package/dist/src/runtime/steps/planner-decision/contracts.js +3 -3
- package/dist/src/runtime/steps/planner-decision/format.d.ts +3 -2
- package/dist/src/runtime/steps/planner-decision/format.js +73 -76
- package/dist/src/runtime/steps/planner-decision/input.d.ts +4 -3
- package/dist/src/runtime/steps/planner-decision/input.js +10 -7
- package/dist/src/runtime/steps/planner-decision/parser.d.ts +3 -2
- package/dist/src/runtime/steps/planner-decision/parser.js +10 -19
- package/dist/src/runtime/steps/planner-decision/plan-parser.js +18 -12
- package/dist/src/runtime/steps/planner-decision/prompt.js +33 -28
- package/dist/src/runtime/steps/planner-decision/resume.d.ts +1 -1
- package/dist/src/runtime/steps/planner-decision/resume.js +38 -1
- package/dist/src/runtime/steps/planner-decision/run.d.ts +3 -2
- package/dist/src/runtime/steps/reviewer-decision/audit-coverage.d.ts +10 -0
- package/dist/src/runtime/steps/reviewer-decision/audit-coverage.js +186 -0
- package/dist/src/runtime/steps/reviewer-decision/contracts.d.ts +3 -8
- package/dist/src/runtime/steps/reviewer-decision/contracts.js +12 -6
- package/dist/src/runtime/steps/reviewer-decision/delegated-context.d.ts +24 -0
- package/dist/src/runtime/steps/reviewer-decision/delegated-context.js +70 -0
- package/dist/src/runtime/steps/reviewer-decision/diagnostics.js +1 -1
- package/dist/src/runtime/steps/reviewer-decision/format.js +37 -24
- package/dist/src/runtime/steps/reviewer-decision/input.js +1 -1
- package/dist/src/runtime/steps/reviewer-decision/model-context.d.ts +4 -3
- package/dist/src/runtime/steps/reviewer-decision/model-context.js +92 -10
- package/dist/src/runtime/steps/reviewer-decision/parser.js +19 -1
- package/dist/src/runtime/steps/reviewer-decision/projection.js +42 -68
- package/dist/src/runtime/steps/reviewer-decision/prompt.js +10 -5
- package/dist/src/runtime/steps/reviewer-decision/run.js +12 -3
- package/dist/src/runtime/steps/reviewer-decision/verification-coverage.d.ts +14 -0
- package/dist/src/runtime/steps/reviewer-decision/verification-coverage.js +52 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.d.ts +14 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.js +38 -0
- package/dist/src/runtime/steps/supervisor-decision/contracts.d.ts +7 -3
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.js +8 -2
- package/dist/src/runtime/steps/supervisor-decision/format.js +32 -20
- package/dist/src/runtime/steps/supervisor-decision/input.d.ts +4 -1
- package/dist/src/runtime/steps/supervisor-decision/input.js +19 -1
- package/dist/src/runtime/steps/supervisor-decision/parser.js +62 -59
- package/dist/src/runtime/steps/supervisor-decision/prompt.js +6 -7
- package/dist/src/runtime/steps/supervisor-decision/resume.js +47 -1
- package/dist/src/runtime/steps/supervisor-decision/run.js +10 -0
- package/dist/src/runtime/steps/supervisor-decision/working-directory.js +2 -1
- package/dist/src/runtime/steps/worker-decision/contracts.d.ts +2 -1
- package/dist/src/runtime/steps/worker-decision/input/canonical-state.js +8 -1
- package/dist/src/runtime/steps/worker-decision/input/diagnostic-projection.js +2 -2
- package/dist/src/runtime/steps/worker-decision/input/prompt-context.d.ts +1 -0
- package/dist/src/runtime/steps/worker-decision/input/prompt-context.js +4 -1
- package/dist/src/runtime/steps/worker-decision/input/reference-context.js +34 -14
- package/dist/src/runtime/steps/worker-decision/input/types.d.ts +2 -1
- package/dist/src/runtime/steps/worker-decision/input.d.ts +1 -0
- package/dist/src/runtime/steps/worker-decision/input.js +1 -0
- package/dist/src/runtime/steps/worker-decision/payload-dependency-results.d.ts +8 -0
- package/dist/src/runtime/steps/worker-decision/payload-dependency-results.js +19 -0
- package/dist/src/runtime/steps/worker-decision/prompt.js +8 -8
- package/dist/src/runtime/steps/worker-decision/result-author.js +18 -11
- package/dist/src/runtime/steps/worker-decision/run.js +2 -2
- package/dist/src/web-ui/app/ARCHITECTURE.md +19 -6
- package/dist/src/web-ui/app/app.js +6 -7
- package/dist/src/web-ui/app/components/composer-context-window.d.ts +25 -0
- package/dist/src/web-ui/app/components/composer-context-window.js +155 -0
- package/dist/src/web-ui/app/components/composer-plan.d.ts +9 -0
- package/dist/src/web-ui/app/components/composer-plan.js +128 -0
- package/dist/src/web-ui/app/components/conversation-activity.d.ts +5 -6
- package/dist/src/web-ui/app/components/conversation-activity.js +64 -157
- package/dist/src/web-ui/app/components/conversation-role-cards.d.ts +23 -0
- package/dist/src/web-ui/app/components/conversation-role-cards.js +181 -0
- package/dist/src/web-ui/app/components/conversation-sidebar-layout.js +12 -0
- package/dist/src/web-ui/app/components/conversation-sources.d.ts +7 -0
- package/dist/src/web-ui/app/components/conversation-sources.js +182 -0
- package/dist/src/web-ui/app/components/conversation-view.js +34 -6
- package/dist/src/web-ui/app/components/model-selector.js +4 -1
- package/dist/src/web-ui/app/components/operations-section.js +46 -0
- package/dist/src/web-ui/app/components/workspace-shell.js +86 -78
- package/dist/src/web-ui/app/controllers/realtime-event-controller.d.ts +1 -0
- package/dist/src/web-ui/app/controllers/realtime-event-controller.js +55 -90
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.js +2 -0
- package/dist/src/web-ui/app/controllers/session-controller.js +17 -12
- package/dist/src/web-ui/app/index.html +209 -210
- package/dist/src/web-ui/app/lib/composer-plan-model.d.ts +32 -0
- package/dist/src/web-ui/app/lib/composer-plan-model.js +108 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.d.ts +19 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.js +193 -0
- package/dist/src/web-ui/app/lib/event-presentation.js +30 -9
- package/dist/src/web-ui/app/lib/source-url-policy.d.ts +2 -0
- package/dist/src/web-ui/app/lib/source-url-policy.js +31 -0
- package/dist/src/web-ui/app/lib/task-progress.d.ts +53 -0
- package/dist/src/web-ui/app/lib/task-progress.js +233 -0
- package/dist/src/web-ui/app/lib/tool-invocation-count.d.ts +5 -0
- package/dist/src/web-ui/app/lib/tool-invocation-count.js +21 -0
- package/dist/src/web-ui/app/lib/web-source-event.d.ts +8 -0
- package/dist/src/web-ui/app/lib/web-source-event.js +21 -0
- package/dist/src/web-ui/app/lib/web-sources.d.ts +36 -0
- package/dist/src/web-ui/app/lib/web-sources.js +177 -0
- package/dist/src/web-ui/app/styles/00-tokens-base.css +15 -3
- package/dist/src/web-ui/app/styles/10-shell-sessions.css +24 -34
- package/dist/src/web-ui/app/styles/12-conversation-sidebar.css +93 -0
- package/dist/src/web-ui/app/styles/20-chat-composer.css +55 -472
- package/dist/src/web-ui/app/styles/21-composer-controls.css +368 -0
- package/dist/src/web-ui/app/styles/22-composer-context-window.css +90 -0
- package/dist/src/web-ui/app/styles/23-composer-plan.css +171 -0
- package/dist/src/web-ui/app/styles/24-conversation-role-cards.css +205 -0
- package/dist/src/web-ui/app/styles/25-conversation-sources.css +141 -0
- package/dist/src/web-ui/app/styles/30-inspector-config.css +21 -209
- package/dist/src/web-ui/app/styles/35-memory-onboarding.css +8 -8
- package/dist/src/web-ui/app/styles/36-memory-management.css +13 -13
- package/dist/src/web-ui/app/styles/37-config-operations.css +197 -0
- package/dist/src/web-ui/app/styles/40-config-workspace.css +36 -36
- package/dist/src/web-ui/app/styles/90-responsive.css +14 -77
- package/dist/src/web-ui/app/styles/foundation.css +2 -2
- package/dist/src/web-ui/app/styles.css +7 -0
- package/dist/src/web-ui/app/ui-behavior.d.ts +1 -1
- package/dist/src/web-ui/app/ui-behavior.js +1 -1
- package/docs/configuration.md +15 -8
- package/docs/installation.md +7 -4
- package/docs/known-limitations.md +21 -0
- package/docs/plugins.md +28 -13
- package/docs/runtime-invariant-coverage.md +18 -17
- package/docs/runtime-prompt-policy-contracts.md +27 -17
- package/package.json +4 -3
- package/plugins/capability-brief/source/index.ts +5 -48
- package/plugins/capability-brief/src/index.cjs +46 -33
- package/plugins/system-probe/plugin.json +1 -0
- package/plugins/web/README.md +125 -0
- package/plugins/web/plugin.json +1 -1
- package/plugins/web/skills/web_fetch_skill/SKILL.md +2 -2
- package/plugins/web/skills/web_search_skill/SKILL.md +8 -4
- package/plugins/web/source/errors.ts +5 -1
- package/plugins/web/source/fetch-presentation.ts +61 -0
- package/plugins/web/source/fetch-service.ts +2 -31
- package/plugins/web/source/light/config.ts +196 -0
- package/plugins/web/source/light/crawl/origin-gate.ts +134 -0
- package/plugins/web/source/light/crawl/robots-cache.ts +71 -0
- package/plugins/web/source/light/crawl/robots-parser.ts +132 -0
- package/plugins/web/source/light/crawl/robots-policy.ts +154 -0
- package/plugins/web/source/light/crawl/session-budget.ts +141 -0
- package/plugins/web/source/light/crawl/transport.ts +216 -0
- package/plugins/web/source/light/discovery/candidate-values.ts +63 -0
- package/plugins/web/source/light/discovery/feed-document.ts +127 -0
- package/plugins/web/source/light/discovery/html-links.ts +80 -0
- package/plugins/web/source/light/discovery/html-robots-directives.ts +29 -0
- package/plugins/web/source/light/discovery/markup-tree.ts +145 -0
- package/plugins/web/source/light/discovery/origin-dates.ts +71 -0
- package/plugins/web/source/light/discovery/sitemap-document.ts +63 -0
- package/plugins/web/source/light/documents/cache-policy.ts +28 -0
- package/plugins/web/source/light/documents/document-cache.ts +99 -0
- package/plugins/web/source/light/documents/document-charset.ts +89 -0
- package/plugins/web/source/light/documents/document-contract.ts +20 -0
- package/plugins/web/source/light/documents/document-reader.ts +75 -0
- package/plugins/web/source/light/documents/extract-document.ts +124 -0
- package/plugins/web/source/light/documents/http-cache-freshness.ts +68 -0
- package/plugins/web/source/light/documents/response-decoding.ts +120 -0
- package/plugins/web/source/light/ranking/document-ranking.ts +114 -0
- package/plugins/web/source/light/ranking/query-normalization.ts +69 -0
- package/plugins/web/source/light/search-collection.ts +136 -0
- package/plugins/web/source/light/search-frontier.ts +246 -0
- package/plugins/web/source/light/search-metadata.ts +84 -0
- package/plugins/web/source/light/search-service.ts +154 -0
- package/plugins/web/source/light/search-unavailable.ts +33 -0
- package/plugins/web/source/light/sources/catalog.ts +312 -0
- package/plugins/web/source/light/sources/source-definition.ts +9 -0
- package/plugins/web/source/light/sources/source-selection.ts +35 -0
- package/plugins/web/source/plugin.ts +70 -56
- package/plugins/web/source/public-http.ts +10 -1
- package/plugins/web/source/search-presentation.ts +63 -63
- package/plugins/web/source/search-service-selector.ts +31 -0
- package/plugins/web/source/search-service.ts +6 -0
- package/plugins/web/source/search-source-presentation.ts +76 -0
- package/plugins/web/source/search-types.ts +4 -0
- package/plugins/web/source/source-output-receipts.ts +267 -0
- package/plugins/web/source/source-receipt-budget.ts +51 -0
- package/plugins/web/source/source-receipt-contract.ts +18 -0
- package/plugins/web/src/index.cjs +3214 -288
- package/src/runtime/README.md +30 -9
- package/dist/src/model-gateway/structured-output/budget.d.ts +0 -7
- package/dist/src/model-gateway/structured-output/budget.js +0 -20
- package/dist/src/model-gateway/structured-output/schema-character-estimator.d.ts +0 -1
- package/dist/src/model-gateway/structured-output/schema-character-estimator.js +0 -211
- package/dist/src/model-gateway/structured-output-budget.d.ts +0 -1
- package/dist/src/model-gateway/structured-output-budget.js +0 -1
|
@@ -5,24 +5,6 @@
|
|
|
5
5
|
padding-inline: 18px;
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
.header-controls {
|
|
9
|
-
max-width: 64%;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.control-label {
|
|
13
|
-
display: none;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.agent-mode-control {
|
|
17
|
-
width: 116px;
|
|
18
|
-
min-width: 116px;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.model-control {
|
|
22
|
-
width: 170px;
|
|
23
|
-
min-width: 0;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
8
|
.workspace-page-body {
|
|
27
9
|
padding-inline: 28px;
|
|
28
10
|
}
|
|
@@ -38,25 +20,6 @@
|
|
|
38
20
|
padding-block: 12px;
|
|
39
21
|
}
|
|
40
22
|
|
|
41
|
-
.header-controls {
|
|
42
|
-
display: grid;
|
|
43
|
-
grid-template-columns: minmax(112px, 0.8fr) minmax(150px, 1.2fr);
|
|
44
|
-
width: 100%;
|
|
45
|
-
max-width: 520px;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
.agent-mode-control,
|
|
49
|
-
.model-control,
|
|
50
|
-
.agent-mode-button,
|
|
51
|
-
#modelSelect {
|
|
52
|
-
width: 100%;
|
|
53
|
-
min-width: 0;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.chat-header h2 {
|
|
57
|
-
max-width: min(72vw, 620px);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
23
|
.workspace-page-header {
|
|
61
24
|
padding-inline: 28px;
|
|
62
25
|
}
|
|
@@ -99,7 +62,6 @@
|
|
|
99
62
|
}
|
|
100
63
|
|
|
101
64
|
.app-shell,
|
|
102
|
-
.app-shell.operations-workspace,
|
|
103
65
|
.app-shell.config-workspace {
|
|
104
66
|
display: grid;
|
|
105
67
|
grid-template-columns: minmax(0, 1fr);
|
|
@@ -115,7 +77,7 @@
|
|
|
115
77
|
inset: auto;
|
|
116
78
|
z-index: 80;
|
|
117
79
|
display: grid;
|
|
118
|
-
grid-template-columns: repeat(
|
|
80
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
119
81
|
gap: 4px;
|
|
120
82
|
grid-column: 1;
|
|
121
83
|
grid-row: 2;
|
|
@@ -131,6 +93,10 @@
|
|
|
131
93
|
backdrop-filter: blur(20px);
|
|
132
94
|
}
|
|
133
95
|
|
|
96
|
+
.app-shell.config-workspace .workspace-rail {
|
|
97
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
98
|
+
}
|
|
99
|
+
|
|
134
100
|
.rail-spacer,
|
|
135
101
|
.rail-runtime {
|
|
136
102
|
display: none;
|
|
@@ -153,17 +119,13 @@
|
|
|
153
119
|
order: 2;
|
|
154
120
|
}
|
|
155
121
|
|
|
156
|
-
#operationsWorkspaceButton {
|
|
157
|
-
order: 4;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
122
|
#configWorkspaceButton {
|
|
161
|
-
order:
|
|
123
|
+
order: 4;
|
|
162
124
|
}
|
|
163
125
|
|
|
164
126
|
.workspace-rail button.rail-button {
|
|
165
127
|
display: grid;
|
|
166
|
-
grid-template-rows: 22px
|
|
128
|
+
grid-template-rows: 22px minmax(1.125rem, auto);
|
|
167
129
|
gap: 1px;
|
|
168
130
|
place-items: center;
|
|
169
131
|
width: 100%;
|
|
@@ -191,8 +153,8 @@
|
|
|
191
153
|
color: currentColor;
|
|
192
154
|
text-overflow: ellipsis;
|
|
193
155
|
white-space: nowrap;
|
|
194
|
-
font-size:
|
|
195
|
-
line-height: 1;
|
|
156
|
+
font-size: var(--font-size-xs);
|
|
157
|
+
line-height: 1.2;
|
|
196
158
|
opacity: 1;
|
|
197
159
|
pointer-events: none;
|
|
198
160
|
transform: none;
|
|
@@ -259,15 +221,7 @@
|
|
|
259
221
|
}
|
|
260
222
|
|
|
261
223
|
.chat-header h2 {
|
|
262
|
-
|
|
263
|
-
font-size: 15px;
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
.header-controls {
|
|
267
|
-
grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
|
|
268
|
-
gap: 6px;
|
|
269
|
-
width: 100%;
|
|
270
|
-
max-width: none;
|
|
224
|
+
font-size: var(--font-size-2xl);
|
|
271
225
|
}
|
|
272
226
|
|
|
273
227
|
.messages-list {
|
|
@@ -316,16 +270,10 @@
|
|
|
316
270
|
}
|
|
317
271
|
|
|
318
272
|
.composer {
|
|
319
|
-
grid-template-columns: 34px auto minmax(0, 1fr) 36px;
|
|
320
|
-
grid-template-rows: auto auto auto;
|
|
321
273
|
padding: 10px;
|
|
322
274
|
border-radius: 15px;
|
|
323
275
|
}
|
|
324
276
|
|
|
325
|
-
.composer.composer-has-split-action {
|
|
326
|
-
grid-template-columns: 34px auto minmax(0, 1fr) auto;
|
|
327
|
-
}
|
|
328
|
-
|
|
329
277
|
.composer-submit-control.split .send-button {
|
|
330
278
|
width: 32px;
|
|
331
279
|
min-width: 32px;
|
|
@@ -341,17 +289,6 @@
|
|
|
341
289
|
min-height: 36px;
|
|
342
290
|
}
|
|
343
291
|
|
|
344
|
-
.permission-mode-control {
|
|
345
|
-
grid-column: 2;
|
|
346
|
-
grid-row: 3;
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
.permission-mode-button {
|
|
350
|
-
width: auto;
|
|
351
|
-
height: 31px;
|
|
352
|
-
min-height: 31px;
|
|
353
|
-
}
|
|
354
|
-
|
|
355
292
|
.attachment-preview {
|
|
356
293
|
grid-column: 1 / -1;
|
|
357
294
|
grid-row: 2;
|
|
@@ -373,7 +310,7 @@
|
|
|
373
310
|
}
|
|
374
311
|
|
|
375
312
|
.workspace-page-heading h2 {
|
|
376
|
-
font-size:
|
|
313
|
+
font-size: var(--font-size-4xl);
|
|
377
314
|
}
|
|
378
315
|
|
|
379
316
|
.workspace-page-body {
|
|
@@ -546,7 +483,7 @@
|
|
|
546
483
|
}
|
|
547
484
|
|
|
548
485
|
.mode-empty-title {
|
|
549
|
-
font-size:
|
|
486
|
+
font-size: var(--font-size-6xl);
|
|
550
487
|
}
|
|
551
488
|
|
|
552
489
|
.workspace-page-heading .eyebrow {
|
|
@@ -565,7 +502,7 @@
|
|
|
565
502
|
}
|
|
566
503
|
|
|
567
504
|
.config-workspace-heading h2 {
|
|
568
|
-
font-size:
|
|
505
|
+
font-size: var(--font-size-3xl);
|
|
569
506
|
}
|
|
570
507
|
|
|
571
508
|
.config-workspace-heading > p:last-child {
|
|
@@ -585,7 +522,7 @@
|
|
|
585
522
|
.config-category-tab {
|
|
586
523
|
min-height: 38px;
|
|
587
524
|
padding-inline: 6px;
|
|
588
|
-
font-size:
|
|
525
|
+
font-size: var(--font-size-sm);
|
|
589
526
|
}
|
|
590
527
|
|
|
591
528
|
.config-dashboard #configRawEditor,
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
@import url("./styles/foundation.css");
|
|
2
2
|
@import url("./styles/00-tokens-base.css");
|
|
3
3
|
@import url("./styles/10-shell-sessions.css");
|
|
4
|
+
@import url("./styles/12-conversation-sidebar.css");
|
|
4
5
|
@import url("./styles/20-chat-composer.css");
|
|
6
|
+
@import url("./styles/21-composer-controls.css");
|
|
7
|
+
@import url("./styles/22-composer-context-window.css");
|
|
8
|
+
@import url("./styles/23-composer-plan.css");
|
|
9
|
+
@import url("./styles/24-conversation-role-cards.css");
|
|
10
|
+
@import url("./styles/25-conversation-sources.css");
|
|
5
11
|
@import url("./styles/30-inspector-config.css");
|
|
6
12
|
@import url("./styles/40-config-workspace.css");
|
|
7
13
|
@import url("./styles/35-memory-onboarding.css");
|
|
8
14
|
@import url("./styles/36-memory-management.css");
|
|
15
|
+
@import url("./styles/37-config-operations.css");
|
|
9
16
|
@import url("./styles/90-responsive.css");
|
|
@@ -28,7 +28,7 @@ export declare function wrappedIndex(
|
|
|
28
28
|
|
|
29
29
|
export declare function normalizeWorkspaceDestination(
|
|
30
30
|
value: unknown,
|
|
31
|
-
): "chat" | "
|
|
31
|
+
): "chat" | "config";
|
|
32
32
|
|
|
33
33
|
export declare function createInitialWorkspaceShellState(): {
|
|
34
34
|
workspace: "chat";
|
|
@@ -37,7 +37,7 @@ export function normalizeWorkspaceDestination(value) {
|
|
|
37
37
|
const destination = String(value ?? "")
|
|
38
38
|
.trim()
|
|
39
39
|
.toLowerCase();
|
|
40
|
-
return
|
|
40
|
+
return destination === "config" ? "config" : "chat";
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
export function createInitialWorkspaceShellState() {
|
package/docs/configuration.md
CHANGED
|
@@ -31,11 +31,16 @@ AGENT_BRIDGE_TOKEN=
|
|
|
31
31
|
LLM_RUNTIME_CONFIG_FILE=local/runtime.config.json
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
`BRAVE_SEARCH_API_KEY` is optional
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
`BRAVE_SEARCH_API_KEY` is optional. The bundled Web plugin always exposes
|
|
35
|
+
`web_fetch` and `web_search`. A non-empty key selects Brave Search; without one,
|
|
36
|
+
`web_search` uses Light search over a limited catalog of public Hebrew and
|
|
37
|
+
English sources. Light reads those sources directly without an external search
|
|
38
|
+
engine. A failing configured key does not silently switch providers. The key
|
|
39
|
+
never belongs in runtime JSON or a plugin manifest.
|
|
40
|
+
|
|
41
|
+
Light uses the Web plugin's defaults and an in-memory cache; no background
|
|
42
|
+
crawler or separate service is installed. See
|
|
43
|
+
[Known Limitations](known-limitations.md#web-search) for its coverage and limits.
|
|
39
44
|
|
|
40
45
|
Provider configs should reference env var names:
|
|
41
46
|
|
|
@@ -310,10 +315,12 @@ the request-runner context block supplies only admission headroom.
|
|
|
310
315
|
subtracted while projecting messages so the prompt does not consume the whole
|
|
311
316
|
context window; it is never forwarded to a provider as an output limit. Model
|
|
312
317
|
steps may vary their prompt contract, timeout, format, or other generation
|
|
313
|
-
controls, but
|
|
318
|
+
controls, but configuration does not define a shared per-step output-token cap.
|
|
314
319
|
The Ollama adapter still sends a finite provider-native `num_predict`, derived
|
|
315
|
-
mechanically from the final provider input
|
|
316
|
-
|
|
320
|
+
mechanically from the final provider input and the physical context remainder.
|
|
321
|
+
Registered core-decision steps additionally retain their internal output-token
|
|
322
|
+
limit. Output schema size does not impose another generation limit; schema
|
|
323
|
+
projection, validation, input estimation, and compaction remain unchanged.
|
|
317
324
|
|
|
318
325
|
The required context fields remain explicit. Unknown fields, unknown step ids,
|
|
319
326
|
and invalid explicit overrides are rejected during configuration loading;
|
package/docs/installation.md
CHANGED
|
@@ -155,10 +155,13 @@ a bundled plugin: duplicate plugin ids fail closed.
|
|
|
155
155
|
The passive long-term memory service belongs to the Runtime core and does not
|
|
156
156
|
depend on the bundled `memory` plugin.
|
|
157
157
|
|
|
158
|
-
|
|
159
|
-
credential.
|
|
160
|
-
|
|
161
|
-
|
|
158
|
+
The bundled Web plugin supports URL fetching and Light search without a search
|
|
159
|
+
credential. Light searches a limited catalog of public Hebrew and English
|
|
160
|
+
sources directly; it does not query an external search engine or provide
|
|
161
|
+
whole-web coverage. Set `BRAVE_SEARCH_API_KEY` to use Brave Search instead.
|
|
162
|
+
A configured Brave key that fails remains a Brave error. See
|
|
163
|
+
[Known Limitations](known-limitations.md#web-search) for Light's discovery and
|
|
164
|
+
cache boundaries.
|
|
162
165
|
|
|
163
166
|
## Run From Source
|
|
164
167
|
|
|
@@ -61,6 +61,27 @@ plugin entrypoints are not currently supported.
|
|
|
61
61
|
Plugin behavior belongs inside the plugin. Runtime orchestration should only
|
|
62
62
|
see the generic selected catalog and execution results.
|
|
63
63
|
|
|
64
|
+
## Web Search
|
|
65
|
+
|
|
66
|
+
With a configured `BRAVE_SEARCH_API_KEY`, `web_search` uses Brave Search and
|
|
67
|
+
preserves its authentication and rate-limit errors. Without a key, Light search
|
|
68
|
+
discovers and ranks pages within a catalog of public Hebrew and English
|
|
69
|
+
sources. It contacts content sources directly, without another search engine.
|
|
70
|
+
|
|
71
|
+
Light does not maintain a whole-web index. Its source selection, crawl depth,
|
|
72
|
+
candidate count, response sizes, and request deadline are bounded. Results may
|
|
73
|
+
be partial because a source is unavailable, disallows crawling, or exceeds a
|
|
74
|
+
budget. Zero matches mean no matches in the inspected sources, not that the
|
|
75
|
+
information is absent from the web. Source coverage accompanies the results.
|
|
76
|
+
|
|
77
|
+
The document cache exists only in the plugin instance's memory, bounded to
|
|
78
|
+
16 MiB of serialized content and 500 documents. Feed entries expire within
|
|
79
|
+
five minutes and page entries within 30 minutes; origin directives can shorten
|
|
80
|
+
these lifetimes. Restarting the runtime clears the cache. There is no background
|
|
81
|
+
crawl, browser rendering, or persistent search database. Content that requires
|
|
82
|
+
JavaScript may therefore be unavailable. Exact public URL fetching remains a
|
|
83
|
+
separate `web_fetch` capability with its existing public-network restrictions.
|
|
84
|
+
|
|
64
85
|
## Passive Long-Term Memory
|
|
65
86
|
|
|
66
87
|
Passive long-term memory is disabled by default and requires an embedding model
|
package/docs/plugins.md
CHANGED
|
@@ -127,19 +127,34 @@ must be unique bounded lowercase ids matching
|
|
|
127
127
|
built-in conventions, not a closed enum. Manifests that omit both levels remain
|
|
128
128
|
compatible and use the plugin name as their single catalog group.
|
|
129
129
|
|
|
130
|
-
The delegated Supervisor and Planner
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
130
|
+
The delegated Supervisor and Planner select group ids when invoking a Worker
|
|
131
|
+
against a non-empty catalog. The runtime stores that scope on the Worker call
|
|
132
|
+
and exposes the OR-union of matching capabilities. The Worker still selects
|
|
133
|
+
the concrete capability and controls.
|
|
134
|
+
|
|
135
|
+
Supervisor routing receives one optional, passive text brief from the same
|
|
136
|
+
request-filtered registry used by `capability-brief`. It chooses the richest
|
|
137
|
+
complete representation that fits: tool names with operation ids and groups,
|
|
138
|
+
tool names by group, group counts and effects, or no brief. The brief replaces
|
|
139
|
+
the previous aggregate catalog text; group ids remain in the response schema
|
|
140
|
+
in every mode. It includes no tool descriptions, inputs, or operating
|
|
141
|
+
instructions. Its 512-token estimate ceiling is further reduced by existing
|
|
142
|
+
context headroom, including history and instruction reserves. No subset of
|
|
143
|
+
tools is selected to fit, and no model call summarizes the catalog.
|
|
144
|
+
This admission uses the context estimate at projection time. A later provider
|
|
145
|
+
token count, steering update, or structured-output repair can still trigger
|
|
146
|
+
the existing context-compaction path; the brief is not reselected there.
|
|
147
|
+
|
|
148
|
+
The SDK exports `buildToolAvailabilityBrief` for the unchanged on-demand plugin
|
|
149
|
+
output and `buildToolAvailabilityOverview` for informational representations.
|
|
150
|
+
The runtime context helper owns token admission and the passive reference
|
|
151
|
+
message; another step can explicitly attach it using the existing context
|
|
152
|
+
reference API. Supervisor's working-directory and response phases do not
|
|
153
|
+
receive it. Planner retains its existing group-routing projection.
|
|
154
|
+
|
|
155
|
+
Under `execution-agent-v1`, the canonical root receives group descriptions
|
|
156
|
+
generated from member capability ids and summaries, and may mechanically open
|
|
157
|
+
or extend its own RoleCall scope.
|
|
143
158
|
It then selects a concrete capability only from that active scope. Scope
|
|
144
159
|
updates, capability binding, payload authoring, adapter execution, and
|
|
145
160
|
settlement use the same ledger and capability engine as delegated Worker
|
|
@@ -4,23 +4,24 @@ This map records the invariants that protect the single request kernel across
|
|
|
4
4
|
the default `supervisor-worker-v1` policy and the opt-in
|
|
5
5
|
`execution-agent-v1` policy.
|
|
6
6
|
|
|
7
|
-
| Invariant
|
|
8
|
-
|
|
|
9
|
-
| Every request creates one canonical root and one RoleCall ledger; only that root may commit the final response.
|
|
10
|
-
| The handler resolves one compiled execution policy from the selected model profile and supplies its same authority to capability composition and the runner. Omission remains `supervisor-worker-v1`.
|
|
11
|
-
| `supervisor-worker-v1` retains the delegated Supervisor, Planner, Worker, and Reviewer contracts; `execution-agent-v1` changes model-facing contracts and authority without adding another runner, ledger, reducer, capability engine, or finalizer.
|
|
12
|
-
| Role choice is model-owned and limited to the exact subordinate contracts registered by the frozen policy.
|
|
13
|
-
| Every subordinate result returns to its exact caller through an exact-head ledger commit. Planner Graph and Auditor outputs
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
7
|
+
| Invariant | Owner | Primary coverage |
|
|
8
|
+
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
9
|
+
| Every request creates one canonical root and one RoleCall ledger; only that root may commit the final response. | `src/runtime/request/handler.ts`, `src/runtime/request/runner.ts`, `src/runtime/request/root-execution-kernel.ts`, `src/runtime/orchestration/role-calls/` | `root-execution-kernel-policy-mechanics.test.ts`, `role-call-ledger.test.ts`, `request-finalization.test.ts` |
|
|
10
|
+
| The handler resolves one compiled execution policy from the selected model profile and supplies its same authority to capability composition and the runner. Omission remains `supervisor-worker-v1`. | `src/runtime/model/model-selection.ts`, `src/runtime/request/handler.ts`, `src/runtime/request/role-executor-composition.ts` | `model-execution-policy.test.ts`, `request-execution-policy-composition.test.ts` |
|
|
11
|
+
| `supervisor-worker-v1` retains the delegated Supervisor, Planner, Worker, and Reviewer contracts; `execution-agent-v1` changes model-facing contracts and authority without adding another runner, ledger, reducer, capability engine, or finalizer. | `src/runtime/request/root-execution-kernel.ts`, `src/runtime/request/role-executor-composition.ts` | `root-execution-kernel-policy-mechanics.test.ts`, `supervisor-request-runner.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
12
|
+
| Role choice is model-owned and limited to the exact subordinate contracts registered by the frozen policy. | `src/runtime/steps/*`, `src/runtime/orchestration/role-executors/`, `src/runtime/orchestration/role-calls/` | `role-executor-registry.test.ts`, `planner-decision.test.ts`, `execution-agent-advisory-executors.test.ts` |
|
|
13
|
+
| Every subordinate result returns to its exact caller through an exact-head ledger v17 commit. Under `supervisor-worker-v1`, terminal Planner and Worker results receive a runtime-owned, constant-size `work_result_v1` receipt; supplied work receipts are rejected, lineage is derived and fingerprint-verified from that ledger, and `execution-agent-v1` receives none. Planner Graph and Auditor outputs remain passive terminal child results. | `src/runtime/orchestration/role-calls/`, `src/runtime/steps/planner-graph/`, `src/runtime/steps/auditor-decision/` | `role-call-ledger.test.ts`, `role-call-work-result-receipt-reducer.test.ts`, `role-call-planner-work-result-receipt.test.ts`, `execution-agent-advisory-executors.test.ts`, `supervisor-request-runner.test.ts` |
|
|
14
|
+
| Planner's semantic contract requires declaring every currently known execution outcome before the first child dispatch; schema and parser mechanically bind exactly one independently completable production item per Worker dispatch. A directly bound Worker receives that item, explicit dependencies, supervision evidence, and its own capability-result lane without the broader request, Planner objective, or sibling execution summaries. | `src/runtime/steps/planner-decision/`, `src/runtime/steps/worker-decision/`, `src/runtime/context/request-tool-results.ts` | `planner-plan-contract.test.ts`, `planner-single-item-dispatch.test.ts`, `planner-worker-context-isolation.test.ts`, `planner-worker-tool-result-scope.test.ts` |
|
|
15
|
+
| Capability authority is validated against the frozen policy and bound to the exact authorized call and activation: Worker for the default policy, canonical root for the direct policy. Both use the same binding and adapter engine. | `src/runtime/orchestration/role-calls/`, `src/runtime/orchestration/worker-capabilities/`, `src/runtime/request/root-execution-kernel.ts` | `root-execution-kernel-policy-mechanics.test.ts`, `worker-capability-binding.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
16
|
+
| Worker and root payloads use the same `tool_payload.raw` author; principal, controls, runtime-issued direct-Planner-item receipt, and admitted evidence are mechanically bounded before model invocation. Root and non-Planner Worker payloads retain the exact request source; a canonically bound Planner item omits it. Work-result receipts and derived lineage are stripped before Worker raw payload and result authoring while optional semantic checkpoints remain. | `src/runtime/orchestration/worker-capabilities/payload-author.ts`, `src/runtime/request/worker-capability-payload.ts`, `src/runtime/steps/worker-decision/` | `planner-worker-context-isolation.test.ts`, `registered-tool-worker-assignment-provenance.test.ts`, `worker-capability-payload-author.test.ts`, `worker-payload-dependency-projection-pr1.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
17
|
+
| Direct capability continuations use strict provider-native assistant tool calls followed by their exact linked tool results; linkage, order, names, content, and token accounting are validated. | `src/model-gateway/message-contract.ts`, `src/runtime/steps/execution-agent/state-context.ts` | `tool-interaction.test.ts`, `tool-interaction-token-estimator.test.ts`, `execution-agent-context.test.ts` |
|
|
18
|
+
| Exhausted direct controls structured-output validation commits `reconsider_capability_selection` without executing an adapter. Its passive projection records the exact selection fingerprint but makes no semantic judgment, chooses no replacement, and suppresses no later selection. | `src/runtime/orchestration/role-calls/`, `src/runtime/orchestration/role-calls/capability-selection-reconsideration.ts`, `src/runtime/steps/execution-agent/` | `role-call-ledger.test.ts`, `execution-agent-context.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
19
|
+
| Delegated Worker control decisions remain strict JSON while its substantive result uses the existing raw authoring boundary. Only `execution-agent-v1` opts into byte-exact terminal text; default finalization remains normalized. | `src/runtime/steps/worker-decision/`, `src/runtime/steps/execution-agent/`, `src/runtime/lifecycle/request-finalizer.ts` | `worker-decision.test.ts`, `execution-agent-request-runner.test.ts`, `request-finalization.test.ts` |
|
|
20
|
+
| Capability adapters report bounded operation outcomes and never decide semantic completion. | `src/runtime/adapters/registered-tool-worker-capabilities.ts`, `src/capabilities/tool-executor.ts` | `registered-tool-worker-capabilities.test.ts`, `tool-executor.test.ts`, `normal-invocation.test.ts` |
|
|
21
|
+
| Every capability settlement, whether produced by a delegated Worker or the direct root, atomically persists exactly one validated canonical `CapabilityAdapterResult`. Running executions cannot carry a result; invalid, non-JSON-safe, cyclic, or oversized evidence cannot settle and is never silently truncated. | `src/runtime/orchestration/capability-adapters/result.ts`, `src/runtime/orchestration/worker-capabilities/execution.ts`, `src/runtime/orchestration/role-calls/` | `registered-tool-worker-capabilities.test.ts`, `worker-capability-binding.test.ts`, `role-call-ledger.test.ts` |
|
|
22
|
+
| The complete canonical result is projected only to the exact producing call and its later same-call payload author. Direct native tool linkage is not duplicated; cross-call provenance moves only through compact runtime-owned receipts and ledger-derived lineage on explicit dependency or supervision lanes. A Planner-item Worker receives no sibling execution summaries; callers, siblings and unrelated requests receive no implicit evidence. | `src/runtime/orchestration/worker-capabilities/settled-results.ts`, `src/runtime/context/request-tool-results.ts`, `src/runtime/orchestration/role-calls/`, `src/runtime/steps/worker-decision/`, `src/runtime/steps/execution-agent/state-context.ts` | `planner-worker-tool-result-scope.test.ts`, `role-call-dependency-work-receipt-pr1.test.ts`, `role-call-work-receipt-continuation-pr1.test.ts`, `worker-decision.test.ts`, `execution-agent-context.test.ts` |
|
|
23
|
+
| Delegated Planner client events project committed canonical plan state and never write progress. Planner Graph advisories do not create canonical plan items. | `src/runtime/request/role-call-planner-events.ts`, `src/runtime/request/planner-plan-events.ts`, `src/runtime/steps/planner-graph/` | `role-call-planner-events.test.ts`, `execution-agent-advisory-executors.test.ts` |
|
|
24
|
+
| Final response persistence and terminal request completion remain one shared request-finalizer boundary for both policies. | `src/runtime/lifecycle/request-finalizer.ts` | `request-finalization.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
24
25
|
|
|
25
26
|
## Client Compatibility
|
|
26
27
|
|
|
@@ -7,20 +7,20 @@ contracts without selecting a fixed workflow.
|
|
|
7
7
|
|
|
8
8
|
## Structured Model Boundaries
|
|
9
9
|
|
|
10
|
-
| Boundary | Instructions and schema | Executable validation
|
|
11
|
-
| -------------------------- | --------------------------------------------------------------------------------------------------------------------- |
|
|
12
|
-
| Supervisor decision | `src/runtime/steps/supervisor-decision/` | strict parser, default-policy child contracts, exact canonical root
|
|
13
|
-
| Supervisor response | `src/runtime/steps/supervisor-response/` | exact active root and bounded returned-child context; legacy normalized terminal mode
|
|
14
|
-
| Execution Agent decision | `src/runtime/steps/execution-agent/` | strict parser, direct-policy actions and root capability authority, exact canonical state
|
|
15
|
-
| Execution Agent response | `src/runtime/steps/execution-agent/response-*` | raw non-empty bounded text from the exact accepted response state; direct-policy exact terminal mode only
|
|
16
|
-
| Delegated Planner decision | `src/runtime/steps/planner-decision/` | strict parser, exact Planner caller, registered delegated child contracts
|
|
17
|
-
| Planner Graph advisory | `src/runtime/steps/planner-graph/` | bounded acyclic proposal or decline from the exact advisory objective; no execution authority
|
|
18
|
-
| Worker decision | `src/runtime/steps/worker-decision/` | strict parser, exact Worker activation, offered capability catalog
|
|
19
|
-
| Worker result | `src/runtime/steps/worker-decision/result-author.ts` | raw text from the exact projected Worker assignment and evidence
|
|
20
|
-
| Reviewer decision | `src/runtime/steps/reviewer-decision/` | strict parser and bounded supplied-work projection
|
|
21
|
-
| Auditor advisory | `src/runtime/steps/auditor-decision/` | typed criteria, whole canonical evidence entries, and omission-gated pass
|
|
22
|
-
| Capability payload | `src/runtime/orchestration/worker-capabilities/payload-author.ts`, `src/runtime/request/worker-capability-payload.ts` | frozen-policy Worker or root principal, selected operation,
|
|
23
|
-
| Degraded finalization | `src/runtime/steps/degraded-finalization/` | bounded failure rendering only
|
|
10
|
+
| Boundary | Instructions and schema | Executable validation | Primary coverage |
|
|
11
|
+
| -------------------------- | --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
12
|
+
| Supervisor decision | `src/runtime/steps/supervisor-decision/` | strict parser, default-policy child contracts, exact canonical root, and runtime-owned receipt plus verified lineage for returned Planner/Worker results | `supervisor-decision.test.ts`, `role-call-work-receipt-continuation-pr1.test.ts`, `supervisor-request-runner.test.ts` |
|
|
13
|
+
| Supervisor response | `src/runtime/steps/supervisor-response/` | exact active root and bounded returned-child context; legacy normalized terminal mode | `supervisor-response.test.ts`, `supervisor-request-runner.test.ts`, `request-finalization.test.ts` |
|
|
14
|
+
| Execution Agent decision | `src/runtime/steps/execution-agent/` | strict parser, direct-policy actions and root capability authority, exact canonical state | `execution-agent-decision.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
15
|
+
| Execution Agent response | `src/runtime/steps/execution-agent/response-*` | raw non-empty bounded text from the exact accepted response state; direct-policy exact terminal mode only | `execution-agent-request-runner.test.ts`, `request-finalization.test.ts` |
|
|
16
|
+
| Delegated Planner decision | `src/runtime/steps/planner-decision/` | strict parser, exact Planner caller, registered delegated child contracts, complete known plan declaration, one-Worker-item dispatch, and runtime-owned receipt plus verified lineage for the returned Worker | `planner-decision.test.ts`, `planner-plan-contract.test.ts`, `role-call-work-receipt-continuation-pr1.test.ts`, `role-call-planner-events.test.ts` |
|
|
17
|
+
| Planner Graph advisory | `src/runtime/steps/planner-graph/` | bounded acyclic proposal or decline from the exact advisory objective; no execution authority | `execution-agent-advisory-executors.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
18
|
+
| Worker decision | `src/runtime/steps/worker-decision/` | strict parser, exact Worker activation, offered capability catalog, and compact receipts for explicit dependency results; a directly bound Planner item excludes the broader request, Planner objective, and sibling tool-result lane | `worker-decision.test.ts`, `worker-capability-decision.test.ts`, `role-call-dependency-work-receipt-pr1.test.ts`, `planner-worker-context-isolation.test.ts`, `planner-worker-tool-result-scope.test.ts` |
|
|
19
|
+
| Worker result | `src/runtime/steps/worker-decision/result-author.ts` | raw text from the exact projected Worker assignment and evidence; Planner-item results retain the same narrowed boundary | `worker-decision.test.ts`, `planner-worker-context-isolation.test.ts`, `supervisor-request-runner.test.ts` |
|
|
20
|
+
| Reviewer decision | `src/runtime/steps/reviewer-decision/` | strict parser and bounded supplied-work projection | `reviewer-decision.test.ts`, `supervisor-request-runner.test.ts` |
|
|
21
|
+
| Auditor advisory | `src/runtime/steps/auditor-decision/` | typed criteria, whole canonical evidence entries, and omission-gated pass | `execution-agent-advisory-executors.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
22
|
+
| Capability payload | `src/runtime/orchestration/worker-capabilities/payload-author.ts`, `src/runtime/request/worker-capability-payload.ts` | frozen-policy Worker or root principal, selected operation, immutable controls and payload contract; only a runtime-issued direct-Planner-item receipt can omit source; work-result receipts and lineage are removed before raw authoring | `planner-worker-context-isolation.test.ts`, `worker-capability-payload-author.test.ts`, `worker-payload-dependency-projection-pr1.test.ts`, `execution-agent-request-runner.test.ts` |
|
|
23
|
+
| Degraded finalization | `src/runtime/steps/degraded-finalization/` | bounded failure rendering only | `degraded-finalization.test.ts`, `request-finalization.test.ts` |
|
|
24
24
|
|
|
25
25
|
Instructions explain semantic choices. Parsers validate exact output shapes.
|
|
26
26
|
The RoleCall ledger and shared capability binding remain the executable
|
|
@@ -44,14 +44,24 @@ or completion authority.
|
|
|
44
44
|
contract. A configured profile may explicitly select `execution-agent-v1`;
|
|
45
45
|
there is no prompt-based selection or mid-request fallback.
|
|
46
46
|
- An active role model alone chooses its next semantic action.
|
|
47
|
-
- The delegated Planner coordinates a bounded sub-process.
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
- The delegated Planner coordinates a bounded sub-process. Before its first
|
|
48
|
+
child dispatch it declares every currently known execution outcome, then
|
|
49
|
+
binds exactly one independently completable production item whenever it
|
|
50
|
+
dispatches Worker. A later activation may select the next pending production
|
|
51
|
+
item after consuming the bound Worker result. Other registered child-role
|
|
52
|
+
contracts are unchanged. `planner.graph` is a distinct direct-policy advisory that only
|
|
53
|
+
proposes or declines a bounded graph; neither gains root response authority.
|
|
50
54
|
- Worker owns capability selection under `supervisor-worker-v1`; the canonical
|
|
51
55
|
root owns it under `execution-agent-v1`. Both use the same binding, payload
|
|
52
56
|
author, adapter execution, and settlement mechanics.
|
|
53
57
|
- Reviewer returns advisory findings to its exact caller. Runtime code does not
|
|
54
58
|
automatically remediate or finalize from a verdict.
|
|
59
|
+
- Under `supervisor-worker-v1`, the runtime alone issues `work_result_v1` for a
|
|
60
|
+
terminal Planner or Worker result. The exact caller may receive the compact
|
|
61
|
+
receipt and a fingerprint-verified lineage projection derived from the
|
|
62
|
+
canonical ledger. They establish provenance only; the active model still
|
|
63
|
+
owns the semantic next action and must not treat them as proof of correctness.
|
|
64
|
+
Model-supplied receipts are rejected and `execution-agent-v1` is unchanged.
|
|
55
65
|
- Auditor returns a passive verdict over explicitly supplied criteria and whole
|
|
56
66
|
evidence entries. Missing or omitted evidence cannot produce pass.
|
|
57
67
|
- `reconsider_capability_selection` is a canonical mechanical transition after
|
package/package.json
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"@types/ws": "^8.18.1",
|
|
11
11
|
"@vscode/ripgrep": "1.18.0",
|
|
12
12
|
"dotenv": "^17.4.1",
|
|
13
|
+
"htmlparser2": "10.0.0",
|
|
13
14
|
"jszip": "^3.10.1",
|
|
14
15
|
"pdf-parse": "2.4.5",
|
|
15
16
|
"postcss": "^8.5.26",
|
|
@@ -18,9 +19,9 @@
|
|
|
18
19
|
"description": "Open runtime for local AI agents.",
|
|
19
20
|
"devDependencies": {
|
|
20
21
|
"@types/node": "^25.5.2",
|
|
21
|
-
"esbuild": "^0.
|
|
22
|
+
"esbuild": "^0.28.2",
|
|
22
23
|
"prettier": "^3.8.1",
|
|
23
|
-
"tsx": "^4.
|
|
24
|
+
"tsx": "^4.23.13",
|
|
24
25
|
"typescript": "^6.0.2",
|
|
25
26
|
"vitest": "^4.1.11"
|
|
26
27
|
},
|
|
@@ -171,5 +172,5 @@
|
|
|
171
172
|
},
|
|
172
173
|
"type": "module",
|
|
173
174
|
"types": "./dist/src/runtime/index.d.ts",
|
|
174
|
-
"version": "1.
|
|
175
|
+
"version": "1.2.0"
|
|
175
176
|
}
|