@inflexa-ai/harness 0.45.1 → 0.46.2
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/agents/conversation-agent.d.ts +9 -3
- package/dist/agents/conversation-agent.js +34 -33
- package/dist/agents/report-session-agent.d.ts +15 -15
- package/dist/agents/report-session-agent.js +23 -15
- package/dist/agents/sandbox/index.d.ts +1 -1
- package/dist/agents/sandbox/index.js +1 -1
- package/dist/agents/sandbox/shared.d.ts +12 -14
- package/dist/agents/sandbox/shared.js +18 -12
- package/dist/agents/sandbox/types.d.ts +4 -4
- package/dist/agents/sandbox/validate-skills.d.ts +2 -2
- package/dist/agents/sandbox/validate-skills.js +3 -1
- package/dist/agents/sandbox-catalog.d.ts +2 -2
- package/dist/agents/sandbox-catalog.js +3 -3
- package/dist/agents/system-prompt.d.ts +2 -2
- package/dist/app/chat-turn-workflow.d.ts +114 -0
- package/dist/app/chat-turn-workflow.js +306 -0
- package/dist/app/chat-turn.d.ts +85 -57
- package/dist/app/chat-turn.js +123 -100
- package/dist/app/data-profile-orientation.js +10 -8
- package/dist/app/data-profile-view.d.ts +4 -4
- package/dist/app/data-profile-view.js +9 -8
- package/dist/app/in-process-turn.d.ts +42 -0
- package/dist/app/in-process-turn.js +139 -0
- package/dist/app/message-assembly.d.ts +10 -4
- package/dist/app/message-assembly.js +13 -8
- package/dist/app/report-session-runtime.d.ts +4 -4
- package/dist/app/report-session-runtime.js +36 -21
- package/dist/app/spawn-report-session.d.ts +33 -28
- package/dist/app/spawn-report-session.js +25 -40
- package/dist/app/synthesize-run.d.ts +22 -16
- package/dist/app/synthesize-run.js +41 -35
- package/dist/app/work.d.ts +96 -0
- package/dist/app/work.js +147 -0
- package/dist/auth/local-auth-context.d.ts +1 -3
- package/dist/auth/local-auth-context.js +1 -3
- package/dist/auth/local-run-authorizer.d.ts +1 -1
- package/dist/auth/local-run-authorizer.js +5 -3
- package/dist/auth/types.d.ts +26 -26
- package/dist/billing/cached-resolver.d.ts +4 -4
- package/dist/billing/run-charge.d.ts +5 -8
- package/dist/billing/run-charge.js +2 -2
- package/dist/billing/usage-recorder.d.ts +9 -9
- package/dist/citations/aggregate.js +1 -1
- package/dist/citations/clients/arxiv.d.ts +2 -2
- package/dist/citations/clients/arxiv.js +12 -4
- package/dist/citations/clients/common.js +4 -2
- package/dist/citations/clients/crossref.d.ts +2 -2
- package/dist/citations/clients/crossref.js +37 -37
- package/dist/citations/clients/doi-registry.js +15 -16
- package/dist/citations/clients/pubmed.d.ts +2 -2
- package/dist/citations/clients/pubmed.js +20 -13
- package/dist/citations/clients/semantic-scholar.d.ts +2 -2
- package/dist/citations/clients/semantic-scholar.js +9 -9
- package/dist/citations/compare.js +2 -2
- package/dist/citations/match.d.ts +2 -2
- package/dist/citations/match.js +12 -7
- package/dist/citations/normalize.js +35 -26
- package/dist/citations/plan.js +6 -2
- package/dist/citations/resolve.d.ts +6 -6
- package/dist/citations/resolve.js +34 -25
- package/dist/citations/types.d.ts +77 -77
- package/dist/config/environment-stores.d.ts +6 -6
- package/dist/config/resource-limits.js +1 -3
- package/dist/contracts/analogy-report.d.ts +7 -7
- package/dist/contracts/analogy-report.js +2 -2
- package/dist/contracts/chat-events.d.ts +38 -24
- package/dist/contracts/chat-frame.d.ts +15 -5
- package/dist/contracts/chat-frame.js +64 -41
- package/dist/contracts/chat-parts.d.ts +130 -67
- package/dist/contracts/chat-parts.js +1 -0
- package/dist/contracts/content-url.js +16 -2
- package/dist/contracts/data-profile.d.ts +38 -38
- package/dist/contracts/index.d.ts +2 -2
- package/dist/contracts/index.js +1 -1
- package/dist/contracts/message.d.ts +6 -6
- package/dist/contracts/organ-system.d.ts +11 -11
- package/dist/contracts/part-registry.d.ts +5 -4
- package/dist/contracts/part-registry.js +5 -0
- package/dist/contracts/profile-vocabulary.d.ts +11 -10
- package/dist/contracts/profile-vocabulary.js +10 -3
- package/dist/contracts/report-blocks.d.ts +329 -329
- package/dist/contracts/report-reference.d.ts +105 -81
- package/dist/contracts/report-reference.js +30 -13
- package/dist/contracts/schemas/chat-events.d.ts +30 -16
- package/dist/contracts/schemas/chat-events.js +15 -6
- package/dist/contracts/schemas/chat-parts.d.ts +175 -102
- package/dist/contracts/schemas/chat-parts.js +33 -7
- package/dist/contracts/severity.d.ts +1 -1
- package/dist/contracts/structure-source.d.ts +3 -3
- package/dist/contracts/structure-source.js +6 -2
- package/dist/contracts/subagent-activity.d.ts +2 -2
- package/dist/contracts/subagent-activity.js +5 -3
- package/dist/contracts/usage.d.ts +2 -2
- package/dist/data/safety-panel-schema.d.ts +25 -25
- package/dist/data/safety-panel-schema.js +13 -4
- package/dist/execution/artifact-metadata.d.ts +23 -15
- package/dist/execution/artifact-metadata.js +33 -10
- package/dist/execution/artifact-record.d.ts +2 -2
- package/dist/execution/artifact-registration.d.ts +5 -5
- package/dist/execution/artifact-registry.d.ts +8 -8
- package/dist/execution/dbos-run-launcher.d.ts +24 -4
- package/dist/execution/dbos-run-launcher.js +58 -4
- package/dist/execution/dbos-workflow-purger.d.ts +5 -6
- package/dist/execution/dbos-workflow-purger.js +8 -7
- package/dist/execution/input-signature.d.ts +2 -2
- package/dist/execution/post-step-pipeline.d.ts +9 -9
- package/dist/execution/post-step-pipeline.js +1 -1
- package/dist/execution/post-step.js +2 -2
- package/dist/execution/reconcile-manifest.d.ts +4 -4
- package/dist/execution/reconcile-manifest.js +3 -2
- package/dist/execution/run-authorizer.d.ts +46 -37
- package/dist/execution/run-authorizer.js +8 -8
- package/dist/execution/run-canceler.d.ts +7 -7
- package/dist/execution/run-canceler.js +14 -7
- package/dist/execution/run-end-record.d.ts +2 -3
- package/dist/execution/run-event-parts.d.ts +0 -8
- package/dist/execution/run-event-parts.js +29 -24
- package/dist/execution/run-event-stream.d.ts +8 -8
- package/dist/execution/run-event-stream.js +3 -4
- package/dist/execution/run-launcher.d.ts +4 -4
- package/dist/execution/run-synthesis.d.ts +49 -48
- package/dist/execution/run-synthesis.js +96 -255
- package/dist/execution/staged-input.d.ts +2 -2
- package/dist/execution/step-summary.d.ts +6 -6
- package/dist/execution/step-summary.js +4 -8
- package/dist/execution/topo-sort.js +4 -3
- package/dist/execution/workflow-purger.d.ts +2 -2
- package/dist/index.d.ts +17 -20
- package/dist/index.js +25 -36
- package/dist/input-sanitization.js +9 -2
- package/dist/input-scan/clustering.d.ts +6 -6
- package/dist/input-scan/clustering.js +11 -5
- package/dist/input-scan/companions.js +3 -2
- package/dist/input-scan/detect-sets.d.ts +2 -2
- package/dist/input-scan/detect-sets.js +25 -21
- package/dist/input-scan/enrich.d.ts +6 -6
- package/dist/input-scan/enrich.js +29 -12
- package/dist/input-scan/formats.d.ts +2 -2
- package/dist/input-scan/formats.js +8 -2
- package/dist/input-scan/markers.d.ts +2 -2
- package/dist/input-scan/markers.js +14 -5
- package/dist/input-scan/menu.d.ts +10 -10
- package/dist/input-scan/menu.js +0 -0
- package/dist/input-scan/quarantine.d.ts +2 -2
- package/dist/input-scan/quarantine.js +23 -18
- package/dist/input-scan/readout-budget.d.ts +2 -2
- package/dist/input-scan/readout-budget.js +1 -1
- package/dist/input-scan/readout.d.ts +2 -2
- package/dist/input-scan/readout.js +47 -34
- package/dist/input-scan/scan.d.ts +2 -2
- package/dist/input-scan/scan.js +7 -5
- package/dist/input-scan/set-types.d.ts +28 -28
- package/dist/input-scan/shapes.d.ts +4 -4
- package/dist/input-scan/shapes.js +0 -0
- package/dist/input-scan/templates.d.ts +10 -10
- package/dist/input-scan/templates.js +30 -22
- package/dist/input-scan/tokens.d.ts +6 -4
- package/dist/input-scan/tokens.js +100 -38
- package/dist/input-scan/types.d.ts +22 -22
- package/dist/lib/async-utils.d.ts +3 -7
- package/dist/lib/async-utils.js +5 -9
- package/dist/lib/cache.js +1 -1
- package/dist/lib/chrome.d.ts +46 -6
- package/dist/lib/console-logger.js +2 -2
- package/dist/lib/db-result.d.ts +22 -6
- package/dist/lib/db-result.js +9 -13
- package/dist/lib/eyes.d.ts +4 -4
- package/dist/lib/eyes.js +1 -1
- package/dist/lib/fs-helpers.js +18 -6
- package/dist/lib/fs-result.d.ts +1 -0
- package/dist/lib/fs-result.js +5 -6
- package/dist/lib/hooks.d.ts +32 -7
- package/dist/lib/hooks.js +22 -3
- package/dist/lib/host-concurrency.js +3 -2
- package/dist/lib/logger.d.ts +2 -2
- package/dist/lib/logger.js +2 -1
- package/dist/lib/metrics.d.ts +1 -1
- package/dist/lib/null-proto.d.ts +6 -0
- package/dist/lib/null-proto.js +17 -0
- package/dist/lib/otel-spans.d.ts +1 -1
- package/dist/lib/otel-spans.js +9 -5
- package/dist/lib/otel.d.ts +4 -2
- package/dist/lib/otel.js +10 -2
- package/dist/lib/page-capture.d.ts +8 -8
- package/dist/lib/page-capture.js +9 -4
- package/dist/lib/parse-json.d.ts +5 -0
- package/dist/lib/parse-json.js +12 -0
- package/dist/lib/present.d.ts +12 -0
- package/dist/lib/present.js +39 -0
- package/dist/lib/rate-limit.d.ts +4 -4
- package/dist/lib/rate-limit.js +12 -13
- package/dist/lib/regulatory-corpus/fetch-fda-guidance.d.ts +4 -4
- package/dist/lib/regulatory-corpus/fetch-fda-guidance.js +4 -10
- package/dist/lib/regulatory-corpus/fetch-ich.d.ts +4 -4
- package/dist/lib/regulatory-corpus/fetch-ich.js +18 -14
- package/dist/lib/regulatory-corpus/normalize-whitespace.d.ts +6 -0
- package/dist/lib/regulatory-corpus/normalize-whitespace.js +41 -0
- package/dist/lib/regulatory-corpus.d.ts +10 -10
- package/dist/lib/regulatory-corpus.js +3 -1
- package/dist/lib/result.d.ts +10 -11
- package/dist/lib/result.js +15 -13
- package/dist/lib/storage.d.ts +2 -2
- package/dist/lib/test/async-iterable.d.ts +9 -0
- package/dist/lib/test/async-iterable.js +28 -0
- package/dist/lib/test/request-url.d.ts +5 -0
- package/dist/lib/test/request-url.js +7 -0
- package/dist/lib/test/result-assert.d.ts +12 -0
- package/dist/lib/test/result-assert.js +17 -0
- package/dist/lib/test/text-shapes.d.ts +24 -0
- package/dist/lib/test/text-shapes.js +63 -0
- package/dist/lib/text.d.ts +22 -0
- package/dist/lib/text.js +68 -0
- package/dist/lib/thrown.d.ts +18 -0
- package/dist/lib/thrown.js +30 -0
- package/dist/lib/unknown-array.d.ts +6 -0
- package/dist/lib/unknown-array.js +8 -0
- package/dist/lib/unknown-containers.d.ts +14 -0
- package/dist/lib/unknown-containers.js +17 -0
- package/dist/lib/unknown-text.d.ts +8 -0
- package/dist/lib/unknown-text.js +28 -0
- package/dist/lib/zod-issue-shape.d.ts +1 -1
- package/dist/lib/zod-issue-shape.js +31 -31
- package/dist/lib/zod-issues.d.ts +3 -3
- package/dist/lib/zod-issues.js +30 -17
- package/dist/literature/sources/arxiv.d.ts +6 -6
- package/dist/literature/sources/arxiv.js +92 -35
- package/dist/literature/sources/http.d.ts +2 -2
- package/dist/literature/sources/http.js +16 -15
- package/dist/literature/sources/pubmed.d.ts +16 -16
- package/dist/literature/sources/pubmed.js +96 -61
- package/dist/literature/sources/semantic-scholar.d.ts +8 -8
- package/dist/literature/sources/semantic-scholar.js +22 -13
- package/dist/loop/accounting.d.ts +63 -0
- package/dist/loop/accounting.js +141 -0
- package/dist/loop/call-policy.d.ts +73 -0
- package/dist/loop/call-policy.js +109 -0
- package/dist/loop/chat-stream.d.ts +62 -0
- package/dist/loop/chat-stream.js +237 -0
- package/dist/loop/compaction.d.ts +9 -9
- package/dist/loop/compaction.js +1 -1
- package/dist/loop/metrics.d.ts +12 -15
- package/dist/loop/metrics.js +14 -26
- package/dist/loop/run-loop.d.ts +233 -0
- package/dist/loop/run-loop.js +770 -0
- package/dist/loop/sub-agent.d.ts +61 -0
- package/dist/loop/sub-agent.js +160 -0
- package/dist/loop/tool-adapter.d.ts +98 -0
- package/dist/loop/tool-adapter.js +364 -0
- package/dist/loop/tool-detail.d.ts +1 -1
- package/dist/loop/tool-detail.js +6 -5
- package/dist/loop/tool-outcome.d.ts +1 -1
- package/dist/loop/tool-output.d.ts +4 -4
- package/dist/loop/tool-output.js +2 -2
- package/dist/loop/turn-credentials.d.ts +39 -0
- package/dist/loop/turn-credentials.js +90 -0
- package/dist/loop/types.d.ts +29 -38
- package/dist/loop/types.js +2 -7
- package/dist/memory/ai-sdk-message-storage.d.ts +5 -5
- package/dist/memory/ai-sdk-message-storage.js +13 -11
- package/dist/memory/card-builders.d.ts +14 -14
- package/dist/memory/card-builders.js +19 -15
- package/dist/memory/conversation-display-recorder.d.ts +22 -4
- package/dist/memory/conversation-display-recorder.js +43 -24
- package/dist/memory/conversation-display-replay.js +3 -2
- package/dist/memory/conversation-display-storage.d.ts +15 -7
- package/dist/memory/conversation-display-storage.js +141 -36
- package/dist/memory/conversation-view.d.ts +4 -4
- package/dist/memory/conversation-view.js +5 -4
- package/dist/memory/count-tokens.js +10 -8
- package/dist/memory/derive-thread-title.d.ts +0 -13
- package/dist/memory/derive-thread-title.js +2 -1
- package/dist/memory/message-backfill.d.ts +12 -5
- package/dist/memory/message-backfill.js +5 -3
- package/dist/memory/thread-history.d.ts +36 -21
- package/dist/memory/thread-history.js +78 -54
- package/dist/memory/thread-store.d.ts +26 -17
- package/dist/memory/thread-store.js +15 -9
- package/dist/memory/tool-call-integrity.d.ts +2 -2
- package/dist/memory/tool-call-integrity.js +4 -3
- package/dist/memory/working-memory.d.ts +16 -12
- package/dist/memory/working-memory.js +72 -61
- package/dist/prompts/briefing.d.ts +12 -12
- package/dist/prompts/briefing.js +1 -1
- package/dist/prompts/synthesis-agent.d.ts +1 -1
- package/dist/prompts/synthesis-agent.js +6 -14
- package/dist/provenance/collector.d.ts +6 -6
- package/dist/provenance/collector.js +15 -8
- package/dist/provenance/exec-frame.d.ts +2 -2
- package/dist/provenance/exec-frame.js +6 -1
- package/dist/provenance/seam.d.ts +1 -4
- package/dist/provenance/types.d.ts +6 -6
- package/dist/providers/ai-sdk.d.ts +113 -62
- package/dist/providers/ai-sdk.js +283 -518
- package/dist/providers/embedding.d.ts +2 -2
- package/dist/providers/embedding.js +1 -1
- package/dist/providers/errors.d.ts +22 -2
- package/dist/providers/errors.js +98 -50
- package/dist/providers/prompt-cache.d.ts +8 -8
- package/dist/providers/prompt-cache.js +13 -11
- package/dist/providers/reasoning.d.ts +2 -2
- package/dist/providers/reasoning.js +2 -2
- package/dist/providers/request-headers.js +12 -3
- package/dist/providers/types.d.ts +55 -94
- package/dist/reference-data/catalog.d.ts +2 -15
- package/dist/reference-data/catalog.js +25 -8
- package/dist/reference-data/receipt.d.ts +2 -2
- package/dist/report-model/assert-rules.js +1 -1
- package/dist/report-model/authoring-grammar.d.ts +211 -233
- package/dist/report-model/block-walk.d.ts +10 -10
- package/dist/report-model/block-walk.js +2 -0
- package/dist/report-model/draft-finish.d.ts +8 -8
- package/dist/report-model/draft-finish.js +1 -1
- package/dist/report-model/draft-hash.js +8 -7
- package/dist/report-model/draft-operations.d.ts +22 -10
- package/dist/report-model/draft-operations.js +48 -30
- package/dist/report-model/draft-read.d.ts +19 -7
- package/dist/report-model/draft-read.js +16 -6
- package/dist/report-model/draft.d.ts +844 -2
- package/dist/report-model/draft.js +3 -1
- package/dist/report-model/fixture-resolver.js +39 -16
- package/dist/report-model/pin-snapshot.d.ts +2 -2
- package/dist/report-model/pin-snapshot.js +15 -15
- package/dist/report-model/production-resolver.d.ts +18 -18
- package/dist/report-model/production-resolver.js +50 -42
- package/dist/report-model/reference-resolver.d.ts +26 -10
- package/dist/report-model/reference-resolver.js +68 -5
- package/dist/report-model/reference-stamp.js +30 -38
- package/dist/report-model/structural-validation.js +12 -4
- package/dist/report-model/validate.d.ts +7 -7
- package/dist/report-model/validate.js +6 -6
- package/dist/report-render/assets.d.ts +2 -2
- package/dist/report-render/assets.js +27 -3
- package/dist/report-render/chart-export.d.ts +10 -2
- package/dist/report-render/chart-export.js +37 -11
- package/dist/report-render/chart-presets.d.ts +8 -8
- package/dist/report-render/chart-presets.js +3 -3
- package/dist/report-render/chart-renderers.d.ts +23 -16
- package/dist/report-render/chart-renderers.js +74 -53
- package/dist/report-render/chart-toolbox.d.ts +2 -2
- package/dist/report-render/chart-toolbox.js +7 -6
- package/dist/report-render/chart.d.ts +15 -16
- package/dist/report-render/chart.js +369 -252
- package/dist/report-render/design.d.ts +36 -297
- package/dist/report-render/design.js +0 -12
- package/dist/report-render/figures/common.d.ts +12 -12
- package/dist/report-render/figures/common.js +42 -31
- package/dist/report-render/figures/dendrogram.d.ts +3 -3
- package/dist/report-render/figures/dendrogram.js +10 -10
- package/dist/report-render/figures/dense.js +15 -8
- package/dist/report-render/figures/dotplot.js +46 -33
- package/dist/report-render/figures/embedding.js +52 -43
- package/dist/report-render/figures/equal-units.d.ts +10 -10
- package/dist/report-render/figures/equal-units.js +27 -27
- package/dist/report-render/figures/forest.js +9 -7
- package/dist/report-render/figures/gsea.js +21 -11
- package/dist/report-render/figures/heatmap.js +13 -9
- package/dist/report-render/figures/index.d.ts +10 -10
- package/dist/report-render/figures/index.js +4 -2
- package/dist/report-render/figures/km.js +10 -9
- package/dist/report-render/figures/label-room.d.ts +12 -12
- package/dist/report-render/figures/label-room.js +7 -2
- package/dist/report-render/figures/locuszoom.d.ts +2 -2
- package/dist/report-render/figures/locuszoom.js +59 -31
- package/dist/report-render/figures/lollipop.js +3 -2
- package/dist/report-render/figures/ma.js +8 -4
- package/dist/report-render/figures/manhattan.d.ts +1 -2
- package/dist/report-render/figures/manhattan.js +52 -34
- package/dist/report-render/figures/oncoprint.js +4 -5
- package/dist/report-render/figures/pca.js +25 -11
- package/dist/report-render/figures/qq.js +20 -9
- package/dist/report-render/figures/roc.js +1 -1
- package/dist/report-render/figures/sankey.d.ts +2 -2
- package/dist/report-render/figures/sankey.js +11 -10
- package/dist/report-render/figures/upset.d.ts +6 -6
- package/dist/report-render/figures/upset.js +7 -4
- package/dist/report-render/figures/volcano.js +12 -10
- package/dist/report-render/hybrid-svg.d.ts +4 -4
- package/dist/report-render/hybrid-svg.js +7 -5
- package/dist/report-render/number-format.d.ts +4 -4
- package/dist/report-render/number-format.js +62 -27
- package/dist/report-render/page.js +2 -1
- package/dist/report-render/provenance-data.d.ts +2 -2
- package/dist/report-render/references.d.ts +4 -4
- package/dist/report-render/render.d.ts +2 -2
- package/dist/report-render/render.js +10 -11
- package/dist/report-render/script-json.js +1 -1
- package/dist/report-render/table-data.d.ts +6 -6
- package/dist/report-render/test/options.d.ts +49 -0
- package/dist/report-render/test/options.js +143 -0
- package/dist/report-render/test/page-function.d.ts +19 -0
- package/dist/report-render/test/page-function.js +33 -0
- package/dist/report-render/types.d.ts +10 -10
- package/dist/report-render/value-bridge.d.ts +4 -4
- package/dist/report-render/value-bridge.js +27 -14
- package/dist/report-render/views/chart-view.d.ts +2 -2
- package/dist/report-render/views/chart-view.js +2 -2
- package/dist/report-render/views/lineage.d.ts +6 -6
- package/dist/report-render/views/lineage.js +2 -0
- package/dist/report-render/views/page-view.d.ts +2 -2
- package/dist/report-render/views/page-view.js +1 -0
- package/dist/report-render/views/prose.js +25 -8
- package/dist/report-render/views/references-view.js +12 -1
- package/dist/report-render/views/values.js +1 -1
- package/dist/runtime/assemble.d.ts +53 -26
- package/dist/runtime/assemble.js +103 -56
- package/dist/runtime/boot.d.ts +8 -7
- package/dist/runtime/boot.js +1 -1
- package/dist/runtime/connection-budget.d.ts +6 -6
- package/dist/runtime/connection-budget.js +1 -1
- package/dist/runtime/dbos.d.ts +29 -19
- package/dist/runtime/dbos.js +35 -20
- package/dist/runtime/result-serialization.js +18 -5
- package/dist/runtime/shutdown.d.ts +2 -2
- package/dist/sandbox/client.d.ts +7 -3
- package/dist/sandbox/cpu-files.d.ts +2 -2
- package/dist/sandbox/cpu-files.js +21 -4
- package/dist/sandbox/create-sandbox.d.ts +7 -8
- package/dist/sandbox/create-sandbox.js +6 -12
- package/dist/sandbox/docker-client.d.ts +48 -3
- package/dist/sandbox/docker-client.js +10 -6
- package/dist/sandbox/estimate-data-profile-resources.js +2 -7
- package/dist/sandbox/exec-outcome.d.ts +2 -2
- package/dist/sandbox/exec-outcome.js +1 -1
- package/dist/sandbox/exec.d.ts +10 -6
- package/dist/sandbox/exec.js +27 -12
- package/dist/sandbox/execution-id.js +14 -6
- package/dist/sandbox/farm.d.ts +2 -2
- package/dist/sandbox/farm.js +22 -27
- package/dist/sandbox/identity.d.ts +7 -0
- package/dist/sandbox/identity.js +14 -3
- package/dist/sandbox/image-packages.js +15 -27
- package/dist/sandbox/k8s-client.d.ts +35 -8
- package/dist/sandbox/k8s-client.js +6 -5
- package/dist/sandbox/labels.js +1 -0
- package/dist/sandbox/liveness.js +3 -1
- package/dist/sandbox/mount-plan.d.ts +10 -10
- package/dist/sandbox/mount-plan.js +13 -14
- package/dist/sandbox/notification-sweep.d.ts +4 -4
- package/dist/sandbox/notification-sweep.js +4 -7
- package/dist/sandbox/package-identity.d.ts +6 -13
- package/dist/sandbox/package-identity.js +46 -28
- package/dist/sandbox/reaper.d.ts +10 -10
- package/dist/sandbox/reaper.js +4 -6
- package/dist/sandbox/sandbox-error.d.ts +2 -9
- package/dist/sandbox/sandbox-error.js +21 -8
- package/dist/sandbox/sandbox-step-translate.d.ts +8 -5
- package/dist/sandbox/sandbox-step-translate.js +22 -8
- package/dist/sandbox/step-sandbox.d.ts +47 -0
- package/dist/sandbox/step-sandbox.js +53 -0
- package/dist/sandbox/types.d.ts +18 -19
- package/dist/sandbox/types.js +1 -1
- package/dist/schemas/artifact-manifest.d.ts +4 -4
- package/dist/schemas/data-profile-schemas.d.ts +343 -298
- package/dist/schemas/file-metadata.js +2 -4
- package/dist/schemas/plan-schemas.d.ts +31 -31
- package/dist/schemas/run-synthesis.d.ts +95 -26
- package/dist/schemas/run-synthesis.js +3 -1
- package/dist/schemas/validate-plan.d.ts +4 -4
- package/dist/schemas/validate-plan.js +17 -5
- package/dist/schemas/workflow-state.d.ts +19 -19
- package/dist/schemas/workflow-state.js +2 -2
- package/dist/state/active-turns.d.ts +36 -0
- package/dist/state/active-turns.js +67 -0
- package/dist/state/analyses-metrics.d.ts +8 -8
- package/dist/state/analyses-metrics.js +4 -4
- package/dist/state/analyses.d.ts +0 -14
- package/dist/state/analyses.js +0 -32
- package/dist/state/artifacts.d.ts +32 -19
- package/dist/state/artifacts.js +28 -5
- package/dist/state/data-profile.d.ts +2 -2
- package/dist/state/db.d.ts +12 -2
- package/dist/state/db.js +5 -0
- package/dist/state/edit-intents.d.ts +4 -0
- package/dist/state/edit-intents.js +71 -0
- package/dist/state/index.d.ts +4 -4
- package/dist/state/index.js +2 -2
- package/dist/state/init.d.ts +2 -1
- package/dist/state/init.js +5 -2
- package/dist/state/migrations/20260927120000_baseline.js +3 -1
- package/dist/state/migrations/20261026120000_add_the_edit_intents.d.ts +7 -0
- package/dist/state/migrations/20261026120000_add_the_edit_intents.js +21 -0
- package/dist/state/migrations/20261027120000_record_the_applied_memory_edits.d.ts +7 -0
- package/dist/state/migrations/20261027120000_record_the_applied_memory_edits.js +16 -0
- package/dist/state/migrations/20261027120100_store_the_authoring_results.d.ts +8 -0
- package/dist/state/migrations/20261027120100_store_the_authoring_results.js +20 -0
- package/dist/state/migrations/20261027120200_key_the_groups_of_a_turn.d.ts +7 -0
- package/dist/state/migrations/20261027120200_key_the_groups_of_a_turn.js +12 -0
- package/dist/state/migrations/20261027120300_mark_the_active_turn_of_a_thread.d.ts +7 -0
- package/dist/state/migrations/20261027120300_mark_the_active_turn_of_a_thread.js +11 -0
- package/dist/state/migrations/20261028120000_record_the_paused_work.d.ts +7 -0
- package/dist/state/migrations/20261028120000_record_the_paused_work.js +25 -0
- package/dist/state/migrations/20261028120100_end_the_suspended_runs.d.ts +8 -0
- package/dist/state/migrations/20261028120100_end_the_suspended_runs.js +13 -0
- package/dist/state/migrations/20261029120000_reference_the_run_mandate.d.ts +7 -0
- package/dist/state/migrations/20261029120000_reference_the_run_mandate.js +23 -0
- package/dist/state/migrations/20261029120100_record_the_run_session_of_a_pause.d.ts +7 -0
- package/dist/state/migrations/20261029120100_record_the_run_session_of_a_pause.js +11 -0
- package/dist/state/migrations/index.js +18 -0
- package/dist/state/paused-work.d.ts +52 -0
- package/dist/state/paused-work.js +105 -0
- package/dist/state/plans.d.ts +27 -8
- package/dist/state/plans.js +14 -11
- package/dist/state/purge-analysis.d.ts +6 -6
- package/dist/state/purge-analysis.js +10 -2
- package/dist/state/report-session-state.d.ts +43 -18
- package/dist/state/report-session-state.js +43 -4
- package/dist/state/report-versions.d.ts +16 -11
- package/dist/state/report-versions.js +5 -3
- package/dist/state/runs.d.ts +30 -19
- package/dist/state/runs.js +43 -51
- package/dist/state/schema.d.ts +18 -21
- package/dist/state/schema.js +4 -5
- package/dist/state/snapshot-parse.d.ts +2 -2
- package/dist/state/snapshot-parse.js +14 -8
- package/dist/state/step-executions.d.ts +20 -8
- package/dist/state/step-executions.js +6 -4
- package/dist/state/tool-outputs.d.ts +2 -2
- package/dist/state/tool-outputs.js +2 -1
- package/dist/state/vector-store.d.ts +16 -16
- package/dist/state/vector-store.js +11 -7
- package/dist/tasks/data-profile-absorb.d.ts +3 -3
- package/dist/tasks/data-profile-absorb.js +21 -16
- package/dist/tasks/data-profile-activity.d.ts +5 -5
- package/dist/tasks/data-profile-activity.js +5 -5
- package/dist/tasks/data-profile-index.d.ts +4 -4
- package/dist/tasks/data-profile-index.js +32 -17
- package/dist/tasks/data-profile-resolve.d.ts +8 -8
- package/dist/tasks/data-profile-resolve.js +88 -62
- package/dist/tasks/data-profile.d.ts +40 -31
- package/dist/tasks/data-profile.js +138 -95
- package/dist/tasks/extract-values.d.ts +26 -79
- package/dist/tasks/extract-values.js +48 -108
- package/dist/tasks/refresh-regulatory-corpus.d.ts +4 -20
- package/dist/tasks/refresh-regulatory-corpus.js +12 -8
- package/dist/tasks/regulatory-corpus-boot-refresh.d.ts +2 -2
- package/dist/tasks/regulatory-corpus-boot-refresh.js +12 -10
- package/dist/testing.d.ts +62 -0
- package/dist/testing.js +101 -0
- package/dist/tools/ad-hoc-router.d.ts +9 -9
- package/dist/tools/ad-hoc-router.js +65 -52
- package/dist/tools/analysis-invocation.d.ts +7 -0
- package/dist/tools/analysis-invocation.js +29 -5
- package/dist/tools/approval/contract.d.ts +8 -52
- package/dist/tools/approval/contract.js +7 -36
- package/dist/tools/approval/gateway.d.ts +27 -28
- package/dist/tools/approval/gateway.js +33 -130
- package/dist/tools/approval/queries.d.ts +6 -11
- package/dist/tools/approval/queries.js +43 -29
- package/dist/tools/approval/uuidv7.js +2 -2
- package/dist/tools/bio/chembl.d.ts +3 -3
- package/dist/tools/bio/chembl.js +10 -0
- package/dist/tools/bio/comptox.d.ts +25 -8
- package/dist/tools/bio/comptox.js +4 -2
- package/dist/tools/bio/drug-gene-interactions.d.ts +27 -17
- package/dist/tools/bio/drug-gene-interactions.js +11 -8
- package/dist/tools/bio/gene-disease-evidence.d.ts +61 -15
- package/dist/tools/bio/gene-disease-evidence.js +10 -6
- package/dist/tools/bio/gene-preclinical-profile.d.ts +11 -11
- package/dist/tools/bio/keys.d.ts +2 -2
- package/dist/tools/bio/keys.js +3 -3
- package/dist/tools/bio/lookup-annotation.d.ts +5 -5
- package/dist/tools/bio/lookup-annotation.js +3 -0
- package/dist/tools/bio/opentargets.d.ts +1 -1
- package/dist/tools/bio/opentargets.js +6 -0
- package/dist/tools/bio/pubchem.d.ts +2 -2
- package/dist/tools/bio/pubchem.js +6 -0
- package/dist/tools/bio/pubmed.d.ts +26 -16
- package/dist/tools/bio/pubmed.js +9 -3
- package/dist/tools/bio/search-clinical-trials.d.ts +4 -4
- package/dist/tools/bio/search-clinical-trials.js +5 -1
- package/dist/tools/bio/search-faers.d.ts +2 -2
- package/dist/tools/bio/search-faers.js +1 -1
- package/dist/tools/bio/search-gene.d.ts +2 -2
- package/dist/tools/bio/search-gene.js +1 -0
- package/dist/tools/bio/search-geo-datasets.d.ts +4 -4
- package/dist/tools/bio/search-geo-datasets.js +5 -5
- package/dist/tools/bio/search-interactions.d.ts +1 -1
- package/dist/tools/bio/search-patents.d.ts +28 -22
- package/dist/tools/bio/search-patents.js +20 -17
- package/dist/tools/bio/search-protein.d.ts +2 -2
- package/dist/tools/bio/search-protein.js +1 -1
- package/dist/tools/bio/search-regulatory-approvals.d.ts +64 -18
- package/dist/tools/bio/search-regulatory-approvals.js +21 -16
- package/dist/tools/bio/target-safety.d.ts +8 -8
- package/dist/tools/bio/target-safety.js +11 -6
- package/dist/tools/capability-data.d.ts +9 -5
- package/dist/tools/capability-data.js +2 -1
- package/dist/tools/define-tool.d.ts +55 -46
- package/dist/tools/define-tool.js +39 -27
- package/dist/tools/display/normalize-echart-spec.d.ts +2 -2
- package/dist/tools/display/normalize-echart-spec.js +51 -27
- package/dist/tools/display/show-user.d.ts +2 -2
- package/dist/tools/display/show-user.js +1 -1
- package/dist/tools/execute-analysis.d.ts +19 -10
- package/dist/tools/execute-analysis.js +83 -62
- package/dist/tools/knowledge/check.d.ts +166 -44
- package/dist/tools/knowledge/check.js +5 -3
- package/dist/tools/knowledge/client.d.ts +31 -62
- package/dist/tools/knowledge/client.js +44 -27
- package/dist/tools/knowledge/environment.d.ts +6 -6
- package/dist/tools/knowledge/environment.js +18 -7
- package/dist/tools/knowledge/index.d.ts +2 -2
- package/dist/tools/knowledge/index.js +9 -9
- package/dist/tools/knowledge/local-slots.d.ts +4 -4
- package/dist/tools/knowledge/local-slots.js +11 -4
- package/dist/tools/knowledge/pin.d.ts +2 -2
- package/dist/tools/knowledge/recommend.d.ts +20 -45
- package/dist/tools/knowledge/recommend.js +27 -19
- package/dist/tools/knowledge/situation.d.ts +40 -40
- package/dist/tools/knowledge/situation.js +2 -9
- package/dist/tools/knowledge/skeleton.d.ts +4 -4
- package/dist/tools/knowledge/skeleton.js +10 -11
- package/dist/tools/knowledge/template.d.ts +20 -18
- package/dist/tools/knowledge/template.js +38 -32
- package/dist/tools/lib/alphafold-client.js +2 -1
- package/dist/tools/lib/amass-client.d.ts +28 -28
- package/dist/tools/lib/amass-client.js +20 -10
- package/dist/tools/lib/api-utils.d.ts +13 -3
- package/dist/tools/lib/api-utils.js +17 -3
- package/dist/tools/lib/bgee-client.d.ts +6 -6
- package/dist/tools/lib/bgee-client.js +16 -10
- package/dist/tools/lib/cbioportal-client.d.ts +4 -4
- package/dist/tools/lib/cbioportal-client.js +9 -8
- package/dist/tools/lib/chembl-client.d.ts +14 -14
- package/dist/tools/lib/chembl-client.js +11 -4
- package/dist/tools/lib/clinical-benchmarks-client.d.ts +4 -4
- package/dist/tools/lib/clinical-benchmarks-client.js +4 -7
- package/dist/tools/lib/clinical-trials-client.d.ts +18 -18
- package/dist/tools/lib/clinical-trials-client.js +10 -10
- package/dist/tools/lib/clinvar-client.d.ts +2 -2
- package/dist/tools/lib/clinvar-client.js +6 -6
- package/dist/tools/lib/ctx-ops.d.ts +23 -23
- package/dist/tools/lib/ctx-ops.js +13 -10
- package/dist/tools/lib/dgidb-client.d.ts +6 -6
- package/dist/tools/lib/dgidb-client.js +10 -12
- package/dist/tools/lib/disgenet-client.d.ts +4 -4
- package/dist/tools/lib/ema-client.d.ts +2 -2
- package/dist/tools/lib/ensembl-client.d.ts +4 -4
- package/dist/tools/lib/ensembl-client.js +5 -4
- package/dist/tools/lib/gwas-catalog-client.d.ts +4 -4
- package/dist/tools/lib/gwas-catalog-client.js +17 -17
- package/dist/tools/lib/html-text.d.ts +6 -0
- package/dist/tools/lib/html-text.js +9 -0
- package/dist/tools/lib/identifier-resolver.d.ts +4 -4
- package/dist/tools/lib/identifier-resolver.js +7 -3
- package/dist/tools/lib/impc-client.d.ts +8 -8
- package/dist/tools/lib/impc-client.js +46 -35
- package/dist/tools/lib/iuphar-client.d.ts +2 -2
- package/dist/tools/lib/iuphar-client.js +7 -16
- package/dist/tools/lib/monarch-client.d.ts +4 -4
- package/dist/tools/lib/openfda-client.d.ts +22 -22
- package/dist/tools/lib/openfda-client.js +23 -22
- package/dist/tools/lib/opentargets-client.d.ts +12 -12
- package/dist/tools/lib/pathway-client.d.ts +4 -4
- package/dist/tools/lib/pathway-client.js +15 -19
- package/dist/tools/lib/pharmgkb-client.d.ts +2 -2
- package/dist/tools/lib/pharmgkb-client.js +1 -1
- package/dist/tools/lib/protein-family-modality.d.ts +2 -2
- package/dist/tools/lib/protein-family-modality.js +0 -2
- package/dist/tools/lib/protein-family-normalize.js +7 -0
- package/dist/tools/lib/pubchem-client.d.ts +2 -2
- package/dist/tools/lib/pubchem-client.js +1 -0
- package/dist/tools/lib/pubchem-ops.d.ts +4 -4
- package/dist/tools/lib/pubchem-ops.js +8 -0
- package/dist/tools/lib/pubmed-client.d.ts +9 -9
- package/dist/tools/lib/pubmed-client.js +1 -1
- package/dist/tools/lib/string-client.d.ts +6 -6
- package/dist/tools/lib/uniprot-client.d.ts +8 -8
- package/dist/tools/lib/uniprot-client.js +5 -1
- package/dist/tools/memory/update-working-memory.d.ts +16 -13
- package/dist/tools/memory/update-working-memory.js +21 -3
- package/dist/tools/read-tool-output.js +8 -2
- package/dist/tools/registry.d.ts +2 -2
- package/dist/tools/report-authoring/authoring-tools.d.ts +54 -23
- package/dist/tools/report-authoring/authoring-tools.js +128 -62
- package/dist/tools/report-session/derive-table.d.ts +19 -59
- package/dist/tools/report-session/derive-table.js +120 -122
- package/dist/tools/report-session/examine-page.d.ts +6 -6
- package/dist/tools/report-session/examine-page.js +14 -12
- package/dist/tools/report-session/list-artifacts.d.ts +6 -6
- package/dist/tools/report-session/list-artifacts.js +5 -5
- package/dist/tools/report-session/page-faults.d.ts +6 -6
- package/dist/tools/report-session/page-faults.js +3 -1
- package/dist/tools/report-session/preview-report.d.ts +4 -3
- package/dist/tools/report-session/preview-report.js +26 -7
- package/dist/tools/report-session/record-version.d.ts +9 -4
- package/dist/tools/report-session/record-version.js +16 -9
- package/dist/tools/report-session/session-page-publisher.d.ts +6 -6
- package/dist/tools/research/generate-analogy-report.d.ts +14 -7
- package/dist/tools/research/generate-analogy-report.js +80 -76
- package/dist/tools/research/generate-plan.d.ts +16 -16
- package/dist/tools/research/generate-plan.js +410 -374
- package/dist/tools/research/guarded-address.js +3 -2
- package/dist/tools/research/inspect-data-profile.d.ts +27 -20
- package/dist/tools/research/inspect-data-profile.js +26 -25
- package/dist/tools/research/inspect-run.d.ts +54 -27
- package/dist/tools/research/inspect-run.js +50 -40
- package/dist/tools/research/literature-reviewer.d.ts +8 -7
- package/dist/tools/research/literature-reviewer.js +29 -28
- package/dist/tools/research/search-arxiv.d.ts +1 -1
- package/dist/tools/research/search-arxiv.js +1 -1
- package/dist/tools/research/search-github-repos.d.ts +10 -7
- package/dist/tools/research/search-github-repos.js +25 -22
- package/dist/tools/research/search-semantic-scholar.js +1 -1
- package/dist/tools/research/searxng-engine.d.ts +2 -2
- package/dist/tools/research/searxng-engine.js +6 -4
- package/dist/tools/research/web-fetch.d.ts +24 -21
- package/dist/tools/research/web-fetch.js +65 -74
- package/dist/tools/research/web-search.d.ts +26 -17
- package/dist/tools/research/web-search.js +26 -21
- package/dist/tools/sandbox/link-packages.d.ts +11 -7
- package/dist/tools/sandbox/link-packages.js +11 -8
- package/dist/tools/sandbox/list-available-packages.d.ts +17 -8
- package/dist/tools/sandbox/list-available-packages.js +31 -25
- package/dist/tools/sandbox/list-available-refs.d.ts +17 -14
- package/dist/tools/sandbox/list-available-refs.js +61 -36
- package/dist/tools/sandbox/report-blocker.d.ts +30 -37
- package/dist/tools/sandbox/report-blocker.js +23 -73
- package/dist/tools/sandbox/skills.d.ts +16 -12
- package/dist/tools/sandbox/skills.js +16 -12
- package/dist/tools/sandbox/submit-file-metadata.d.ts +12 -9
- package/dist/tools/sandbox/submit-file-metadata.js +18 -21
- package/dist/tools/start-report-session.d.ts +13 -5
- package/dist/tools/start-report-session.js +35 -8
- package/dist/tools/terminal-text.d.ts +5 -2
- package/dist/tools/terminal-text.js +35 -3
- package/dist/tools/workspace/decision-record.d.ts +4 -4
- package/dist/tools/workspace/decision-record.js +23 -13
- package/dist/tools/workspace/edit-file.d.ts +59 -20
- package/dist/tools/workspace/edit-file.js +81 -16
- package/dist/tools/workspace/execute-command.d.ts +15 -13
- package/dist/tools/workspace/execute-command.js +11 -9
- package/dist/tools/workspace/file-stat.d.ts +6 -3
- package/dist/tools/workspace/grep.d.ts +10 -7
- package/dist/tools/workspace/grep.js +9 -3
- package/dist/tools/workspace/list-files.d.ts +6 -3
- package/dist/tools/workspace/mutator.d.ts +28 -15
- package/dist/tools/workspace/mutator.js +107 -53
- package/dist/tools/workspace/read-file.d.ts +8 -5
- package/dist/tools/workspace/result-bounds.d.ts +5 -5
- package/dist/tools/workspace/result-bounds.js +4 -2
- package/dist/tools/workspace/run-exec.d.ts +2 -2
- package/dist/tools/workspace/run-exec.js +3 -3
- package/dist/tools/workspace/scan-inputs.d.ts +8 -5
- package/dist/tools/workspace/scan-inputs.js +17 -5
- package/dist/tools/workspace/show-file.d.ts +1 -1
- package/dist/tools/workspace/show-file.js +2 -1
- package/dist/tools/workspace/show-plan.d.ts +8 -5
- package/dist/tools/workspace/show-plan.js +9 -8
- package/dist/tools/workspace/workspace-search.d.ts +41 -13
- package/dist/tools/workspace/workspace-search.js +27 -14
- package/dist/tools/workspace/write-file.d.ts +9 -7
- package/dist/workflows/execute-analysis-scheduler.d.ts +9 -9
- package/dist/workflows/execute-analysis-scheduler.js +6 -3
- package/dist/workflows/execute-analysis.d.ts +46 -62
- package/dist/workflows/execute-analysis.js +137 -219
- package/dist/workflows/pause.d.ts +71 -0
- package/dist/workflows/pause.js +173 -0
- package/dist/workflows/sandbox-step.d.ts +38 -61
- package/dist/workflows/sandbox-step.js +99 -106
- package/dist/workflows/test/sql-writes.d.ts +21 -0
- package/dist/workflows/test/sql-writes.js +36 -0
- package/dist/workspace/filesystem.d.ts +6 -6
- package/dist/workspace/filesystem.js +10 -8
- package/dist/workspace/paths.d.ts +1 -1
- package/dist/workspace/paths.js +15 -4
- package/dist/workspace/search-config.d.ts +2 -2
- package/dist/workspace/search-config.js +1 -1
- package/package.json +21 -22
- package/dist/loop/call-guard.d.ts +0 -50
- package/dist/loop/call-guard.js +0 -90
- package/dist/loop/continue-agent.d.ts +0 -40
- package/dist/loop/continue-agent.js +0 -38
- package/dist/loop/genai-spans.d.ts +0 -47
- package/dist/loop/genai-spans.js +0 -134
- package/dist/loop/run-agent.d.ts +0 -245
- package/dist/loop/run-agent.js +0 -1124
- package/dist/loop/run-step.d.ts +0 -29
- package/dist/loop/run-step.js +0 -34
- package/dist/loop/run-to-terminal.d.ts +0 -66
- package/dist/loop/run-to-terminal.js +0 -93
- package/dist/loop/tool-mask.d.ts +0 -23
- package/dist/loop/tool-mask.js +0 -46
- package/dist/providers/streaming-chat.d.ts +0 -32
- package/dist/providers/streaming-chat.js +0 -91
- package/dist/tasks/derive-table-exec.d.ts +0 -54
- package/dist/tasks/derive-table-exec.js +0 -86
- package/dist/workflows/suspension.d.ts +0 -32
- package/dist/workflows/suspension.js +0 -38
|
@@ -5,14 +5,15 @@
|
|
|
5
5
|
* vendor-neutral interfaces. Every call carries an `AgentSession`; billing
|
|
6
6
|
* attribution is resolved lazily at the provider wire boundary.
|
|
7
7
|
*/
|
|
8
|
-
import type {
|
|
9
|
-
import type { LanguageModelV4CallOptions } from "@ai-sdk/provider";
|
|
10
|
-
import type { ProviderOptions } from "@ai-sdk/provider-utils";
|
|
8
|
+
import type { TelemetryOptions } from "ai";
|
|
9
|
+
import type { LanguageModelV4, LanguageModelV4CallOptions } from "@ai-sdk/provider";
|
|
11
10
|
import type { ResultAsync } from "neverthrow";
|
|
12
11
|
import type { AgentSession } from "../auth/types.js";
|
|
13
12
|
import type { ProviderError } from "./errors.js";
|
|
14
|
-
export type { FinishReason, LanguageModel, ModelMessage,
|
|
15
|
-
|
|
13
|
+
export type { FinishReason, LanguageModel, ModelMessage, ToolSet } from "ai";
|
|
14
|
+
import type { ProviderOptions } from "@ai-sdk/provider-utils";
|
|
15
|
+
export type { ProviderOptions } from "@ai-sdk/provider-utils";
|
|
16
|
+
export type ProviderCapabilities = {
|
|
16
17
|
readonly toolCalling: boolean;
|
|
17
18
|
/**
|
|
18
19
|
* Whether the wire can carry a picture inside a tool result. The loop moves a
|
|
@@ -23,48 +24,13 @@ export interface ProviderCapabilities {
|
|
|
23
24
|
* see it. Absent means "cannot carry", never "unknown".
|
|
24
25
|
*/
|
|
25
26
|
readonly imageToolResults?: boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Whether the wire can carry a picture inside a user message. The loop uses
|
|
28
|
-
* this placement only when the tool result cannot carry the picture. The tool
|
|
29
|
-
* result then keeps its JSON text, and one user message after the tool message
|
|
30
|
-
* of the round carries the bytes. Absent means "cannot carry", never
|
|
31
|
-
* "unknown".
|
|
32
|
-
*/
|
|
33
|
-
readonly imageUserMessages?: boolean;
|
|
34
27
|
/**
|
|
35
28
|
* The context window of the model in tokens, when the host knows it. A chat
|
|
36
29
|
* thread then compacts at 80% of the window at the latest. Absent means "at
|
|
37
30
|
* least the compaction budget of the agent", thus the budget stays as declared.
|
|
38
31
|
*/
|
|
39
32
|
readonly contextWindow?: number;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* The request carries no free-form provider options. That would let a caller
|
|
43
|
-
* set a vendor key that bypasses the provider's per-model table.
|
|
44
|
-
*/
|
|
45
|
-
export interface ChatRequest {
|
|
46
|
-
/**
|
|
47
|
-
* The system prompt: a plain string, or a system message that carries the
|
|
48
|
-
* cache marker at its end (`withSystemPromptBreakpoint`).
|
|
49
|
-
*/
|
|
50
|
-
readonly system: string | SystemModelMessage;
|
|
51
|
-
readonly messages: readonly ModelMessage[];
|
|
52
|
-
readonly tools: ToolSet;
|
|
53
|
-
/**
|
|
54
|
-
* A forced choice (`required`, or one named tool) is absent on purpose: some
|
|
55
|
-
* Claude models reject it with a 400, and the model is chosen at run time.
|
|
56
|
-
*
|
|
57
|
-
* CAUTION: `@ai-sdk/anthropic` strips the tools when this is `"none"`, and
|
|
58
|
-
* Anthropic drops its cache on any `tool_choice` change — taking a signed
|
|
59
|
-
* thinking block with it. Use a tool mask instead of sending `"none"`.
|
|
60
|
-
*/
|
|
61
|
-
readonly toolChoice?: "auto" | "none";
|
|
62
|
-
/**
|
|
63
|
-
* How deep the model reasons. Absent, the effort falls back to the provider
|
|
64
|
-
* configuration's `reasoning`, then `DEFAULT_REASONING`.
|
|
65
|
-
*/
|
|
66
|
-
readonly reasoning?: ReasoningPolicy;
|
|
67
|
-
}
|
|
33
|
+
};
|
|
68
34
|
/**
|
|
69
35
|
* Vendor-neutral prompt-cache policy — a harness concept, not a vendor one.
|
|
70
36
|
*
|
|
@@ -116,74 +82,69 @@ export type ReasoningPolicy = NonNullable<LanguageModelV4CallOptions["reasoning"
|
|
|
116
82
|
* totals without a cache breakdown, is legitimate. Absent means "not reported",
|
|
117
83
|
* never "zero".
|
|
118
84
|
*/
|
|
119
|
-
export
|
|
85
|
+
export type ChatUsage = {
|
|
120
86
|
readonly inputTokens?: number;
|
|
121
87
|
readonly outputTokens?: number;
|
|
122
88
|
readonly cacheCreationInputTokens?: number;
|
|
123
89
|
readonly cacheReadInputTokens?: number;
|
|
124
90
|
readonly reasoningTokens?: number;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
readonly message: Extract<ModelMessage, {
|
|
128
|
-
role: "assistant";
|
|
129
|
-
}>;
|
|
130
|
-
/**
|
|
131
|
-
* The terminal reason for this reply. `"aborted"` is produced ONLY by the
|
|
132
|
-
* streaming wrapper (`createStreamingChat`), which resolves a client abort
|
|
133
|
-
* with the partial assistant text assembled from the deltas it already
|
|
134
|
-
* forwarded. The non-streaming `ChatProvider.chat` never yields `"aborted"`:
|
|
135
|
-
* it propagates a client abort as a throw, because durable workflow loops —
|
|
136
|
-
* the non-streaming provider's callers — record cancellation only when it
|
|
137
|
-
* surfaces as a thrown exception.
|
|
138
|
-
*/
|
|
139
|
-
readonly finishReason: FinishReason | "aborted";
|
|
140
|
-
readonly rawFinishReason?: string;
|
|
141
|
-
readonly usage?: ChatUsage;
|
|
142
|
-
/**
|
|
143
|
-
* The id of the model this provider instance is bound to — what the caller
|
|
144
|
-
* asked for. Absent when the binding names no id.
|
|
145
|
-
*/
|
|
146
|
-
readonly requestedModelId?: string;
|
|
147
|
-
/**
|
|
148
|
-
* The model id the provider itself reported as having answered. Absent
|
|
149
|
-
* whenever the provider reported none — it is NEVER filled in from
|
|
150
|
-
* `requestedModelId`, because a claim about which model answered is only
|
|
151
|
-
* worth anything when the endpoint actually made it.
|
|
152
|
-
*
|
|
153
|
-
* A value differing from `requestedModelId` is not an error: the pair exists
|
|
154
|
-
* so a consumer can observe an endpoint or proxy serving a different model
|
|
155
|
-
* version than the one configured. Treat the comparison as best-effort
|
|
156
|
-
* diagnostics, never as an invariant.
|
|
157
|
-
*/
|
|
158
|
-
readonly servedModelId?: string;
|
|
159
|
-
/**
|
|
160
|
-
* The AI SDK's `LanguageModel.provider` id, for example `anthropic.messages`.
|
|
161
|
-
* Absent for a bare model-id string, which names no provider.
|
|
162
|
-
*/
|
|
163
|
-
readonly provider?: string;
|
|
164
|
-
}
|
|
91
|
+
};
|
|
92
|
+
/** A text delta of the reply that streams to a reader. */
|
|
165
93
|
export type ChatStreamEvent = {
|
|
166
94
|
readonly type: "text-delta";
|
|
167
95
|
readonly text: string;
|
|
168
|
-
} | {
|
|
169
|
-
readonly type: "done";
|
|
170
|
-
readonly response: ChatResponse;
|
|
171
96
|
};
|
|
172
|
-
|
|
97
|
+
/** The facts of one run that bind a model: the session of its calls, its effort, and whether a reader sees its reply live. */
|
|
98
|
+
export type ModelBinding = {
|
|
99
|
+
readonly session: AgentSession;
|
|
100
|
+
/** Absent: the effort of the provider configuration, then `DEFAULT_REASONING`. */
|
|
101
|
+
readonly reasoning?: ReasoningPolicy;
|
|
102
|
+
/**
|
|
103
|
+
* A reader sees the reply as it streams. A live call retries only before its first output part, and a
|
|
104
|
+
* call with no live reader takes its whole reply inside each attempt.
|
|
105
|
+
*/
|
|
106
|
+
readonly live: boolean;
|
|
107
|
+
/** Called before the wait of each retry of a request inside the retry envelope. */
|
|
108
|
+
readonly onRetry?: (retry: ModelRetry) => void;
|
|
109
|
+
};
|
|
110
|
+
/** One retry of a model request inside the retry envelope of the provider. */
|
|
111
|
+
export type ModelRetry = {
|
|
112
|
+
/** The id of the request. Each retry of one request carries the same id. */
|
|
113
|
+
readonly requestId: string;
|
|
114
|
+
/** The number of this retry, from 1. */
|
|
115
|
+
readonly attempt: number;
|
|
116
|
+
readonly maxRetries: number;
|
|
117
|
+
/** The wait before the next attempt, in milliseconds. */
|
|
118
|
+
readonly delayMs: number;
|
|
119
|
+
/** The HTTP error status of the failed attempt, 400 or higher. Absent for a failure with no error status. */
|
|
120
|
+
readonly status?: number;
|
|
121
|
+
};
|
|
122
|
+
/** The model of one run, under the retry envelope of its provider, and the call settings of each request. */
|
|
123
|
+
export type BoundModel = {
|
|
124
|
+
readonly model: LanguageModelV4;
|
|
125
|
+
readonly settings: {
|
|
126
|
+
readonly maxOutputTokens?: number;
|
|
127
|
+
readonly reasoning: ReasoningPolicy;
|
|
128
|
+
readonly providerOptions?: ProviderOptions;
|
|
129
|
+
};
|
|
130
|
+
readonly telemetry: TelemetryOptions;
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* The model configuration of the harness: one model over one connection. The loop binds it for each run, and
|
|
134
|
+
* the AI SDK drives each request.
|
|
135
|
+
*/
|
|
136
|
+
export type ChatProvider = {
|
|
173
137
|
readonly capabilities: ProviderCapabilities;
|
|
174
|
-
chat(req: ChatRequest, session: AgentSession, signal?: AbortSignal): ResultAsync<ChatResponse, ProviderError>;
|
|
175
|
-
}
|
|
176
|
-
export interface ChatProvider extends AgentChat {
|
|
177
|
-
chatStream(req: ChatRequest, session: AgentSession, signal?: AbortSignal): AsyncIterable<ChatStreamEvent>;
|
|
178
138
|
/**
|
|
179
139
|
* The request-timeout limit that this provider enforces, in milliseconds, or
|
|
180
140
|
* absent when it enforces none. The value bounds each silent interval of a
|
|
181
141
|
* request attempt: the wait until the response starts, and each gap between
|
|
182
|
-
* two content
|
|
142
|
+
* two content parts of a stream. A consumer that scales a deadline reads this
|
|
183
143
|
* value from the provider instance, not from a harness constant.
|
|
184
144
|
*/
|
|
185
145
|
readonly requestTimeoutMs?: number;
|
|
186
|
-
|
|
146
|
+
bind(binding: ModelBinding): BoundModel;
|
|
147
|
+
};
|
|
187
148
|
/**
|
|
188
149
|
* The effective deadline in milliseconds for a provider-bound operation.
|
|
189
150
|
*
|
|
@@ -192,7 +153,7 @@ export interface ChatProvider extends AgentChat {
|
|
|
192
153
|
* a configured request timeout can raise the floor. It cannot lower the floor.
|
|
193
154
|
*/
|
|
194
155
|
export declare function effectiveDeadlineMs(provider: Pick<ChatProvider, "requestTimeoutMs">, floorMs: number, explicitMs?: number): number;
|
|
195
|
-
export
|
|
156
|
+
export type EmbeddingProvider = {
|
|
196
157
|
/**
|
|
197
158
|
* Width of every vector `embed` returns. The write-side index paths create
|
|
198
159
|
* each per-analysis pgvector index at exactly this width (`ensureSearchIndex`),
|
|
@@ -202,5 +163,5 @@ export interface EmbeddingProvider {
|
|
|
202
163
|
*/
|
|
203
164
|
readonly dimensions: number;
|
|
204
165
|
embed(texts: readonly string[], session: AgentSession): ResultAsync<number[][], ProviderError>;
|
|
205
|
-
}
|
|
166
|
+
};
|
|
206
167
|
export type FetchLike = (input: string | URL | Request, init?: RequestInit) => Promise<Response>;
|
|
@@ -6,13 +6,6 @@ export declare const REFERENCE_DATA_CATALOG_VERSION: 1;
|
|
|
6
6
|
export declare const ReferenceArtifactPathSchema: z.ZodString;
|
|
7
7
|
/** Lowercase SHA-256 digest of one artifact's bytes. */
|
|
8
8
|
export declare const ReferenceSha256Schema: z.ZodString;
|
|
9
|
-
/**
|
|
10
|
-
* Logical content format, independent of compression: a `.txt.gz` mapping table
|
|
11
|
-
* is `tsv`, not `gz`. Agents pick a reader from this rather than guessing from
|
|
12
|
-
* the extension, so it stays a free token instead of an enum — a new source must
|
|
13
|
-
* remain cheap to add, and an unrecognized format degrades to "unknown reader"
|
|
14
|
-
* rather than failing catalog validation.
|
|
15
|
-
*/
|
|
16
9
|
export declare const ReferenceArtifactFormatSchema: z.ZodString;
|
|
17
10
|
/**
|
|
18
11
|
* One final file distributed for a reference dataset: a stable install-relative
|
|
@@ -35,12 +28,6 @@ export declare const ReferenceArtifactSchema: z.ZodObject<{
|
|
|
35
28
|
format: z.ZodString;
|
|
36
29
|
contents: z.ZodString;
|
|
37
30
|
}, z.core.$strict>;
|
|
38
|
-
/**
|
|
39
|
-
* Common-name organism the dataset describes, lowercase (`human`, `mouse`, `rat`).
|
|
40
|
-
* Omitted for species-agnostic or multi-species sources. This is the axis a wrong
|
|
41
|
-
* choice is most silently wrong on — human regulons over mouse counts still run —
|
|
42
|
-
* so it is a first-class field rather than something inferred from the id suffix.
|
|
43
|
-
*/
|
|
44
31
|
export declare const ReferenceOrganismSchema: z.ZodString;
|
|
45
32
|
/** Provenance and licensing information for one supported reference dataset. */
|
|
46
33
|
export declare const ReferenceDatasetSchema: z.ZodObject<{
|
|
@@ -128,10 +115,10 @@ export type ReferenceInstallPlanDataset = ReferenceDataset & {
|
|
|
128
115
|
readonly installPath: string;
|
|
129
116
|
};
|
|
130
117
|
/** Deterministic plan; every artifact carries the upstream URL it is fetched from. */
|
|
131
|
-
export
|
|
118
|
+
export type ReferenceInstallPlan = {
|
|
132
119
|
readonly catalogVersion: typeof REFERENCE_DATA_CATALOG_VERSION;
|
|
133
120
|
readonly datasets: readonly ReferenceInstallPlanDataset[];
|
|
134
|
-
}
|
|
121
|
+
};
|
|
135
122
|
/** A requested dataset id was not present in the selected catalog. */
|
|
136
123
|
export declare class UnknownReferenceDatasetError extends Error {
|
|
137
124
|
readonly code: "unknown_reference_dataset";
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { posix as posixPath } from "node:path";
|
|
2
2
|
import { err, ok } from "neverthrow";
|
|
3
|
+
import { presentGet } from "../lib/present.js";
|
|
4
|
+
import { isUnknownArray } from "../lib/unknown-array.js";
|
|
5
|
+
import { parseUnknownRecord } from "../lib/unknown-containers.js";
|
|
3
6
|
import { z } from "zod";
|
|
4
7
|
/** Schema version for the checked-in reference-data catalog. */
|
|
5
8
|
export const REFERENCE_DATA_CATALOG_VERSION = 1;
|
|
9
|
+
// oxlint-disable-next-line eslint-js/no-restricted-syntax -- a dataset id is lowercase segments joined by one separator; the shape is the stable-id rule.
|
|
6
10
|
const SAFE_ID = /^[a-z0-9]+(?:[._-][a-z0-9]+)*$/;
|
|
11
|
+
// oxlint-disable-next-line eslint-js/no-restricted-syntax -- a version is alphanumeric segments joined by one separator; the shape is the path-segment rule.
|
|
7
12
|
const SAFE_VERSION = /^[A-Za-z0-9]+(?:[._-][A-Za-z0-9]+)*$/;
|
|
13
|
+
// oxlint-disable-next-line eslint-js/no-restricted-syntax -- a lowercase SHA-256 digest is 64 hex digits, the fixed digest shape.
|
|
8
14
|
const SHA256 = /^[a-f0-9]{64}$/;
|
|
9
15
|
function isSafeRelativePath(value) {
|
|
10
16
|
if (value.length === 0 || value.includes("\\") || value.startsWith("/"))
|
|
@@ -28,7 +34,9 @@ const ReferenceArtifactUrlSchema = z.url().refine((value) => value.startsWith("h
|
|
|
28
34
|
* remain cheap to add, and an unrecognized format degrades to "unknown reader"
|
|
29
35
|
* rather than failing catalog validation.
|
|
30
36
|
*/
|
|
31
|
-
|
|
37
|
+
// oxlint-disable-next-line eslint-js/no-restricted-syntax -- a format token is lowercase segments joined by one plus sign, the free-token rule the reader table keys on.
|
|
38
|
+
const FORMAT_TOKEN_RE = /^[a-z0-9]+(?:[+-][a-z0-9]+)*$/;
|
|
39
|
+
export const ReferenceArtifactFormatSchema = z.string().regex(FORMAT_TOKEN_RE, "Expected a lowercase format token");
|
|
32
40
|
/**
|
|
33
41
|
* One final file distributed for a reference dataset: a stable install-relative
|
|
34
42
|
* path and the third-party https URL it is fetched from. The catalog carries no
|
|
@@ -56,7 +64,9 @@ export const ReferenceArtifactSchema = z.strictObject({
|
|
|
56
64
|
* choice is most silently wrong on — human regulons over mouse counts still run —
|
|
57
65
|
* so it is a first-class field rather than something inferred from the id suffix.
|
|
58
66
|
*/
|
|
59
|
-
|
|
67
|
+
// oxlint-disable-next-line eslint-js/no-restricted-syntax -- an organism common name is lowercase words joined by a space or hyphen; the shape keeps the search axis one canonical form.
|
|
68
|
+
const ORGANISM_NAME_RE = /^[a-z][a-z0-9]*(?:[ -][a-z0-9]+)*$/;
|
|
69
|
+
export const ReferenceOrganismSchema = z.string().regex(ORGANISM_NAME_RE, "Expected a lowercase organism common name");
|
|
60
70
|
/** Provenance and licensing information for one supported reference dataset. */
|
|
61
71
|
export const ReferenceDatasetSchema = z.object({
|
|
62
72
|
id: z.string().regex(SAFE_ID, "Expected a stable lowercase dataset id"),
|
|
@@ -109,12 +119,19 @@ export const ReferenceDataCatalogSchema = z
|
|
|
109
119
|
export function referenceArtifactKey(dataset, artifact) {
|
|
110
120
|
return `${dataset.id}/${dataset.version}/${artifact.path}`;
|
|
111
121
|
}
|
|
122
|
+
// The walk freezes the original container: a rebuild would freeze a copy and
|
|
123
|
+
// leave the real value mutable. z.custom passes the value through on success, so
|
|
124
|
+
// the check decides "record or array" without producing a second object.
|
|
125
|
+
const FreezableContainer = z.custom((value) => isUnknownArray(value) || parseUnknownRecord(value) !== undefined);
|
|
112
126
|
function deepFreeze(value) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
127
|
+
const parsed = FreezableContainer.safeParse(value);
|
|
128
|
+
if (!parsed.success)
|
|
129
|
+
return value;
|
|
130
|
+
if (Object.isFrozen(parsed.data))
|
|
131
|
+
return value;
|
|
132
|
+
for (const nested of Object.values(parsed.data))
|
|
133
|
+
deepFreeze(nested);
|
|
134
|
+
Object.freeze(parsed.data);
|
|
118
135
|
return value;
|
|
119
136
|
}
|
|
120
137
|
/**
|
|
@@ -2103,7 +2120,7 @@ export function resolveReferenceInstallPlanFromCatalogForTesting(datasetIds, cat
|
|
|
2103
2120
|
return ok({
|
|
2104
2121
|
catalogVersion: catalog.version,
|
|
2105
2122
|
datasets: selectedIds.map((id) => {
|
|
2106
|
-
const dataset = byId
|
|
2123
|
+
const dataset = presentGet(byId, id, "the selected dataset");
|
|
2107
2124
|
return { ...dataset, installPath: `${dataset.id}/${dataset.version}` };
|
|
2108
2125
|
}),
|
|
2109
2126
|
});
|
|
@@ -13,11 +13,11 @@ declare const ReferenceReceiptArtifactSchema: z.ZodObject<{
|
|
|
13
13
|
sha256: z.ZodString;
|
|
14
14
|
}, z.core.$strip>;
|
|
15
15
|
/** The fields of a receipt that identify the installed content. */
|
|
16
|
-
export
|
|
16
|
+
export type ReferenceReceiptContent = {
|
|
17
17
|
readonly datasetId: string;
|
|
18
18
|
readonly datasetVersion: string;
|
|
19
19
|
readonly artifacts: readonly ReferenceReceiptArtifact[];
|
|
20
|
-
}
|
|
20
|
+
};
|
|
21
21
|
/**
|
|
22
22
|
* The identity of the installed bytes, independent of the install time. Consumers outside the
|
|
23
23
|
* harness recompute it, so the input bytes are a contract: the SHA-256 of the compact JSON array
|
|
@@ -93,5 +93,5 @@ export function checkCitationAssertion(reference, expected, resolved) {
|
|
|
93
93
|
if (expected === undefined || expected === resolved) {
|
|
94
94
|
return undefined;
|
|
95
95
|
}
|
|
96
|
-
return { reference, reason: "assertion-failed", detail: `expected ${
|
|
96
|
+
return { reference, reason: "assertion-failed", detail: `expected ${expected} but resolved citation ${resolved}` };
|
|
97
97
|
}
|