import { Diagnostic } from '@spintax/core'; /** * Canonical LLM Spintax authoring prompt — spec `docs/spec-llm-authoring-prompt.md`. * * ONE prompt, shared by every surface (Telegram bot, n8n node, playground, API), so that a * template drafted anywhere is drafted the same way. Product content, deliberately NOT part of * `@spintax/core` — the engine must not grow authoring opinions (spec §2.2). * * The engine is a RUNTIME dependency for exactly one thing: plural arity. This package used to keep * its own copy of the 3-form language table to stay dependency-free, and the copy drifted twice — * once in content (a locale added to the engine and not here) and once in shape (`slice(0, 2)` * instead of the engine's normalization, which disagrees on any 3-letter tag). A prompt that * disagrees with the engine about arity teaches templates the engine then rejects, which is the one * failure this package exists to prevent. Weightlessness lost to correctness, deliberately. */ /** Bump when the prompt text changes in a way that can change model output. */ declare const PROMPT_VERSION = "6"; type VariationLevel = 'conservative' | 'balanced' | 'aggressive'; /** * Length and tone of ONE block of copy — nothing else. * * `landing` is "a headline plus one supporting sentence", not landing-page markup; every channel, * `generic` included, describes short copy. The prompt never emits markdown or HTML (hard rule 4) * and no option relaxes that. A host that needs structure — an article of `

` / `

` / `