@sema-agent/core 5.19.0 → 5.21.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/CHANGELOG.md +102 -4
- package/dist/agents/agent-definition.d.ts +7 -0
- package/dist/agents/agent-transcript-tool.d.ts +30 -0
- package/dist/agents/builtin-agents.d.ts +60 -0
- package/dist/agents/cascade.d.ts +107 -0
- package/dist/agents/cumulative-stats.d.ts +56 -0
- package/dist/agents/observer.d.ts +162 -0
- package/dist/agents/peer-admission.d.ts +95 -0
- package/dist/agents/repair-loop.d.ts +226 -0
- package/dist/agents/retain-ledger.d.ts +141 -0
- package/dist/agents/roster-store.d.ts +105 -0
- package/dist/agents/roster-store.js +3 -0
- package/dist/agents/send-message-tool.d.ts +92 -0
- package/dist/agents/session-util.d.ts +5 -0
- package/dist/agents/subagent-steps.d.ts +66 -0
- package/dist/agents/subagent.d.ts +600 -0
- package/dist/agents/suspend-guard.d.ts +29 -0
- package/dist/agents/teacher.d.ts +75 -0
- package/dist/agents/team.d.ts +120 -1
- package/dist/agents/tool-filter.d.ts +34 -0
- package/dist/agents/verify.d.ts +198 -0
- package/dist/bench/metrics.d.ts +455 -0
- package/dist/brain/anthropic.d.ts +30 -0
- package/dist/brain/circuit-breaker.d.ts +33 -0
- package/dist/brain/circuit-breaker.js +14 -3
- package/dist/brain/context-overflow.d.ts +60 -3
- package/dist/brain/degrading.d.ts +67 -0
- package/dist/brain/errors.d.ts +42 -0
- package/dist/brain/failover.d.ts +15 -0
- package/dist/brain/media-degrade.d.ts +39 -0
- package/dist/brain/model-presets.d.ts +31 -0
- package/dist/brain/open-responses.d.ts +19 -0
- package/dist/brain/openai.d.ts +46 -0
- package/dist/brain/reasoning.d.ts +106 -1
- package/dist/brain/repetition.d.ts +83 -0
- package/dist/brain/request-params.d.ts +56 -0
- package/dist/brain/retry.d.ts +46 -0
- package/dist/brain/routing.d.ts +12 -0
- package/dist/brain/status-sink.d.ts +30 -1
- package/dist/brain/stream-engine.d.ts +147 -0
- package/dist/brain/stream-shared.d.ts +34 -0
- package/dist/brain/terminal-cause.d.ts +31 -0
- package/dist/brain/timeout.d.ts +108 -0
- package/dist/brain/timeout.js +11 -0
- package/dist/brain/tool-call-id.d.ts +20 -0
- package/dist/brain/tool-call-repair.d.ts +13 -0
- package/dist/config/catalog.d.ts +47 -0
- package/dist/config/defaults.d.ts +33 -0
- package/dist/core/a2a-task-state.d.ts +53 -0
- package/dist/core/a2a.d.ts +51 -0
- package/dist/core/arg-summary.d.ts +62 -0
- package/dist/core/ask-question.d.ts +272 -2
- package/dist/core/auto-compaction.d.ts +467 -0
- package/dist/core/auto-compaction.js +20 -6
- package/dist/core/auto-mode-prompt-assets.d.ts +8 -0
- package/dist/core/auto-mode-prompt.d.ts +27 -0
- package/dist/core/auto-mode.d.ts +54 -3
- package/dist/core/auto-promote.d.ts +100 -0
- package/dist/core/background-agent-store.d.ts +293 -0
- package/dist/core/background-agent-store.js +5 -0
- package/dist/core/background-shell.d.ts +110 -0
- package/dist/core/cache-break-detector.d.ts +34 -0
- package/dist/core/canonical-json.d.ts +57 -0
- package/dist/core/checkpoint-store.d.ts +1574 -16
- package/dist/core/compliance.d.ts +30 -0
- package/dist/core/consolidate-scope.d.ts +75 -0
- package/dist/core/context-edit.d.ts +99 -0
- package/dist/core/context-guard.d.ts +46 -0
- package/dist/core/exec-gate.d.ts +44 -0
- package/dist/core/exec-output-tail.d.ts +61 -0
- package/dist/core/file-snapshot-store.d.ts +104 -0
- package/dist/core/fs-write-gate-policy.d.ts +36 -0
- package/dist/core/git-worktree-env.d.ts +31 -0
- package/dist/core/governance-codes.d.ts +19 -0
- package/dist/core/hooks.d.ts +609 -1
- package/dist/core/human-input-projection.d.ts +37 -0
- package/dist/core/human-input-projection.js +13 -0
- package/dist/core/image-downsample.d.ts +74 -0
- package/dist/core/locked-config.d.ts +37 -0
- package/dist/core/lsp-diagnostics.d.ts +77 -0
- package/dist/core/lsp-protocol.d.ts +29 -0
- package/dist/core/lsp-session.d.ts +60 -1
- package/dist/core/lsp.d.ts +150 -1
- package/dist/core/mailbox-store.d.ts +57 -0
- package/dist/core/mailbox-store.js +2 -0
- package/dist/core/mcp.d.ts +385 -0
- package/dist/core/mcp.js +58 -11
- package/dist/core/media-byte-cap.d.ts +21 -0
- package/dist/core/memory-admission.d.ts +71 -0
- package/dist/core/memory-engine/content-origin.d.ts +64 -0
- package/dist/core/memory-engine/data-plane.d.ts +43 -0
- package/dist/core/memory-engine/dual-root.d.ts +24 -0
- package/dist/core/memory-engine/engine.d.ts +230 -0
- package/dist/core/memory-engine/engine.js +103 -35
- package/dist/core/memory-engine/file-backend.d.ts +155 -0
- package/dist/core/memory-engine/frontmatter.d.ts +16 -0
- package/dist/core/memory-engine/layout.d.ts +217 -0
- package/dist/core/memory-engine/memory-backend-contract.d.ts +12 -0
- package/dist/core/memory-engine/migrate.d.ts +9 -0
- package/dist/core/memory-engine/scan.d.ts +12 -0
- package/dist/core/memory-engine/scope-contract.d.ts +61 -1
- package/dist/core/memory-engine/sync-client.d.ts +87 -0
- package/dist/core/memory-engine/sync.d.ts +60 -0
- package/dist/core/memory-engine/tools.d.ts +41 -0
- package/dist/core/memory-engine/types.d.ts +188 -0
- package/dist/core/memory-recall.d.ts +141 -0
- package/dist/core/memory-vector.d.ts +20 -0
- package/dist/core/memory.d.ts +458 -0
- package/dist/core/message-utils.d.ts +6 -0
- package/dist/core/oracle-isolation.d.ts +69 -0
- package/dist/core/permission-rule-consent.d.ts +138 -0
- package/dist/core/permission-rule-model.d.ts +122 -0
- package/dist/core/permission-rule-store.d.ts +119 -3
- package/dist/core/permission-rules.d.ts +87 -1
- package/dist/core/present-plan-tool.d.ts +20 -0
- package/dist/core/pricing.d.ts +26 -0
- package/dist/core/property-harness.d.ts +86 -0
- package/dist/core/protocol-naming.d.ts +38 -0
- package/dist/core/protocol-table.d.ts +61 -0
- package/dist/core/push-queue.d.ts +1 -0
- package/dist/core/remote-env.d.ts +383 -1
- package/dist/core/retention-policy.d.ts +40 -0
- package/dist/core/retention-policy.js +21 -0
- package/dist/core/retention.d.ts +51 -0
- package/dist/core/roles.d.ts +59 -0
- package/dist/core/runner/active-skill-scope.d.ts +34 -0
- package/dist/core/runner/assemble-result.d.ts +134 -0
- package/dist/core/runner/compaction-call-options.d.ts +97 -1
- package/dist/core/runner/grounding-signal.d.ts +10 -0
- package/dist/core/runner/image.d.ts +17 -0
- package/dist/core/runner/image.js +29 -15
- package/dist/core/runner/memory-consolidation.d.ts +60 -0
- package/dist/core/runner/prepare-memory.d.ts +59 -0
- package/dist/core/runner/prepare-task.d.ts +1011 -2
- package/dist/core/runner/prepare-task.js +51 -14
- package/dist/core/runner/prompt-suggestions.d.ts +7 -0
- package/dist/core/runner/runtask.d.ts +304 -3
- package/dist/core/runner/runtask.js +17 -2
- package/dist/core/runner/session-file-state-replay.d.ts +49 -0
- package/dist/core/runner/session-rule-policy.d.ts +58 -0
- package/dist/core/runner/strict-output-schema.d.ts +18 -3
- package/dist/core/runner/synthetic-tools.d.ts +113 -0
- package/dist/core/runner/teardown-bounded.d.ts +34 -0
- package/dist/core/runner/tool-disclosure.d.ts +227 -0
- package/dist/core/runner/tool-output-projection.d.ts +6 -0
- package/dist/core/runner/turn-attachments.d.ts +634 -0
- package/dist/core/runner/usage-accounting.d.ts +32 -0
- package/dist/core/runtime.d.ts +9 -0
- package/dist/core/safe-notify.d.ts +64 -0
- package/dist/core/safety-axis-vocab.d.ts +23 -0
- package/dist/core/safety-merge-corpus.d.ts +37 -0
- package/dist/core/scheduler.d.ts +121 -0
- package/dist/core/secret-env.d.ts +32 -0
- package/dist/core/select-model.d.ts +15 -0
- package/dist/core/sensitive-path-policy.d.ts +42 -0
- package/dist/core/session-policy-store.d.ts +94 -0
- package/dist/core/session-reconcile.d.ts +80 -0
- package/dist/core/session-store.d.ts +85 -0
- package/dist/core/session.d.ts +153 -0
- package/dist/core/shared-memory/contract.d.ts +22 -0
- package/dist/core/shared-memory/normalize.d.ts +123 -2
- package/dist/core/shared-memory/tools.d.ts +14 -0
- package/dist/core/shared-memory/types.d.ts +105 -0
- package/dist/core/shutdown-debug.d.ts +6 -0
- package/dist/core/side-query.d.ts +38 -0
- package/dist/core/side-query.js +6 -1
- package/dist/core/skill-tool-specifier.d.ts +72 -0
- package/dist/core/skills-directory.d.ts +100 -1
- package/dist/core/spec-contract.d.ts +89 -0
- package/dist/core/store-contracts/background-agent-store-contract.d.ts +31 -0
- package/dist/core/store-contracts/checkpoint-store-contract.d.ts +26 -0
- package/dist/core/store-contracts/contract-harness.d.ts +20 -0
- package/dist/core/store-contracts/contract-kit-version.d.ts +27 -0
- package/dist/core/store-contracts/file-snapshot-store-contract.d.ts +8 -0
- package/dist/core/store-contracts/mailbox-store-contract.d.ts +42 -0
- package/dist/core/store-contracts/tool-result-store-contract.d.ts +13 -0
- package/dist/core/strategy-store.d.ts +37 -0
- package/dist/core/stub-env.d.ts +7 -0
- package/dist/core/surrogate-safe-slice.d.ts +35 -0
- package/dist/core/task-notification.d.ts +202 -0
- package/dist/core/task-outcome.d.ts +53 -0
- package/dist/core/task-registry-agent.d.ts +337 -1
- package/dist/core/task-registry-agent.js +2 -0
- package/dist/core/task-registry-monitor.d.ts +12 -0
- package/dist/core/task-registry-shared.d.ts +540 -0
- package/dist/core/task-registry.d.ts +343 -0
- package/dist/core/task-registry.js +13 -2
- package/dist/core/task-tool-shape.d.ts +44 -0
- package/dist/core/tighten-task-spec.d.ts +21 -0
- package/dist/core/tool-detach.d.ts +21 -0
- package/dist/core/tool-errors.d.ts +131 -0
- package/dist/core/tool-errors.js +4 -0
- package/dist/core/tool-name-aliases.d.ts +27 -0
- package/dist/core/tool-policy.d.ts +555 -0
- package/dist/core/tool-policy.js +3 -0
- package/dist/core/tool-result-budget.d.ts +32 -0
- package/dist/core/tool-result-store.d.ts +174 -1
- package/dist/core/tools.d.ts +45 -0
- package/dist/core/trace.d.ts +323 -0
- package/dist/core/types.d.ts +3859 -2
- package/dist/core/untrusted-egress.d.ts +8 -0
- package/dist/core/untrusted-text.d.ts +156 -0
- package/dist/core/usage-window-store.d.ts +95 -0
- package/dist/core/version.d.ts +1 -0
- package/dist/core/warm-resume.d.ts +17 -0
- package/dist/core/wiring-manifest.d.ts +169 -0
- package/dist/core/with-retry.d.ts +24 -0
- package/dist/core/workflow-journal-store.d.ts +160 -0
- package/dist/core/workflow-run-store-contract.d.ts +25 -0
- package/dist/core/workflow-run-store.d.ts +119 -0
- package/dist/core/workflow-run-store.js +2 -0
- package/dist/engine/compaction/compaction.d.ts +256 -1
- package/dist/engine/compaction/utils.d.ts +94 -0
- package/dist/engine/execution-env/kill-tree.d.ts +29 -0
- package/dist/engine/execution-env/node-execution-env.d.ts +94 -0
- package/dist/engine/harness/agent-harness.d.ts +116 -0
- package/dist/engine/harness/agent-harness.js +3 -14
- package/dist/engine/harness/messages.d.ts +15 -0
- package/dist/engine/harness/types.d.ts +464 -2
- package/dist/engine/llm/diagnostics.d.ts +4 -0
- package/dist/engine/llm/event-stream.d.ts +3 -0
- package/dist/engine/llm/index.d.ts +7 -0
- package/dist/engine/llm/types.d.ts +500 -3
- package/dist/engine/llm/validation.d.ts +3 -0
- package/dist/engine/loop/agent-loop.d.ts +87 -2
- package/dist/engine/loop/runtime-deps.d.ts +7 -0
- package/dist/engine/loop/types.d.ts +424 -0
- package/dist/engine/lsp/frame-decoder.d.ts +13 -0
- package/dist/engine/lsp/node-lsp-manager.d.ts +107 -0
- package/dist/engine/lsp/stdio-lsp-transport.d.ts +7 -0
- package/dist/engine/session/import-validate.d.ts +27 -0
- package/dist/engine/session/log-digest.d.ts +93 -0
- package/dist/engine/session/memory-repo.d.ts +6 -0
- package/dist/engine/session/memory-storage.d.ts +2 -0
- package/dist/engine/session/session.d.ts +75 -0
- package/dist/engine/session/storage-base.d.ts +8 -0
- package/dist/fixtures/index.d.ts +36 -0
- package/dist/index.d.ts +17 -2
- package/dist/index.js +1 -2
- package/dist/internal/harness-types.d.ts +6 -0
- package/dist/internal/harness.d.ts +11 -0
- package/dist/internal/llm.d.ts +6 -0
- package/dist/orchestration/builtin-workflows.d.ts +53 -0
- package/dist/orchestration/dev-vm-script-runner.d.ts +19 -0
- package/dist/orchestration/goal.d.ts +57 -0
- package/dist/orchestration/goal.js +3 -0
- package/dist/orchestration/run-spec.d.ts +42 -0
- package/dist/orchestration/run-spec.js +4 -0
- package/dist/orchestration/run-workflow-tool.d.ts +169 -0
- package/dist/orchestration/workflow-governance.d.ts +61 -0
- package/dist/orchestration/workflow-meta.d.ts +28 -0
- package/dist/orchestration/workflow-observe.d.ts +60 -0
- package/dist/orchestration/workflow-primitives.d.ts +23 -1
- package/dist/orchestration/workflow-sandbox-conformance.d.ts +38 -0
- package/dist/orchestration/workflow-script-runner.d.ts +88 -0
- package/dist/orchestration/workflow-script-store.d.ts +98 -0
- package/dist/orchestration/workflow-size-guideline.d.ts +67 -0
- package/dist/orchestration/workflow-types.d.ts +169 -2
- package/dist/orchestration/workflow.d.ts +358 -0
- package/dist/orchestration/workflow.js +13 -2
- package/dist/prompt-assembly/artifact-store.d.ts +33 -0
- package/dist/prompt-assembly/artifact.d.ts +25 -0
- package/dist/prompt-assembly/assemble.d.ts +20 -0
- package/dist/prompt-assembly/composer.d.ts +29 -0
- package/dist/prompt-assembly/epoch.d.ts +55 -1
- package/dist/prompt-assembly/event-registry.d.ts +35 -0
- package/dist/prompt-assembly/explain.d.ts +12 -0
- package/dist/prompt-assembly/tool-catalog.d.ts +38 -0
- package/dist/prompt-assembly/turn-snapshot.d.ts +40 -0
- package/dist/prompt-assembly/types.d.ts +115 -0
- package/dist/prompts/coordinator.d.ts +27 -0
- package/dist/prompts/default.d.ts +539 -0
- package/dist/prompts/simple-sections.d.ts +45 -0
- package/dist/prompts/supervisor.d.ts +66 -0
- package/dist/scenarios/env.d.ts +28 -0
- package/dist/scenarios/full-body.d.ts +50 -0
- package/dist/scenarios/scenario-registry.d.ts +60 -0
- package/dist/scenarios/teacher-quickstart.d.ts +27 -0
- package/dist/server/http.d.ts +17 -0
- package/dist/stores/cc/lockfile.d.ts +6 -0
- package/dist/stores/cc/mailbox-store.d.ts +8 -0
- package/dist/stores/cc/roster-adapter.d.ts +4 -0
- package/dist/stores/cc/sidecar-transcript.d.ts +66 -0
- package/dist/stores/file/background-agent-store.d.ts +24 -0
- package/dist/stores/file/background-agent-store.js +2 -1
- package/dist/stores/file/checkpoint-store.d.ts +38 -0
- package/dist/stores/file/file-snapshot-store.d.ts +25 -0
- package/dist/stores/file/fs-atomic.d.ts +155 -0
- package/dist/stores/file/index.d.ts +89 -0
- package/dist/stores/file/mailbox-store.d.ts +36 -0
- package/dist/stores/file/mailbox-store.js +2 -0
- package/dist/stores/file/memory-store.d.ts +82 -0
- package/dist/stores/file/permission-rule-store.d.ts +79 -0
- package/dist/stores/file/session-policy-store.d.ts +28 -0
- package/dist/stores/file/session-store.d.ts +40 -0
- package/dist/stores/file/shared-ledger.d.ts +83 -0
- package/dist/stores/file/tool-result-store.d.ts +11 -0
- package/dist/stores/file/usage-window-store.d.ts +18 -0
- package/dist/stores/file/workflow-journal-store.d.ts +100 -0
- package/dist/stores/file/workflow-run-store.d.ts +11 -0
- package/dist/stores/file/workflow-run-store.js +2 -0
- package/dist/tools/fs/bash-readonly-classifier.d.ts +282 -0
- package/dist/tools/fs/encoding.d.ts +60 -0
- package/dist/tools/fs/fs-bash.d.ts +133 -0
- package/dist/tools/fs/fs-pdf.d.ts +28 -0
- package/dist/tools/fs/fs-search-tools.d.ts +5 -0
- package/dist/tools/fs/fs-shared.d.ts +360 -0
- package/dist/tools/fs/fs-write.d.ts +16 -0
- package/dist/tools/fs/gh-rate-limit.d.ts +22 -0
- package/dist/tools/fs/index.d.ts +79 -0
- package/dist/tools/fs/notebook.d.ts +56 -0
- package/dist/tools/fs/pdf.d.ts +70 -0
- package/dist/tools/fs/pdf.js +8 -2
- package/dist/tools/fs/repo-map.d.ts +10 -0
- package/dist/tools/fs/safety.d.ts +376 -0
- package/dist/tools/fs/search.d.ts +131 -0
- package/dist/tools/loop-tick.d.ts +24 -0
- package/dist/tools/monitor.d.ts +55 -0
- package/dist/tools/scheduler-tools.d.ts +51 -0
- package/dist/tools/sql-adapters.d.ts +18 -0
- package/dist/tools/sql.d.ts +25 -0
- package/dist/tools/task-list.d.ts +77 -0
- package/dist/tools/todo.d.ts +8 -0
- package/dist/tools/web.d.ts +184 -0
- package/dist/tools/web.js +32 -5
- package/dist/tools/worktree.d.ts +81 -0
- package/package.json +2 -2
- package/dist/tools/gitea-issue.d.ts +0 -13
- package/dist/tools/gitea-issue.js +0 -75
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import type { Tool, ToolCall } from "./types.js";
|
|
2
|
+
/** Finds the target tool and validates/coerces a model-emitted tool call. */
|
|
2
3
|
export declare function validateToolCall(tools: Tool[], toolCall: ToolCall): unknown;
|
|
4
|
+
/** VENDORED EDIT (design/115 P0): resolve canonical tool names first, then legacy aliases. */
|
|
3
5
|
export declare function findToolByName<T extends Tool>(tools: readonly T[] | undefined, name: string): T | undefined;
|
|
6
|
+
/** Validates tool arguments against TypeBox or plain JSON-schema parameters. */
|
|
4
7
|
export declare function validateToolArguments(tool: Tool, toolCall: ToolCall): unknown;
|
|
@@ -1,8 +1,73 @@
|
|
|
1
1
|
import { type AgentCoreStreamRuntimeDeps } from "./runtime-deps.js";
|
|
2
2
|
import type { AgentContext, AgentEvent, AgentLoopConfig, AgentMessage, StreamFn } from "./types.js";
|
|
3
|
+
/** Callback used by synchronous loop runners to publish agent lifecycle events. */
|
|
3
4
|
export type AgentEventSink = (event: AgentEvent) => Promise<void> | void;
|
|
4
|
-
|
|
5
|
-
export type
|
|
5
|
+
/** Named reasons the loop goes around again. Assertable in tests via the trace sink. */
|
|
6
|
+
export type LoopContinueReason =
|
|
7
|
+
/** A turn finished with executable tool calls (or injected messages) still driving work. */
|
|
8
|
+
"next_turn"
|
|
9
|
+
/** Drain point A (mid-work boundary): steering messages were injected after a turn. */
|
|
10
|
+
| "steer_injected"
|
|
11
|
+
/** Drain point B (agent would otherwise stop): follow-up messages were injected. */
|
|
12
|
+
| "follow_up_injected"
|
|
13
|
+
/** ④b recovery: a prompt-too-long failure was recovered (compacted context) and retried in-turn. */
|
|
14
|
+
| "reactive_compact_retry"
|
|
15
|
+
/** ④b recovery: a `length`-stopped answer triggered a synthetic continue nudge for another turn. */
|
|
16
|
+
| "max_output_tokens_recovery"
|
|
17
|
+
/** S2 recovery (design/119): a `toolUse` stop with ZERO parseable tool calls got a retry nudge. */
|
|
18
|
+
| "malformed_tool_use_retry"
|
|
19
|
+
/** S2 recovery (design/119): a thinking-only turn (no visible text, no tools) got a retry nudge. */
|
|
20
|
+
| "thinking_only_retry"
|
|
21
|
+
/** design/124 tier A: a partially-finalized "stop" (mid-stream cut promoted to content) got a
|
|
22
|
+
* bounded continue nudge so an unattended run doesn't book the cut as an incomplete success. */
|
|
23
|
+
| "midstream_partial_recovery"
|
|
24
|
+
/** T1-4 recovery: a degenerate-repetition cutoff got a bounded "different approach" continue. */
|
|
25
|
+
| "degenerate_output_recovery";
|
|
26
|
+
/** Named reasons the loop exits. Assertable in tests via the trace sink. */
|
|
27
|
+
export type LoopTerminalReason =
|
|
28
|
+
/** Natural end: no tool calls, no steering, no follow-ups. */
|
|
29
|
+
"completed"
|
|
30
|
+
/** A-1 layer ② guard: the abort signal was already set before the next provider request. */
|
|
31
|
+
| "aborted_before_stream"
|
|
32
|
+
/** The assistant message itself ended with stopReason "error" or "aborted". */
|
|
33
|
+
| "assistant_error"
|
|
34
|
+
/** `shouldStopAfterTurn` requested a clean stop at the turn boundary (mod #16 one-shot). */
|
|
35
|
+
| "stop_requested"
|
|
36
|
+
/** RB-206(形态一续批,黑板 [1870] 归因;CC 220 対位 @400176-400230, `Bxs` @397652-397674 buckets it
|
|
37
|
+
* with budget_exhausted/api_error/model_error/turn_setup_failed, explicitly NOT `"completed"`): every
|
|
38
|
+
* tool call in the turn was dropped as malformed AND the bounded `malformed_tool_use_retry` nudge
|
|
39
|
+
* budget is used up — the model believes it acted, nothing ran, and there is no more recovery budget
|
|
40
|
+
* left to try again. Before this reason existed, this case fell through to the generic no-more-work
|
|
41
|
+
* path and was reported as a plain `"completed"`, indistinguishable from a turn that genuinely had
|
|
42
|
+
* nothing left to do.
|
|
43
|
+
*
|
|
44
|
+
* 独立复审(视角一)提醒:`malformedToolUseRetries` 是**整个 run 生命周期内的绝对计数**,恢复成功后不
|
|
45
|
+
* 回退(与 `staticReasoningCutRecoveries` 同一姿势,非本次改动引入)——"exhausted" 说的是"这个 run 从
|
|
46
|
+
* 开始到现在总共用掉的重试次数已达上限",不是"刚刚连续失败了 maxRetries 次"。一次早于此刻很久、且已
|
|
47
|
+
* 成功恢复过的畸形调用,和刚刚才第一次触发畸形调用但恰好撞上早已用尽的预算,在这个 reason 面前不可
|
|
48
|
+
* 区分;调用方若需要"最近是否连续失败"这类更细的语义,需要自行在更高层维护窗口计数,这个 reason 只
|
|
49
|
+
* 承诺"预算耗尽"这一件事。 */
|
|
50
|
+
| "malformed_tool_use_exhausted"
|
|
51
|
+
/** RB-258([1948] RB-206 口径追查的衍生发现;RB-206 的同族对仗):the model kept ending its turn on the
|
|
52
|
+
* provider's output cap (`length`) with no tool calls, and the bounded truncated-output continue
|
|
53
|
+
* budget (`recovery.truncatedOutput.maxContinues`, default 3) is used up — every further nudge would
|
|
54
|
+
* buy another cut-off fragment. Before this reason existed, this case fell through to the generic
|
|
55
|
+
* no-more-work path and was reported as a plain `"completed"`, indistinguishable from an answer that
|
|
56
|
+
* actually finished — the same defect RB-206 fixed in the malformed lane, on the shape production
|
|
57
|
+
* hits MORE often ([1948]: 1/89 real questions reached the precondition).
|
|
58
|
+
*
|
|
59
|
+
* Scope notes (deliberate, mirroring the malformed lane):
|
|
60
|
+
* - Only the CONFIGURED lane reports it. With `recovery.truncatedOutput` absent (the loop default
|
|
61
|
+
* is OFF) there is no budget to exhaust, so a `length` stop still ends as a plain `completed` —
|
|
62
|
+
* the pre-④b behavior, unchanged.
|
|
63
|
+
* - `truncatedOutputContinues` counts CONSECUTIVE nudges and RESETS on any non-`length` turn (unlike
|
|
64
|
+
* `malformedToolUseRetries`, which is absolute per run). So this reason means "the model just ended
|
|
65
|
+
* `length` maxContinues+1 times in a row", not "this run has burnt N recoveries in total".
|
|
66
|
+
* - Like every other terminal, it stops the loop BEFORE drain point B — a follow-up queue / Stop-hook
|
|
67
|
+
* continuation no longer gets consulted on this path. That is the point (a stop-gate rescue would
|
|
68
|
+
* re-enter the same wall with a spent budget), and queued follow-ups stay queued for the next
|
|
69
|
+
* `prompt()` rather than being dropped. */
|
|
70
|
+
| "truncated_output_exhausted";
|
|
6
71
|
export type LoopStep = {
|
|
7
72
|
kind: "continue";
|
|
8
73
|
reason: LoopContinueReason;
|
|
@@ -10,7 +75,27 @@ export type LoopStep = {
|
|
|
10
75
|
kind: "terminal";
|
|
11
76
|
reason: LoopTerminalReason;
|
|
12
77
|
};
|
|
78
|
+
/**
|
|
79
|
+
* Optional per-transition observer, for tests that assert WHICH path ran.
|
|
80
|
+
* Attribution notes: `reactive_compact_retry` is traced IN-TURN at each retry (a turn may trace
|
|
81
|
+
* several); the turn's boundary then traces at most ONE more Continue by priority — a recovery
|
|
82
|
+
* reason (`max_output_tokens_recovery` / `midstream_partial_recovery` / `malformed_tool_use_retry` /
|
|
83
|
+
* `thinking_only_retry`, mutually exclusive by stopReason/flag) wins, then `steer_injected` (masking the same turn's
|
|
84
|
+
* `next_turn`), then `next_turn`. Don't read the trace as a complete enumeration of concurrent causes.
|
|
85
|
+
*/
|
|
13
86
|
export type LoopTraceSink = (step: LoopStep) => void;
|
|
87
|
+
/** Run a prompt-started loop and emit events through a caller-owned sink. */
|
|
14
88
|
export declare function runAgentLoop(prompts: AgentMessage[], context: AgentContext, config: AgentLoopConfig, emit: AgentEventSink, signal?: AbortSignal, streamFn?: StreamFn, runtime?: AgentCoreStreamRuntimeDeps, trace?: LoopTraceSink): Promise<AgentMessage[]>;
|
|
89
|
+
/**
|
|
90
|
+
* How many tool names an unknown-tool miss spells out. A miss is a NAME problem: seeing a couple of dozen
|
|
91
|
+
* real names is what lets a model spot the one it meant, while a full listing grows with the deployment
|
|
92
|
+
* (a large roster turned every typo into a multi-kilobyte result) and buys no extra recovery.
|
|
93
|
+
*/
|
|
15
94
|
export declare const ROSTER_LISTING_MAX = 25;
|
|
95
|
+
/**
|
|
96
|
+
* The disclosure-search tool's wire name, kept as a literal here because this module is in the engine
|
|
97
|
+
* layer and must not import the runner's tool definitions. A unit test asserts it equals the exported
|
|
98
|
+
* `TOOL_SEARCH_NAME`, so the two cannot silently diverge (the `BRAIN_FLAT_CODES` arrangement in
|
|
99
|
+
* core/tool-errors.ts, same reason).
|
|
100
|
+
*/
|
|
16
101
|
export declare const ROSTER_SEARCH_HINT_NAME = "ToolSearch";
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import type { CompleteSimpleFn, StreamFn } from "../llm/index.js";
|
|
2
|
+
/** Runtime functions injected by host packages so agent-core stays provider-agnostic. */
|
|
2
3
|
export interface AgentCoreRuntimeDeps {
|
|
4
|
+
/** Streaming completion implementation used for normal agent turns. */
|
|
3
5
|
streamSimple: StreamFn;
|
|
6
|
+
/** Non-streaming completion implementation used by summarization helpers. */
|
|
4
7
|
completeSimple: CompleteSimpleFn;
|
|
5
8
|
}
|
|
9
|
+
/** Runtime dependency subset required by streaming agent loops. */
|
|
6
10
|
export type AgentCoreStreamRuntimeDeps = Pick<AgentCoreRuntimeDeps, "streamSimple">;
|
|
11
|
+
/** Runtime dependency subset required by summarization helpers. */
|
|
7
12
|
export type AgentCoreCompletionRuntimeDeps = Pick<AgentCoreRuntimeDeps, "completeSimple">;
|
|
13
|
+
/** Resolve the stream function, preferring an explicit override over injected runtime deps. */
|
|
8
14
|
export declare function resolveAgentCoreStreamFn(runtime: AgentCoreStreamRuntimeDeps | undefined, streamFn?: StreamFn): StreamFn;
|
|
15
|
+
/** Resolve the completion function used by non-streaming helper flows. */
|
|
9
16
|
export declare function resolveAgentCoreCompleteFn(runtime: AgentCoreCompletionRuntimeDeps | undefined): CompleteSimpleFn;
|