omnius 1.0.922 → 1.0.924
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/dist/{providerRegistry.d.ts → _types/backend-vllm/providerRegistry.d.ts} +0 -1
- package/dist/_types/backend-vllm/types.d.ts +209 -0
- package/dist/_types/execution/av/media-capability.d.ts +94 -0
- package/dist/_types/execution/delegation-contract.d.ts +102 -0
- package/dist/_types/execution/evidence.d.ts +68 -0
- package/dist/_types/execution/html-source-evidence.d.ts +65 -0
- package/dist/_types/execution/mcp/types.d.ts +169 -0
- package/dist/_types/execution/mutation-contract.d.ts +102 -0
- package/dist/_types/execution/nol/artifacts.d.ts +39 -0
- package/dist/_types/execution/nol/checkpoint-edits.d.ts +98 -0
- package/dist/_types/execution/nol/distributions.d.ts +128 -0
- package/dist/_types/execution/nol/gguf-checkpoint-edits.d.ts +194 -0
- package/dist/_types/execution/nol/gguf-control-reader.d.ts +224 -0
- package/dist/_types/execution/nol/lora-exports.d.ts +129 -0
- package/dist/_types/execution/nol/neuronary.d.ts +212 -0
- package/dist/_types/execution/nol/pytorch-control-reader.d.ts +143 -0
- package/dist/_types/execution/nol/qwen35-head-sites.d.ts +61 -0
- package/dist/_types/execution/nol/worker-assets.d.ts +82 -0
- package/dist/_types/execution/nol/worker-protocol.d.ts +94 -0
- package/dist/_types/execution/page-content-source.d.ts +40 -0
- package/dist/_types/execution/rapid-computer-use/artifact-store.d.ts +21 -0
- package/dist/_types/execution/rapid-computer-use/contracts.d.ts +320 -0
- package/dist/_types/execution/rapid-computer-use/decision.d.ts +70 -0
- package/dist/_types/execution/rapid-computer-use/desktop-verification.d.ts +23 -0
- package/dist/_types/execution/rapid-computer-use/geometry.d.ts +57 -0
- package/dist/_types/execution/rapid-computer-use/planner.d.ts +78 -0
- package/dist/_types/execution/rapid-computer-use/trace.d.ts +80 -0
- package/dist/_types/execution/rapid-computer-use/visual.d.ts +48 -0
- package/dist/_types/execution/shell-runs.d.ts +78 -0
- package/dist/_types/execution/streamed-web-source.d.ts +64 -0
- package/dist/_types/execution/tools/browser-page-fallback.d.ts +25 -0
- package/dist/_types/execution/tools/network-egress-policy.d.ts +30 -0
- package/dist/_types/execution/tools/pdf-native-tables.d.ts +46 -0
- package/dist/_types/execution/tools/todo-store.d.ts +133 -0
- package/dist/_types/execution/tools/web-fetch.d.ts +57 -0
- package/dist/_types/execution/tools/workboard.d.ts +1223 -0
- package/dist/_types/execution/types.d.ts +549 -0
- package/dist/_types/execution/web-source.d.ts +14 -0
- package/dist/_types/memory/artifactReviewSourceIndex.d.ts +133 -0
- package/dist/_types/memory/contextMemoryLedger.d.ts +213 -0
- package/dist/_types/memory/db.d.ts +12 -0
- package/dist/_types/memory/embeddings.d.ts +36 -0
- package/dist/_types/memory/immutableEvidenceStore.d.ts +165 -0
- package/dist/_types/memory/memoryIngestion.d.ts +65 -0
- package/dist/_types/memory/memoryTypes.d.ts +312 -0
- package/dist/_types/memory/sourceCorpusStore.d.ts +331 -0
- package/dist/_types/memory/structuredMemoryStore.d.ts +105 -0
- package/dist/_types/memory/unifiedMemoryStore.d.ts +127 -0
- package/dist/_types/memory/virtualMemory.d.ts +187 -0
- package/dist/_types/orchestrator/agentic-page-content-receipt.d.ts +20 -0
- package/dist/_types/orchestrator/agentic-web-fetch-receipt.d.ts +20 -0
- package/dist/_types/orchestrator/agenticRunner.d.ts +5216 -0
- package/dist/_types/orchestrator/app-state.d.ts +171 -0
- package/dist/_types/orchestrator/artifactClaimCritic.d.ts +63 -0
- package/dist/_types/orchestrator/artifactQuality.d.ts +15 -0
- package/dist/_types/orchestrator/artifactSemanticIntegrity.d.ts +203 -0
- package/dist/_types/orchestrator/canonical-context-projection.d.ts +254 -0
- package/dist/_types/orchestrator/canonical-source-body-projection.d.ts +51 -0
- package/dist/_types/orchestrator/completion-review-pending.d.ts +24 -0
- package/dist/_types/orchestrator/completionContract.d.ts +103 -0
- package/dist/_types/orchestrator/completionFinalization.d.ts +224 -0
- package/dist/_types/orchestrator/completionLedger.d.ts +429 -0
- package/dist/_types/orchestrator/completionReadiness.d.ts +234 -0
- package/dist/_types/orchestrator/context-admission.d.ts +93 -0
- package/dist/_types/orchestrator/context-dump-retention.d.ts +25 -0
- package/dist/_types/orchestrator/context-fabric.d.ts +133 -0
- package/dist/_types/orchestrator/contextEngine.d.ts +68 -0
- package/dist/_types/orchestrator/contextWindowDump.d.ts +327 -0
- package/dist/_types/orchestrator/convergence-breaker.d.ts +225 -0
- package/dist/_types/orchestrator/convergence-progress.d.ts +66 -0
- package/dist/_types/orchestrator/deliveryCoverage.d.ts +181 -0
- package/dist/_types/orchestrator/document-persistence-goal-binding.d.ts +106 -0
- package/dist/_types/orchestrator/durable-document-worker.d.ts +85 -0
- package/dist/_types/orchestrator/evidenceBranch.d.ts +291 -0
- package/dist/_types/orchestrator/expected-inference-response.d.ts +55 -0
- package/dist/_types/orchestrator/expectedOutcomeContract.d.ts +58 -0
- package/dist/_types/orchestrator/failure-taxonomy.d.ts +36 -0
- package/dist/_types/orchestrator/focusSupervisor.d.ts +436 -0
- package/dist/_types/orchestrator/forced-update-requirement-recovery.d.ts +105 -0
- package/dist/_types/orchestrator/hooks.d.ts +100 -0
- package/dist/_types/orchestrator/inference-pressure.d.ts +61 -0
- package/dist/_types/orchestrator/integrationClosure.d.ts +89 -0
- package/dist/_types/orchestrator/interruption-lifecycle.d.ts +154 -0
- package/dist/_types/orchestrator/live-memory-passages.d.ts +51 -0
- package/dist/_types/orchestrator/liveVirtualContext.d.ts +84 -0
- package/dist/_types/orchestrator/memory-compiler.d.ts +254 -0
- package/dist/_types/orchestrator/memory-consolidation.d.ts +134 -0
- package/dist/_types/orchestrator/model-router.d.ts +17 -0
- package/dist/_types/orchestrator/modelResponseDiagnostics.d.ts +71 -0
- package/dist/_types/orchestrator/nativeRequirementAmendment.d.ts +63 -0
- package/dist/_types/orchestrator/nol/coordinator.d.ts +204 -0
- package/dist/_types/orchestrator/nol/datasets.d.ts +58 -0
- package/dist/_types/orchestrator/nol/discovery.d.ts +286 -0
- package/dist/_types/orchestrator/nol/evaluation.d.ts +59 -0
- package/dist/_types/orchestrator/nol/model-validation.d.ts +198 -0
- package/dist/_types/orchestrator/nol/statistics.d.ts +142 -0
- package/dist/_types/orchestrator/nol/store.d.ts +133 -0
- package/dist/_types/orchestrator/nol/variant-registry.d.ts +292 -0
- package/dist/_types/orchestrator/ollama-context-policy.d.ts +26 -0
- package/dist/_types/orchestrator/personality.d.ts +66 -0
- package/dist/_types/orchestrator/prompt-cache.d.ts +24 -0
- package/dist/_types/orchestrator/remote-inference-fallback.d.ts +224 -0
- package/dist/_types/orchestrator/remote-inference-policy.d.ts +58 -0
- package/dist/_types/orchestrator/request-budget.d.ts +75 -0
- package/dist/_types/orchestrator/requirementCoverage.d.ts +69 -0
- package/dist/_types/orchestrator/reviewedInterpretation.d.ts +111 -0
- package/dist/_types/orchestrator/runEvents.d.ts +115 -0
- package/dist/_types/orchestrator/runtime-rollout.d.ts +63 -0
- package/dist/_types/orchestrator/semanticVerification.d.ts +135 -0
- package/dist/_types/orchestrator/source-wide-extraction.d.ts +202 -0
- package/dist/_types/orchestrator/steeringIntake.d.ts +123 -0
- package/dist/_types/orchestrator/structured-memory-extraction-worker.d.ts +89 -0
- package/dist/_types/orchestrator/structuredMemoryInference.d.ts +62 -0
- package/dist/_types/orchestrator/successful-procedure-memory.d.ts +127 -0
- package/dist/_types/orchestrator/supportedAnswer.d.ts +68 -0
- package/dist/_types/orchestrator/taskEffectEvidence.d.ts +38 -0
- package/dist/_types/orchestrator/taskExecutionSnapshot.d.ts +67 -0
- package/dist/_types/orchestrator/taskObjective.d.ts +310 -0
- package/dist/_types/orchestrator/taskObjectiveContinuation.d.ts +134 -0
- package/dist/_types/orchestrator/taskRequirementReview.d.ts +246 -0
- package/dist/_types/orchestrator/taskRequirements.d.ts +80 -0
- package/dist/_types/orchestrator/taskSemanticAdmission.d.ts +159 -0
- package/dist/_types/orchestrator/taskWorkDelegation.d.ts +147 -0
- package/dist/_types/orchestrator/taskWorkPlan.d.ts +177 -0
- package/dist/_types/orchestrator/telegram-passive-history.d.ts +42 -0
- package/dist/_types/orchestrator/terminalTaskReport.d.ts +91 -0
- package/dist/_types/orchestrator/todoObservability.d.ts +147 -0
- package/dist/_types/orchestrator/tool-exposure-policy.d.ts +100 -0
- package/dist/_types/orchestrator/trajectory-checkpoint.d.ts +159 -0
- package/dist/_types/orchestrator/types.d.ts +185 -0
- package/dist/_types/schemas/dispatch.d.ts +53 -0
- package/dist/_types/schemas/feature-workflow.d.ts +362 -0
- package/dist/_types/schemas/messages.d.ts +15 -0
- package/dist/_types/schemas/nol-assets.d.ts +955 -0
- package/dist/_types/schemas/nol-json.d.ts +2 -0
- package/dist/_types/schemas/nol.d.ts +3995 -0
- package/dist/_types/schemas/patch.d.ts +47 -0
- package/dist/_types/schemas/plan.d.ts +47 -0
- package/dist/_types/schemas/repoProfile.d.ts +116 -0
- package/dist/_types/schemas/retrieval.d.ts +44 -0
- package/dist/_types/schemas/task.d.ts +57 -0
- package/dist/_types/schemas/tools.d.ts +16 -0
- package/dist/_types/schemas/verification.d.ts +31 -0
- package/dist/api/py-embed.js +3353 -1829
- package/dist/assets/nol-checkpoint-editor.py +701 -0
- package/dist/assets/nol-gguf-checkpoint-editor.py +785 -0
- package/dist/assets/nol-gguf-control-reader.py +428 -0
- package/dist/assets/nol-gne-tools-worker.py +425 -0
- package/dist/assets/nol-gne-worker.py +1081 -0
- package/dist/assets/nol-lora-exporter.py +349 -0
- package/dist/assets/nol-pytorch-control-reader.py +470 -0
- package/dist/assets/nol-transformers-nnsight-worker.py +512 -0
- package/dist/assets/nol-transformers-peft-validation-worker.py +385 -0
- package/dist/assets/nol-transformers-peft-worker.py +488 -0
- package/dist/assets/nol-transformers-research-worker.py +472 -0
- package/dist/assets/nol-transformers-worker.py +920 -0
- package/dist/assets/nol-vllm-owned-worker.py +803 -0
- package/dist/assets/nol-vllm-runtime.py +695 -0
- package/dist/assets/nol-vllm-tokenizer.py +93 -0
- package/dist/assets/nol-vllm-worker.py +201 -0
- package/dist/computer-use/configured-planner.d.ts +37 -0
- package/dist/computer-use/configured-point.d.ts +35 -0
- package/dist/computer-use/host-session.d.ts +60 -0
- package/dist/computer-use/runner-ui-port.d.ts +37 -0
- package/dist/computer-use/session-review.d.ts +14 -0
- package/dist/computer-use/task-spec.d.ts +84 -0
- package/dist/discovery.d.ts +16 -2
- package/dist/index.js +2 -2
- package/dist/library.d.ts +94 -10
- package/dist/library.js +137700 -81150
- package/dist/memory-maintenance-worker.js +1676 -511
- package/dist/nol/cpu-control-reader-profile.d.ts +93 -0
- package/dist/nol/cpu-control-reader-service.d.ts +87 -0
- package/dist/nol/cuda-lease.d.ts +111 -0
- package/dist/nol/cuda-mutations.d.ts +34 -0
- package/dist/nol/export-runtime-config.d.ts +114 -0
- package/dist/nol/export-service.d.ts +143 -0
- package/dist/nol/facade.d.ts +147 -0
- package/dist/nol/gguf-cpu-control-reader-profile.d.ts +106 -0
- package/dist/nol/gguf-cpu-control-reader-service.d.ts +91 -0
- package/dist/nol/gguf-model-control-verifier.d.ts +120 -0
- package/dist/nol/gguf-parameter-inventory.d.ts +28 -0
- package/dist/nol/gne-adapter.d.ts +134 -0
- package/dist/nol/gne-agent-evaluation.d.ts +84 -0
- package/dist/nol/gne-profile.d.ts +124 -0
- package/dist/nol/gne-tools-profile.d.ts +148 -0
- package/dist/nol/gne-tools-transport.d.ts +194 -0
- package/dist/nol/model-actions.d.ts +662 -0
- package/dist/nol/model-control-verifier.d.ts +135 -0
- package/dist/nol/model-json-scorer.d.ts +13 -0
- package/dist/nol/model-runtime-config.d.ts +830 -0
- package/dist/nol/model-serving.d.ts +130 -0
- package/dist/nol/model-subject-adapter.d.ts +72 -0
- package/dist/nol/model-validation-factory.d.ts +113 -0
- package/dist/nol/neuronary-catalog.d.ts +130 -0
- package/dist/nol/orphan-custody.d.ts +72 -0
- package/dist/nol/peft-conformance.d.ts +48 -0
- package/dist/nol/peft-control-types.d.ts +137 -0
- package/dist/nol/peft-control-verifier.d.ts +8 -0
- package/dist/nol/peft-model-actions.d.ts +41 -0
- package/dist/nol/peft-model-authority.d.ts +146 -0
- package/dist/nol/peft-model-controls.d.ts +20 -0
- package/dist/nol/peft-model-host.d.ts +47 -0
- package/dist/nol/peft-model-profile.d.ts +161 -0
- package/dist/nol/peft-model-runtime-config.d.ts +174 -0
- package/dist/nol/peft-model-subject-adapter.d.ts +36 -0
- package/dist/nol/peft-validation.d.ts +105 -0
- package/dist/nol/persistent-parameter-inventory.d.ts +32 -0
- package/dist/nol/runtime.d.ts +100 -0
- package/dist/nol/sqlite-store.d.ts +80 -0
- package/dist/nol/transformers-adapter.d.ts +119 -0
- package/dist/nol/transformers-nnsight.d.ts +87 -0
- package/dist/nol/transformers-peft.d.ts +107 -0
- package/dist/nol/transformers-research.d.ts +114 -0
- package/dist/nol/variant-service.d.ts +143 -0
- package/dist/nol/variant-store.d.ts +51 -0
- package/dist/nol/vllm-actions.d.ts +774 -0
- package/dist/nol/vllm-adapter.d.ts +1473 -0
- package/dist/nol/vllm-authority.d.ts +55 -0
- package/dist/nol/vllm-conformance.d.ts +662 -0
- package/dist/nol/vllm-profile.d.ts +850 -0
- package/dist/nol/vllm-protocol.d.ts +1505 -0
- package/dist/nol/vllm-runtime-config.d.ts +120 -0
- package/dist/nol/vllm-runtime.d.ts +34 -0
- package/dist/nol/vllm-startup.d.ts +235 -0
- package/dist/omni-setup-worker.js +3433 -1909
- package/dist/service-version.d.ts +0 -1
- package/dist/tui/async-process.d.ts +27 -0
- package/dist/tui/native/worker.js +3 -1
- package/dist/tui/telegram-action-session-registry.d.ts +136 -0
- package/dist/tui/telegram-cognition-queue.d.ts +154 -0
- package/dist/tui/telegram-context-packet-v2.d.ts +99 -0
- package/dist/tui/telegram-input-ownership.d.ts +78 -0
- package/dist/tui/telegram-turn-contract-v2.d.ts +62 -0
- package/dist/update-worker-runtime.js +4216 -2603
- package/docs/DISCOVERY.json +462 -0
- package/docs/DISCOVERY.md +6 -0
- package/docs/work-orders/evidence/telegram-catch-up-attention-live-20261104.json +743 -0
- package/docs/work-orders/telegram-catch-up-attention-repair-20261104.md +133 -0
- package/npm-shrinkwrap.json +28 -12
- package/package.json +3 -2
|
@@ -83,4 +83,3 @@ export interface ProviderHeaderOptions {
|
|
|
83
83
|
/** Build provider-correct authentication and client headers. */
|
|
84
84
|
export declare function buildProviderHeaders(provider: ProviderDescriptor | ResolvedProviderTransport, options?: ProviderHeaderOptions): Record<string, string>;
|
|
85
85
|
export declare function providerUrl(provider: ResolvedProviderTransport, kind: ProviderPathKind): string;
|
|
86
|
-
//# sourceMappingURL=providerRegistry.d.ts.map
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend-specific types for the vLLM backend implementation.
|
|
3
|
+
* Extends / augments the shared @omnius/schemas types.
|
|
4
|
+
*/
|
|
5
|
+
import type { AgentMessage } from "../schemas/messages.js";
|
|
6
|
+
/**
|
|
7
|
+
* Backend-specific types for the vLLM backend implementation.
|
|
8
|
+
* Extends / augments the shared @omnius/schemas types.
|
|
9
|
+
*/
|
|
10
|
+
import type { ToolCall } from "../schemas/tools.js";
|
|
11
|
+
import type { ProviderProtocol } from "./providerRegistry.js";
|
|
12
|
+
export interface VllmBackendConfig {
|
|
13
|
+
/** Provider endpoint URL. Known providers are detected from this URL. */
|
|
14
|
+
baseUrl: string;
|
|
15
|
+
/** Model name as registered in vLLM */
|
|
16
|
+
model: string;
|
|
17
|
+
/** Optional Bearer token for authenticated deployments */
|
|
18
|
+
apiKey?: string;
|
|
19
|
+
/** Request timeout in milliseconds (default: 60_000) */
|
|
20
|
+
timeoutMs?: number;
|
|
21
|
+
/** Maximum retries on transient network errors (default: 3) */
|
|
22
|
+
maxRetries?: number;
|
|
23
|
+
/** Stable provider id or alias, for example gemini, anthropic, or openai. */
|
|
24
|
+
providerId?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Required for unknown/custom endpoints. Known providers may omit it, but a
|
|
27
|
+
* supplied value must agree with the registry.
|
|
28
|
+
*/
|
|
29
|
+
protocol?: ProviderProtocol;
|
|
30
|
+
/** Deterministic migration hint for pre-protocol saved configurations. */
|
|
31
|
+
legacyBackendType?: string;
|
|
32
|
+
/** Omnius client version inserted into provider-specific telemetry headers. */
|
|
33
|
+
clientVersion?: string;
|
|
34
|
+
}
|
|
35
|
+
/** Kept for backwards-compat with the existing test that imports VllmClient */
|
|
36
|
+
export interface VllmConfig {
|
|
37
|
+
baseUrl: string;
|
|
38
|
+
apiKey?: string;
|
|
39
|
+
model: string;
|
|
40
|
+
maxTokens?: number;
|
|
41
|
+
temperature?: number;
|
|
42
|
+
timeout?: number;
|
|
43
|
+
providerId?: string;
|
|
44
|
+
protocol?: ProviderProtocol;
|
|
45
|
+
legacyBackendType?: string;
|
|
46
|
+
clientVersion?: string;
|
|
47
|
+
}
|
|
48
|
+
export interface ChatMessage {
|
|
49
|
+
role: "system" | "user" | "assistant" | "tool";
|
|
50
|
+
content: string | null;
|
|
51
|
+
/** Tool call id when role === "tool" */
|
|
52
|
+
tool_call_id?: string;
|
|
53
|
+
/** Only present when role === "assistant" and the model requested tool calls */
|
|
54
|
+
tool_calls?: WireToolCall[];
|
|
55
|
+
name?: string;
|
|
56
|
+
}
|
|
57
|
+
export interface WireToolCall {
|
|
58
|
+
id: string;
|
|
59
|
+
type: "function";
|
|
60
|
+
function: {
|
|
61
|
+
name: string;
|
|
62
|
+
/** JSON-serialised arguments */
|
|
63
|
+
arguments: string;
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
export interface ToolDefinition {
|
|
67
|
+
type: "function";
|
|
68
|
+
function: {
|
|
69
|
+
name: string;
|
|
70
|
+
description?: string;
|
|
71
|
+
parameters: Record<string, unknown>;
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export interface ResponseFormat {
|
|
75
|
+
type: "json_schema";
|
|
76
|
+
json_schema: {
|
|
77
|
+
name: string;
|
|
78
|
+
strict?: boolean;
|
|
79
|
+
schema: Record<string, unknown>;
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
export interface ChatCompletionRequest {
|
|
83
|
+
model: string;
|
|
84
|
+
messages: ChatMessage[];
|
|
85
|
+
temperature?: number;
|
|
86
|
+
max_tokens?: number;
|
|
87
|
+
tools?: ToolDefinition[];
|
|
88
|
+
tool_choice?: "auto" | "none" | "required" | {
|
|
89
|
+
type: "function";
|
|
90
|
+
function: {
|
|
91
|
+
name: string;
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
response_format?: ResponseFormat;
|
|
95
|
+
}
|
|
96
|
+
export interface ChatCompletionChoice {
|
|
97
|
+
index: number;
|
|
98
|
+
message: ChatMessage;
|
|
99
|
+
finish_reason: "stop" | "tool_calls" | "length" | "content_filter" | null;
|
|
100
|
+
}
|
|
101
|
+
export interface UsageStats {
|
|
102
|
+
prompt_tokens: number;
|
|
103
|
+
completion_tokens: number;
|
|
104
|
+
total_tokens: number;
|
|
105
|
+
cache_creation_input_tokens?: number;
|
|
106
|
+
cache_read_input_tokens?: number;
|
|
107
|
+
prompt_eval_count?: number;
|
|
108
|
+
}
|
|
109
|
+
export interface ChatCompletionResponse {
|
|
110
|
+
id: string;
|
|
111
|
+
object: "chat.completion";
|
|
112
|
+
created: number;
|
|
113
|
+
model: string;
|
|
114
|
+
choices: ChatCompletionChoice[];
|
|
115
|
+
usage: UsageStats;
|
|
116
|
+
}
|
|
117
|
+
export interface CompletionRequest {
|
|
118
|
+
messages: AgentMessage[];
|
|
119
|
+
tools?: ToolDefinition[];
|
|
120
|
+
responseFormat?: ResponseFormat;
|
|
121
|
+
temperature?: number;
|
|
122
|
+
maxTokens?: number;
|
|
123
|
+
/**
|
|
124
|
+
* Routing hint: prefix hash computed from the conversation prefix.
|
|
125
|
+
* Used by the router for APC (Automatic Prefix Caching) optimisation.
|
|
126
|
+
*/
|
|
127
|
+
prefixHash?: string;
|
|
128
|
+
/**
|
|
129
|
+
* Optional stable memory prefix produced by a memory prefill adapter.
|
|
130
|
+
* Backends without raw KV injection may still benefit from identical
|
|
131
|
+
* prefixes through their native prompt-prefix cache.
|
|
132
|
+
*/
|
|
133
|
+
memoryPrefix?: string;
|
|
134
|
+
/**
|
|
135
|
+
* Weighted memory prefill references. These require backend-specific raw
|
|
136
|
+
* KV/prefill support; OpenAI-compatible HTTP backends generally ignore them.
|
|
137
|
+
*/
|
|
138
|
+
weightedMemoryPrefill?: Array<{
|
|
139
|
+
itemId: string;
|
|
140
|
+
chunkId: string;
|
|
141
|
+
weight: number;
|
|
142
|
+
}>;
|
|
143
|
+
}
|
|
144
|
+
export interface CompletionResult {
|
|
145
|
+
/** Full text response when no tool calls were made */
|
|
146
|
+
content: string | null;
|
|
147
|
+
/** Tool calls requested by the model */
|
|
148
|
+
toolCalls: ToolCall[];
|
|
149
|
+
/** Whether the model's output was cut short due to max_tokens */
|
|
150
|
+
truncated: boolean;
|
|
151
|
+
usage: UsageStats;
|
|
152
|
+
/** Wall-clock milliseconds elapsed for the request */
|
|
153
|
+
latencyMs: number;
|
|
154
|
+
}
|
|
155
|
+
export interface LLMBackend {
|
|
156
|
+
/** Returns true when the backend is reachable and the model is loaded */
|
|
157
|
+
healthCheck(): Promise<boolean>;
|
|
158
|
+
/** Perform a chat completion */
|
|
159
|
+
complete(request: CompletionRequest): Promise<CompletionResult>;
|
|
160
|
+
/** Report backend memory prefill support, if implemented. */
|
|
161
|
+
memoryPrefillCapabilities?(): BackendMemoryPrefillCapability;
|
|
162
|
+
/** Put the backend into sleep / low-power mode */
|
|
163
|
+
sleep(): Promise<void>;
|
|
164
|
+
/** Wake the backend from sleep mode */
|
|
165
|
+
wake(): Promise<void>;
|
|
166
|
+
}
|
|
167
|
+
export interface BackendMemoryPrefillCapability {
|
|
168
|
+
backend: string;
|
|
169
|
+
supportsRawKvPrefill: boolean;
|
|
170
|
+
supportsPrefixCache: boolean;
|
|
171
|
+
supportsWeightedPrefill: boolean;
|
|
172
|
+
strategy: "raw_kv" | "prefix_cache" | "prompt_text" | "none";
|
|
173
|
+
reason?: string;
|
|
174
|
+
}
|
|
175
|
+
export interface MetricsSnapshot {
|
|
176
|
+
/** Running GPU KV-cache utilisation in the range [0, 1] */
|
|
177
|
+
gpuCacheUsage: number;
|
|
178
|
+
/** Number of requests currently waiting in the scheduler queue */
|
|
179
|
+
numWaitingRequests: number;
|
|
180
|
+
/** Number of requests currently being processed */
|
|
181
|
+
numRunningRequests: number;
|
|
182
|
+
/** Total requests fulfilled since the server started */
|
|
183
|
+
totalRequestsCompleted: number;
|
|
184
|
+
/** Raw Prometheus text (unparsed) */
|
|
185
|
+
rawPrometheus: string;
|
|
186
|
+
}
|
|
187
|
+
export interface RoutingDecision {
|
|
188
|
+
/** Selected replica base URL */
|
|
189
|
+
targetUrl: string;
|
|
190
|
+
/** The prefix hash used for the routing decision */
|
|
191
|
+
prefixHash: string;
|
|
192
|
+
/** All candidate URLs that were considered */
|
|
193
|
+
candidates: string[];
|
|
194
|
+
}
|
|
195
|
+
export interface CompletionResponse {
|
|
196
|
+
id: string;
|
|
197
|
+
content: string;
|
|
198
|
+
toolCalls?: Array<{
|
|
199
|
+
id: string;
|
|
200
|
+
name: string;
|
|
201
|
+
arguments: string;
|
|
202
|
+
}>;
|
|
203
|
+
usage: {
|
|
204
|
+
promptTokens: number;
|
|
205
|
+
completionTokens: number;
|
|
206
|
+
totalTokens: number;
|
|
207
|
+
};
|
|
208
|
+
finishReason: "stop" | "tool_calls" | "length" | "error";
|
|
209
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* media-capability.ts — single hardware-capability probe that selects the AV
|
|
3
|
+
* model stack (edge | baseline | forensic, spec §6) and per-adapter device +
|
|
4
|
+
* precision hints (spec §22), so the entity-comprehension system autodetects
|
|
5
|
+
* what it can run instead of hard-coding a deployment.
|
|
6
|
+
*
|
|
7
|
+
* This generalizes the existing per-tool video-scan tier ladder
|
|
8
|
+
* (`~/.omnius/video-scan.json`, tiers extended|standard|reduced|forced_cpu)
|
|
9
|
+
* into ONE selector shared by every AV adapter. Result is cached to
|
|
10
|
+
* `~/.omnius/av-capability.json` (capability metadata stays in the omnius home,
|
|
11
|
+
* NOT the relocatable media store) and re-probed when stale.
|
|
12
|
+
*/
|
|
13
|
+
export type AVStack = "edge" | "baseline" | "forensic";
|
|
14
|
+
export type AVDevice = "cuda" | "cpu";
|
|
15
|
+
export type AVPrecision = "bf16" | "fp16" | "fp32";
|
|
16
|
+
export interface GpuInfo {
|
|
17
|
+
name: string;
|
|
18
|
+
memTotalMiB: number;
|
|
19
|
+
memFreeMiB: number;
|
|
20
|
+
index: number;
|
|
21
|
+
/** Compute capability like "8.0" (A100) or "6.1" (GT 1030); "" if unknown. */
|
|
22
|
+
computeCap?: string;
|
|
23
|
+
}
|
|
24
|
+
/** Whether a GPU's compute capability is usable by the modern torch build. */
|
|
25
|
+
export declare function gpuComputeUsable(computeCap?: string): boolean;
|
|
26
|
+
export interface MediaCapability {
|
|
27
|
+
/** Selected model stack per spec §6. */
|
|
28
|
+
stack: AVStack;
|
|
29
|
+
/** Primary accelerator. */
|
|
30
|
+
accelerator: AVDevice;
|
|
31
|
+
/** Default precision for heavy adapters on the primary accelerator. */
|
|
32
|
+
precision: AVPrecision;
|
|
33
|
+
/** Largest single-GPU VRAM in GiB (0 when CPU-only). */
|
|
34
|
+
vramGiB: number;
|
|
35
|
+
/** Count of usable CUDA GPUs (>= ~8 GiB). */
|
|
36
|
+
gpuCount: number;
|
|
37
|
+
/** All detected GPUs (including small/unusable ones). */
|
|
38
|
+
gpus: GpuInfo[];
|
|
39
|
+
/** Logical CPU cores. */
|
|
40
|
+
cpuCores: number;
|
|
41
|
+
/** Total system RAM in GiB. */
|
|
42
|
+
ramGiB: number;
|
|
43
|
+
/** Free disk (GiB) on the omnius home volume. */
|
|
44
|
+
diskFreeGiB: number;
|
|
45
|
+
/** ffmpeg available on PATH (required for ingest). */
|
|
46
|
+
hasFfmpeg: boolean;
|
|
47
|
+
/** Auto-selected CUDA_VISIBLE_DEVICES — only torch-compatible, ≥8 GiB GPUs
|
|
48
|
+
* (excludes pre-Volta cards like a GT 1030 that hang CUDA init). "" = CPU. */
|
|
49
|
+
cudaVisibleDevices: string;
|
|
50
|
+
/** Human-readable reason for the stack choice. */
|
|
51
|
+
reason: string;
|
|
52
|
+
/** ISO timestamp the probe ran. */
|
|
53
|
+
probedAt: string;
|
|
54
|
+
}
|
|
55
|
+
/** Probe NVIDIA GPUs via nvidia-smi; returns [] when unavailable. */
|
|
56
|
+
export declare function probeGpus(): GpuInfo[];
|
|
57
|
+
/**
|
|
58
|
+
* Select the stack + precision from raw hardware facts. Pure (no I/O) so it is
|
|
59
|
+
* directly unit-testable with synthetic hardware.
|
|
60
|
+
*
|
|
61
|
+
* §6 mapping:
|
|
62
|
+
* - forensic : multi-GPU (>=2 usable) OR a single >=48 GiB GPU — multi-pass,
|
|
63
|
+
* thinking-variant LALM, high-res reinspection.
|
|
64
|
+
* - baseline : one usable GPU (>= ~16 GiB) — V-JEPA2-L/VideoPrism, YOLOE+SAM2,
|
|
65
|
+
* event-triggered 7B VLM/LALM.
|
|
66
|
+
* - edge : small/no GPU — keyframe detectors, lite encoders, CPU fallbacks.
|
|
67
|
+
*/
|
|
68
|
+
export declare function selectStack(facts: {
|
|
69
|
+
gpus: GpuInfo[];
|
|
70
|
+
cpuCores: number;
|
|
71
|
+
ramGiB: number;
|
|
72
|
+
}): {
|
|
73
|
+
stack: AVStack;
|
|
74
|
+
accelerator: AVDevice;
|
|
75
|
+
precision: AVPrecision;
|
|
76
|
+
vramGiB: number;
|
|
77
|
+
gpuCount: number;
|
|
78
|
+
cudaVisibleDevices: string;
|
|
79
|
+
reason: string;
|
|
80
|
+
};
|
|
81
|
+
/** Per-adapter device/precision hints derived from the capability (spec §22). */
|
|
82
|
+
export interface AdapterPlacement {
|
|
83
|
+
device: AVDevice;
|
|
84
|
+
precision: AVPrecision;
|
|
85
|
+
/** Whether the adapter should only run on event windows (cost control). */
|
|
86
|
+
eventTriggered: boolean;
|
|
87
|
+
}
|
|
88
|
+
export declare function adapterPlacement(cap: MediaCapability, role: "video_temporal" | "grounding" | "tracking" | "audio_event" | "audio_lalm" | "video_llm" | "cross_modal" | "asr"): AdapterPlacement;
|
|
89
|
+
/** Full hardware probe (does I/O). */
|
|
90
|
+
export declare function probeCapability(): MediaCapability;
|
|
91
|
+
/** Probe with a cached result (re-probes when older than the TTL or forced). */
|
|
92
|
+
export declare function getMediaCapability(opts?: {
|
|
93
|
+
force?: boolean;
|
|
94
|
+
}): MediaCapability;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* delegation-contract.ts — evidence-bound request and outcome envelopes.
|
|
3
|
+
*
|
|
4
|
+
* Delegation is a semantic boundary, not merely a fresh context window. These
|
|
5
|
+
* compact contracts preserve the parent question, the observations that made
|
|
6
|
+
* the work necessary, and the proof the parent needs back. They are deliberately
|
|
7
|
+
* dependency-free so every spawn surface (in-process, subprocess, explorer,
|
|
8
|
+
* planner, and handoff) can use the same wire shape without a package cycle.
|
|
9
|
+
*/
|
|
10
|
+
export type DelegationKind = "subagent" | "exploration" | "plan" | "decomposition" | "feature" | "recovery" | "handoff";
|
|
11
|
+
export type EvidenceFreshness = "fresh" | "stale" | "unknown";
|
|
12
|
+
export interface DelegationEvidence {
|
|
13
|
+
/** Stable label the generator may cite; never an instruction channel. */
|
|
14
|
+
ref: string;
|
|
15
|
+
detail: string;
|
|
16
|
+
freshness?: EvidenceFreshness;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* A concrete, parent-owned todo/workboard leaf. This is intentionally a data
|
|
20
|
+
* capsule rather than a transcript: a worker receives the current bounded
|
|
21
|
+
* contract, while the parent retains authority to accept its result.
|
|
22
|
+
*/
|
|
23
|
+
export interface DelegationWorkItem {
|
|
24
|
+
cardId: string;
|
|
25
|
+
title: string;
|
|
26
|
+
taskEpoch?: number;
|
|
27
|
+
todoIds?: string[];
|
|
28
|
+
ownedFiles?: string[];
|
|
29
|
+
verifierCommand?: string;
|
|
30
|
+
evidenceRequirements?: string[];
|
|
31
|
+
expectedArtifacts?: string[];
|
|
32
|
+
}
|
|
33
|
+
export interface DelegationBrief {
|
|
34
|
+
schemaVersion: 1;
|
|
35
|
+
kind: DelegationKind;
|
|
36
|
+
/** The exact question or bounded work the child must answer. */
|
|
37
|
+
request: string;
|
|
38
|
+
/** Why this child is needed at this point in the parent trajectory. */
|
|
39
|
+
whyNow: string;
|
|
40
|
+
/** Bounded observations supporting the request. */
|
|
41
|
+
evidence: DelegationEvidence[];
|
|
42
|
+
/** What territory is owned and what is explicitly out of scope. */
|
|
43
|
+
scope: string;
|
|
44
|
+
/** The evidence-bearing result shape the child must return. */
|
|
45
|
+
returnContract: string;
|
|
46
|
+
/** The decision/action this result should unlock for the parent. */
|
|
47
|
+
parentUnblock: string;
|
|
48
|
+
/** Present only for a uniquely identified active todo/workboard leaf. */
|
|
49
|
+
workItem?: DelegationWorkItem;
|
|
50
|
+
/** Optional original child task, retained as reference rather than the brief's thesis. */
|
|
51
|
+
originalTask?: string;
|
|
52
|
+
/** True only when a bounded tool-less grounding pass refined this brief. */
|
|
53
|
+
groundingSource: "model" | "deterministic";
|
|
54
|
+
groundingEvidenceRefs: string[];
|
|
55
|
+
}
|
|
56
|
+
export interface DelegationBriefInput {
|
|
57
|
+
kind: DelegationKind;
|
|
58
|
+
task: string;
|
|
59
|
+
currentIntent?: string;
|
|
60
|
+
whyNow?: string;
|
|
61
|
+
scope?: string;
|
|
62
|
+
returnContract?: string;
|
|
63
|
+
parentUnblock?: string;
|
|
64
|
+
evidence?: DelegationEvidence[];
|
|
65
|
+
workItem?: DelegationWorkItem;
|
|
66
|
+
}
|
|
67
|
+
export interface GeneratedDelegationBrief {
|
|
68
|
+
request: string;
|
|
69
|
+
whyNow?: string;
|
|
70
|
+
scope?: string;
|
|
71
|
+
returnContract?: string;
|
|
72
|
+
parentUnblock?: string;
|
|
73
|
+
evidenceRefs: string[];
|
|
74
|
+
}
|
|
75
|
+
export interface DelegationOutcome {
|
|
76
|
+
schemaVersion: 1;
|
|
77
|
+
status: "completed" | "partial" | "blocked" | "failed" | "unknown";
|
|
78
|
+
summary: string;
|
|
79
|
+
evidence: string[];
|
|
80
|
+
files: string[];
|
|
81
|
+
verification: string[];
|
|
82
|
+
blockers: string[];
|
|
83
|
+
recommendedNextAction: string;
|
|
84
|
+
confidence: "high" | "medium" | "low";
|
|
85
|
+
acceptedFindingIds: string[];
|
|
86
|
+
receiptIds: string[];
|
|
87
|
+
source: "declared" | "derived";
|
|
88
|
+
}
|
|
89
|
+
export declare function sanitizeDelegationText(value: unknown, max?: number): string;
|
|
90
|
+
export declare function buildDelegationBrief(input: DelegationBriefInput): DelegationBrief;
|
|
91
|
+
/** Render the model-facing child request. Safe to include inside another prompt. */
|
|
92
|
+
export declare function renderDelegationBrief(brief: DelegationBrief, maxChars?: number): string;
|
|
93
|
+
/** Prompt for the optional bounded model pass that refines a deterministic brief. */
|
|
94
|
+
export declare function buildDelegationBriefGroundingPrompt(brief: DelegationBrief): string;
|
|
95
|
+
/** Parse a bounded model refinement. Null is a safe deterministic fallback. */
|
|
96
|
+
export declare function parseGeneratedDelegationBrief(raw: unknown, fallback: DelegationBrief): GeneratedDelegationBrief | null;
|
|
97
|
+
export declare function mergeGeneratedDelegationBrief(fallback: DelegationBrief, generated: GeneratedDelegationBrief | null | undefined): DelegationBrief;
|
|
98
|
+
/** Instruction appended to every worker's fold-back contract. */
|
|
99
|
+
export declare function delegationOutcomeInstruction(): string;
|
|
100
|
+
/** Parse a worker's declared outcome, falling back to a conservative evidence extract. */
|
|
101
|
+
export declare function parseDelegationOutcome(raw: unknown): DelegationOutcome;
|
|
102
|
+
export declare function renderDelegationOutcome(outcome: DelegationOutcome, maxChars?: number): string;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export type EvidenceSurface = "browser" | "desktop" | "filesystem" | "shell" | "network" | "memory";
|
|
2
|
+
export type EvidenceVerificationStatus = "proven" | "unchanged" | "contradicted" | "inconclusive" | "blocked";
|
|
3
|
+
export interface EvidenceObservation {
|
|
4
|
+
capturedAtIso: string;
|
|
5
|
+
screenshotPath?: string;
|
|
6
|
+
screenshotHash?: string;
|
|
7
|
+
width?: number;
|
|
8
|
+
height?: number;
|
|
9
|
+
url?: string;
|
|
10
|
+
title?: string;
|
|
11
|
+
domSummaryHash?: string;
|
|
12
|
+
readableTextHash?: string;
|
|
13
|
+
visibleTextExcerpt?: string;
|
|
14
|
+
consoleErrorCount?: number;
|
|
15
|
+
pageErrorCount?: number;
|
|
16
|
+
networkFailureCount?: number;
|
|
17
|
+
gateKind?: string;
|
|
18
|
+
gateConfidence?: number;
|
|
19
|
+
gateEvidence?: string[];
|
|
20
|
+
metadata?: Record<string, unknown>;
|
|
21
|
+
}
|
|
22
|
+
export interface EvidenceDelta {
|
|
23
|
+
screenshotChanged?: boolean;
|
|
24
|
+
urlChanged?: boolean;
|
|
25
|
+
titleChanged?: boolean;
|
|
26
|
+
domChanged?: boolean;
|
|
27
|
+
textChanged?: boolean;
|
|
28
|
+
newVisibleText?: string;
|
|
29
|
+
removedVisibleText?: string;
|
|
30
|
+
errorDelta?: number;
|
|
31
|
+
metadata?: Record<string, unknown>;
|
|
32
|
+
}
|
|
33
|
+
export interface EvidenceVerification {
|
|
34
|
+
status: EvidenceVerificationStatus;
|
|
35
|
+
confidence: number;
|
|
36
|
+
reason: string;
|
|
37
|
+
nextSuggestedObservation?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface EvidenceEvent {
|
|
40
|
+
schemaVersion: 1;
|
|
41
|
+
id: string;
|
|
42
|
+
sessionId?: string;
|
|
43
|
+
createdAtIso: string;
|
|
44
|
+
monotonicMs?: number;
|
|
45
|
+
tool: string;
|
|
46
|
+
action: string;
|
|
47
|
+
surface: EvidenceSurface;
|
|
48
|
+
target?: string;
|
|
49
|
+
claim?: string;
|
|
50
|
+
before?: EvidenceObservation;
|
|
51
|
+
after?: EvidenceObservation;
|
|
52
|
+
delta?: EvidenceDelta;
|
|
53
|
+
verification?: EvidenceVerification;
|
|
54
|
+
staleAfterTurn?: number;
|
|
55
|
+
staleAfterActionCount?: number;
|
|
56
|
+
metadata?: Record<string, unknown>;
|
|
57
|
+
}
|
|
58
|
+
export declare function sha256Text(text: string): string;
|
|
59
|
+
export declare function sha256Buffer(buffer: Buffer): string;
|
|
60
|
+
export declare function sha256FileIfExists(path: string | undefined): string | undefined;
|
|
61
|
+
export declare function clipEvidenceText(text: unknown, maxChars?: number): string | undefined;
|
|
62
|
+
export declare function createEvidenceObservation(input: Omit<EvidenceObservation, "capturedAtIso"> & {
|
|
63
|
+
capturedAtIso?: string;
|
|
64
|
+
}): EvidenceObservation;
|
|
65
|
+
export declare function createEvidenceEvent(input: Omit<EvidenceEvent, "schemaVersion" | "id" | "createdAtIso"> & {
|
|
66
|
+
id?: string;
|
|
67
|
+
createdAtIso?: string;
|
|
68
|
+
}): EvidenceEvent;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/** UTF-16 source offsets, zero-based and end-exclusive, in the complete HTML. */
|
|
2
|
+
export interface HtmlSourceRange {
|
|
3
|
+
charStart: number;
|
|
4
|
+
charEndExclusive: number;
|
|
5
|
+
}
|
|
6
|
+
/** Decoded/whitespace-normalized HTML text; the range locates its containing source. */
|
|
7
|
+
export interface HtmlSourceText {
|
|
8
|
+
text: string;
|
|
9
|
+
sourceRange?: HtmlSourceRange;
|
|
10
|
+
partial: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface HtmlSourceImage {
|
|
13
|
+
id: string;
|
|
14
|
+
relationship: "figure" | "inline_image" | "page_representative" | "linked_image" | "structured_image";
|
|
15
|
+
urls: ReadonlyArray<{
|
|
16
|
+
url: string;
|
|
17
|
+
attribute: string;
|
|
18
|
+
sourceRange?: HtmlSourceRange;
|
|
19
|
+
}>;
|
|
20
|
+
omittedUrls?: number;
|
|
21
|
+
sourceRange?: HtmlSourceRange;
|
|
22
|
+
caption?: HtmlSourceText;
|
|
23
|
+
alt?: HtmlSourceText;
|
|
24
|
+
credits: ReadonlyArray<HtmlSourceText>;
|
|
25
|
+
/** Explicit image/figure fields only, never inherited from page publication dates. */
|
|
26
|
+
imageDates: ReadonlyArray<{
|
|
27
|
+
property: string;
|
|
28
|
+
value: string;
|
|
29
|
+
sourceRange?: HtmlSourceRange;
|
|
30
|
+
}>;
|
|
31
|
+
}
|
|
32
|
+
export interface HtmlSourceEvidence {
|
|
33
|
+
schema: "omnius.html-source-evidence.v1";
|
|
34
|
+
responseSha256: string;
|
|
35
|
+
finalUrl: string;
|
|
36
|
+
baseUrl: string;
|
|
37
|
+
page: {
|
|
38
|
+
title?: HtmlSourceText;
|
|
39
|
+
dates: ReadonlyArray<{
|
|
40
|
+
kind: "published" | "modified";
|
|
41
|
+
value: string;
|
|
42
|
+
sourceRange?: HtmlSourceRange;
|
|
43
|
+
}>;
|
|
44
|
+
};
|
|
45
|
+
/** Complete static body text, including every article/main/table/code section.
|
|
46
|
+
* This is not JavaScript execution or a claim about live browser visibility. */
|
|
47
|
+
textCoverage: {
|
|
48
|
+
scope: "all_static_body_text";
|
|
49
|
+
partial: false;
|
|
50
|
+
rendered: false;
|
|
51
|
+
excludedElements: ReadonlyArray<"script" | "style" | "template">;
|
|
52
|
+
includedAttributes: ReadonlyArray<string>;
|
|
53
|
+
};
|
|
54
|
+
/** Legacy field name; contains the whole static body, not a first-article preview. */
|
|
55
|
+
article: HtmlSourceText & {
|
|
56
|
+
selection: "article" | "main" | "body";
|
|
57
|
+
matchingArticles: number;
|
|
58
|
+
};
|
|
59
|
+
images: ReadonlyArray<HtmlSourceImage>;
|
|
60
|
+
omittedImages: number;
|
|
61
|
+
}
|
|
62
|
+
/** Static quoted evidence only: no execution, network access, relevance judgement or authority grant. */
|
|
63
|
+
export declare function extractHtmlSourceEvidence(body: string, finalUrl: string): HtmlSourceEvidence | undefined;
|
|
64
|
+
/** Bounded model view. URLs are never cut; decoded text excerpts and omissions are explicit. */
|
|
65
|
+
export declare function renderHtmlSourceEvidence(evidence: HtmlSourceEvidence, maxChars: number, includeArticle?: boolean): string;
|