import type { ActivationDecision, CanActivateResult } from './activation/activation-types.js'; import type { PIArtifactRecord } from './internalization/pi-artifact.js'; import type { RuleHostInput, RuleHostResult } from './internalization/rule-host-contracts.js'; import type { RuleHostHelpers } from './internalization/rule-host-helpers.js'; import type { RefinerSandboxResult } from './internalization/refiner-sandbox-wrapper.js'; export type MvpChannel = 'prompt' | 'code_tool_hook' | 'defer_archive'; export declare const STORY_A_CHANNELS: readonly MvpChannel[]; export interface StoryADemoStage { name: StoryADemoStageName; status: 'passed' | 'failed' | 'degraded' | 'skipped'; reason?: string; nextAction?: string; evidenceRef?: string; evidence?: Record; } export type StoryADemoStageName = 'evidence_seed' | 'principle_proposal' | 'owner_review' | 'activation' | 'follow_up_observation' | 'rollback_proof'; export interface StoryADemoChannelOutcome { channel: MvpChannel; status: 'passed' | 'failed' | 'degraded'; activationDecision: ActivationDecision; canActivateResult: CanActivateResult; evidence: Record; evidenceSource: string; principleId: string; failureReason?: string; nextAction?: string; } export interface StoryADemoInputValidationFailure { reason: string; message: string; nextAction: string; unknownChannels?: string[]; } export interface StoryADemoResult { status: 'passed' | 'failed' | 'degraded'; generatedAt: string; narrative: string; storyDescription: string; stages: StoryADemoStage[]; channelOutcomes: StoryADemoChannelOutcome[]; isRuntimeV2Exclusive: boolean; workspaceDir?: string; inputValidationFailure?: StoryADemoInputValidationFailure; } export interface StoryADemoOptions { channels?: MvpChannel[]; runId?: string; } export declare function makeRunId(opts: StoryADemoOptions): string; export declare function makePrincipleArtifactRecord(runId: string): PIArtifactRecord; export declare function makeRuleArtifactRecord(runId: string, principleRecord: PIArtifactRecord): PIArtifactRecord; export declare function computeDemoStatus(stages: StoryADemoStage[], outcomes: StoryADemoChannelOutcome[]): 'passed' | 'failed' | 'degraded'; export declare function createDemoSandboxEvaluate(implementationCode: string): (input: RuleHostInput, helpers: RuleHostHelpers) => RuleHostResult; export declare function evaluateDemoGoldenTrace(ruleRecord: PIArtifactRecord): RefinerSandboxResult; export declare function buildFollowUpObservation(channel: MvpChannel, outcome: StoryADemoChannelOutcome, sandboxResult?: RefinerSandboxResult): { status: 'passed' | 'degraded'; evidence: Record; }; export interface DemoNarrativeInput { runId: string; principleId: string; channels: MvpChannel[]; channelOutcomes: StoryADemoChannelOutcome[]; } export declare function buildDemoNarrative(input: DemoNarrativeInput): string; export declare function validateDemoChannels(channels: MvpChannel[]): StoryADemoInputValidationFailure | null; //# sourceMappingURL=story-a-demo.d.ts.map