import type { AgentResult, RunnerErrorEnvelope, TaskInput } from '@cutie-crypto/connector-core'; import type { ExternalBacktestSubmitConfig } from './backtest'; type JsonObject = Record; export declare const STRATEGY_PAPER_TICK_REQUEST_SCHEMA = "cutie.strategy_paper_tick_request.v1"; export declare const STRATEGY_PAPER_TICK_RESULT_SCHEMA = "cutie.strategy_paper_tick_result.v1"; export declare const STRATEGY_KERNEL_STATE_SCHEMA = "cutie.strategy_kernel_state.v1"; export interface StrategyPaperTickArtifact { artifact_id: string; artifact_version_id: string; version_no: number; spec_hash: string; manifest_hash: string; artifact_hash: string; } export interface StrategyPaperTickTick { bar_open_at: number; window_start_at: number; execution_start_at: number; } export interface StrategyPaperTickRequest { schema: typeof STRATEGY_PAPER_TICK_REQUEST_SCHEMA; execution_mode: 'paper_tick'; paper_run_id: string; artifact: StrategyPaperTickArtifact; strategy_spec: JsonObject; artifact_manifest: JsonObject; execution_params: JsonObject & { provider_tool_id: string; symbol: string; }; tick: StrategyPaperTickTick; state: JsonObject | null; prev_state_hash: string | null; expected_capability_hash: string; expected_provider_revision: string; dispatch_nonce: string; result_contract: { result_schema: typeof STRATEGY_PAPER_TICK_RESULT_SCHEMA; coverage_schema: 'cutie.strategy_coverage_manifest.v1'; }; } export interface StrategyPaperTickCallbackFields { paper_tick_result_json: string; dispatch_nonce: string; connector_version: string; next_state_hash_recomputed: string; decisions_hash_recomputed: string; result_hash_recomputed: string; } /** * SPEC §17.5:探测键只能用本 schema 独有字段——schema 前缀 + execution_mode * 显式值判定,**不做键集启发式**(2026-07-19 historical_replay 探测键回归的 * 教训:键存在性检查会把语义不相干的字段共现误判成 intent)。 */ export declare function isStrategyPaperTickRequestIntent(value: unknown): boolean; /** * SPEC §17.3:cutie.strategy_paper_tick_request.v1 顶层恰好十四键校验,含 * artifact/tick/result_contract 嵌套形状、execution_params 与 §6.2 同构、 * hash 格式、decimal 串格式,以及 state/prev_state_hash 一致性(同 §6 强度)。 */ export declare function validateStrategyPaperTickRequest(value: unknown): string | null; export declare function getStrategyPaperTickRequest(value: unknown): StrategyPaperTickRequest | undefined; /** * SPEC §17.4:cutie.strategy_paper_tick_result.v1 顶层恰好十五键校验,含 * closed_trades 逐项十二键 + exit_kind 四值白名单,并对 next_state_hash / * coverage_manifest_hash 做独立重算比对(同 §6 强度),identity 字段与 * `request` 交叉核对。 */ export declare function validateStrategyPaperTickResult(value: unknown, request: StrategyPaperTickRequest): string | null; /** * SPEC §17.5:成功回传形状(冻结)。校验通过后独立重算 next_state / decisions / * 整体回执三个 canonical hash,供 Server 与 Provider 三方对账; * `paper_tick_result_json` 原样序列化 Provider 回执,不改写任何字段。 */ export declare function buildStrategyPaperTickCallbackFields(response: JsonObject, request: StrategyPaperTickRequest, connectorVersion: string): { fields?: StrategyPaperTickCallbackFields; issue?: string; }; /** * 与 isBacktestRunTask 同一 OR 判定理由(backtest.ts L2 注释):scene/task_type * 任一命中即路由,防止只带其一的 server 版本落进普通聊天分支。 */ export declare function isStrategyPaperTickTask(input: TaskInput): boolean; /** * strategy_paper_tick task_type 处理入口。SPEC §17.5 义务:显式判定 * (isStrategyPaperTickRequestIntent)、与 §6 同强度结构校验/hash 重算 * (validateStrategyPaperTickRequest/Result)、成功回传冻结六字段 * (buildStrategyPaperTickCallbackFields)、失败走既有 connector task 错误通道 * (AGENT_REJECTED/RUNNER_FAILURE/RUNNER_UNAVAILABLE,不新造 error_type)。 */ export declare function handleStrategyPaperTickTask(input: TaskInput, config: ExternalBacktestSubmitConfig): Promise; export {};