Skip to content

[KT-153] externaliser les prompts en Markdown (include_str!) et finaliser/délabelliser le prompt Drift #175

Description

@DocRoms

Context

Issu de la même review externe (room 0.9.3, msg 10, 2026-07-30), faits vérifiés :

  • Les prompts d'audit vivent en string literals Rust échappés (mod.rs = 152 Ko, full.rs = 174 Ko, \n échappés partout) : illisible en diff, hostile aux contributions non-Rust, bugs d'escaping garantis à terme. include_str! n'est utilisé aujourd'hui que pour l'auto-inclusion de sources dans un test (mod.rs l.1271-1273). Refacto : include_str!("prompts/step8-tech-debt.md") — embarquement compile-time conservé, prompts éditables/reviewables en Markdown. Attention : les dizaines de tests de propriétés de prompts (security_prompt_never_pulls_secret_values…, force du repo à préserver) doivent continuer de lire les mêmes constantes.
  • Le prompt Drift s'auto-déclare « placeholder body, content lands in S2.D3 » (mod.rs l.603, verbatim, avec un test l.1337 qui verrouille l'état placeholder), alors que le Drift est présenté comme lançable standalone. À trancher : livrer le vrai corps (S2.D3) ou retirer la mention placeholder et assumer le diff de checksums comme comportement documenté.

Definition of Done

  • Les prompts d'audit vivent dans des fichiers .md embarqués par include_str!, diff lisible, zéro changement de comportement (tests de propriétés de prompts inchangés et verts)
  • Le prompt Drift ne s'auto-déclare plus placeholder : corps réel livré OU comportement checksum assumé et documenté (test l.1337 mis à jour en conscience)

Tracking

  • Kronn planning task: KT-153
  • Planning status at migration: idea
  • Priority: normal
  • Target: after 0.9.6

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions