import { type CadenceConfig } from '@manehorizons/cadence-types'; /** * Pure fixtures for the `cadence tutorial` sandbox (phase 129). Kept separate * from the command shell so the draft, sources, and config are unit-testable * and the walkthrough can never drift from the artifacts it stages. * * The arc the tutorial stages: a task is marked DONE and `sum.mjs` exists, but * no test references AC-1 — so settle's `test-coverage` gate REFUSES, naming * AC-1. Adding the real `sum.test.mjs` makes `build-test-must-pass` execute * `node --test` for real and the loop close. Nothing here is tutorial-specific * cheating: the verdict is never hand-asserted and the coverage gate is never * waved through. */ /** The sandbox demo phase coordinates (matches the historical 00-01 id). */ export declare const DEMO_PHASE = "00-demo"; export declare const DEMO_NUM = "01"; export declare const DEMO_ID: string; /** Implementation written at BUILD (before any test exists — stages the lie). */ export declare const IMPL_FILE = "sum.mjs"; /** The real test written at FIX (references AC-1 and genuinely runs). */ export declare const TEST_FILE = "sum.test.mjs"; /** * Sandbox config: `solo`'s gentle loop posture, but `profile: 'standard'` so the * `test-coverage` gate fires at the demo's `quick-fix` tier, plus a real * offline `testCommand` so `build-test-must-pass` actually executes the test. * `testGlobs` is `**\/*.test.mjs` to match the root-level sandbox test. The * walkthrough never hand-asserts a verdict and never waves the coverage gate * through — the gates decide on real state alone. */ export declare const SANDBOX_CONFIG: CadenceConfig; /** `sum.mjs` — the genuine, minimal implementation. */ export declare const SUM_IMPL = "export const sum = (a, b) => a + b;\n"; /** * `sum.test.mjs` — a real `node:test` that references AC-1 and asserts the sum. * Both the AC-1 token (for the coverage gate) and a passing assertion (for the * build-test gate via `node --test`) are required to close the loop honestly. */ export declare const SUM_TEST = "import { test } from 'node:test';\nimport assert from 'node:assert/strict';\nimport { sum } from './sum.mjs';\n\ntest('AC-1: sum(a, b) returns a + b', () => {\n assert.equal(sum(2, 3), 5);\n assert.equal(sum(-1, 1), 0);\n});\n"; /** * Render the sum-based demo DRAFT — a coherent quick-fix phase with one * objective, one genuinely test-verifiable AC, and one task linked to it. * Pure: `(phase, num) → { id, content }`. */ export declare function renderSumDraft(phase?: string, num?: string): { id: string; content: string; }; //# sourceMappingURL=fixtures.d.ts.map