# Annexe — Scénario 3 : « Tempo a filé » (webtoon, 12 cases)

Troisième scénario de démonstration de Broc. C'est un **épisode de webtoon** (`format: toon`), une
petite aventure dans un décor récurrent de la bible : **La Cave du Bouquet** (`set-cave-bouquet`),
avec un détour par **La Rue de la Serre** (`set-rue-serre`).

**Statut.** Ce document est un **brouillon de travail**, pas un fichier de récit. Il suit la bible
(`sites/plans/pages/annexes/broc/bible.md`), qui fait foi. Ce qui ne vient pas de l'image de
référence est marqué `inferred` (bible, préambule) : l'histoire, les répliques, Mila et Tempo.
Lieux, artistes et personnes sont fictifs ; le seul nom réel est « lebrocoli.fr » (bible §10, règle
5). Le jumeau JSON reste un **brouillon jusqu'à P16** (schémas `BibleSource` et attributs de scène
communs, plan 14 D3 et D4). Broc n'a **ni smoking, ni casquette, ni aucun vêtement ou accessoire**
(bible §1 et §2.5).

## 1. Fiche

| Champ             | Valeur                                                                                                                                                                   |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Titre             | **Tempo a filé** (3 mots, Unbounded, bible §12)                                                                                                                          |
| Série             | « Les soirées de Broc », épisode 3                                                                                                                                       |
| Objectif          | montrer le **format `toon`** de bout en bout avec un personnage de bible : 12 cases, bulles en lettrage généré, poses de la planche, décors vérifiés, prompts en données |
| Objectif narratif | faire aimer la Cave du Bouquet et l'idée « le concert, ça se vit sur place », sans aucune info pratique inventée                                                         |
| Public            | lecteurs de lebrocoli.fr sur mobile (15–40 ans, sorties, jazz), lecture au scroll en moins de 2 minutes ; tout public, sans prérequis musical                            |
| Format principal  | `toon` (P7) : la lecture verticale au pouce est la forme naturelle d'une petite aventure en cases ; le lettrage est du texte, donc traduisible et accessible             |
| Formats dérivés   | `motion` 9:16 par le pont toon → motion (P7, W4) ; `stories` et `deck` réécrits à la main (pas de pont fermé depuis `toon`) ; `book` en recueil plus tard (§8)           |
| Langues           | `fr` (source), `en` (fichier de textes par `id`, §4.3). Les images sont partagées entre langues                                                                          |
| Gabarit de beats  | `broc-sortie` : `hook → context → tension → payoff → call` (bible §10)                                                                                                   |
| Poses utilisées   | les **9** lignes de `codex-pet-v1`, chacune au moins une fois (§3.2)                                                                                                     |
| Durée de lecture  | environ 75 s au scroll ; 58 s en vidéo 9:16 (§3)                                                                                                                         |

## 2. Pitch

Ce soir, à la Cave du Bouquet, le Trio Lorem attend le signal de **Tempo**, le petit métronome en
bois qui donne toujours le départ du premier morceau. Un courant d'air, une porte entrouverte :
Tempo a filé. Broc remonte la Rue de la Serre en suivant un tic-tac, se prend la couronne dans les
guirlandes, et retrouve le fugueur planté devant une vitrine pleine de métronomes. Retour en
courant, premier set lancé à temps, et un Broc qui, au fond de la salle, cache un peu la vue.

Ressorts de la bible : la couronne qui gêne (§3, ressort comique principal, toujours aux dépens de
Broc) ; Broc rebondit après `failed` (§9) ; Mila, contrepoint calme (§8) ; Tempo, muet, qui « parle
» par son balancier (§8).

## 3. Découpage case par case

Largeur de référence 800 px (plan 08 §2). Hauteurs : 1000 (4:5), 1200 (2:3) ou 1422 (9:16). La
**durée** est celle du plan vidéo produit par le pont toon → motion (lecture au scroll : libre). La
**transition** est la gouttière après la case en lecture web, et l'effet du plan en motion.

### 3.1 Tableau

| #   | `id`  | Beat      | Décor, cadrage                              | Pose (`codex-pet-v1`) | Texte à l'écran (encart, sfx)                                              | Réplique (bulle)                                                                                    | Voix off (`:::notes`, motion)                              | Haut. | Durée | Transition                               |
| --- | ----- | --------- | ------------------------------------------- | --------------------- | -------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- | ----- | ----- | ---------------------------------------- |
| 1   | `c01` | `hook`    | `set-cave-bouquet`, `wide`                  | `waving`              | encart « La Cave du Bouquet, juste avant le concert. »                     | Broc : « Salut ! Ce soir, le Trio Lorem joue ici. Je t'ai gardé une place. »                        | Ce soir, à la Cave du Bouquet, tout est prêt. Ou presque.  | 1422  | 5 s   | gouttière 120 ; panoramique vers le bas  |
| 2   | `c02` | `context` | `set-cave-bouquet`, `medium` (piano)        | `review`              | —                                                                          | Mila : « Tempo donne le départ. Comme toujours. » / Broc : « Il bat la mesure mieux que personne. » | Tempo, le métronome, lance toujours le premier morceau.    | 1200  | 6 s   | gouttière 60 (même lieu, même instant)   |
| 3   | `c03` | `context` | `set-cave-bouquet`, `wide` (porte)          | `idle`                | encart « Personne ne voit Tempo descendre du piano. » ; sfx « tic… tac… »  | —                                                                                                   | Un courant d'air. Une porte entrouverte.                   | 1200  | 5 s   | gouttière 160 (ellipse)                  |
| 4   | `c04` | `tension` | `set-cave-bouquet`, `close` (piano vide)    | `failed`              | —                                                                          | Mila : « Où est Tempo ? » / Broc : « Oups. Le piano est vide. »                                     | Le piano est vide. Sans Tempo, pas de premier morceau.     | 1000  | 5 s   | gouttière 40 ; coupe sèche               |
| 5   | `c05` | `tension` | `set-cave-bouquet`, `stairs` (escalier)     | `running-right`       | —                                                                          | Broc : « Pas de panique, je le retrouve ! »                                                         | Broc ne panique pas. Il file.                              | 1000  | 4 s   | gouttière 200 ; balayage vers la droite  |
| 6   | `c06` | `tension` | `set-rue-serre`, `wide`                     | `waiting`             | sfx « tic » (petit, au loin)                                               | Broc (pensée) : « Écoute… un tic-tac, quelque part. »                                               | Dans la Rue de la Serre, il tend l'oreille.                | 1422  | 6 s   | gouttière 80 ; panoramique lent          |
| 7   | `c07` | `tension` | `set-rue-serre`, `medium` (guirlandes)      | `running`             | —                                                                          | Broc : « Ma couronne s'accroche partout. Ça pousse un peu trop, là-haut. »                          | Il cherche partout. Sa couronne, elle, s'accroche partout. | 1200  | 5 s   | gouttière 80                             |
| 8   | `c08` | `tension` | `set-rue-serre`, `vitrine`                  | `review`              | encart « Tempo, bien planté devant la vitrine. » ; sfx « tic tac tic tac » | Broc : « Te voilà. Tu voulais voir la famille ? »                                                   | Le voilà, devant une vitrine pleine de métronomes.         | 1200  | 6 s   | gouttière 120                            |
| 9   | `c09` | `tension` | `set-rue-serre`, `wide` (retour)            | `running-left`        | —                                                                          | Broc : « On rentre à la fraîche. Le trio t'attend. »                                                | Retour en vitesse. Le trio attend toujours.                | 1000  | 4 s   | gouttière 200 ; balayage vers la gauche  |
| 10  | `c10` | `payoff`  | `set-cave-bouquet`, `medium` (piano, scène) | `jumping`             | sfx « TIC TAC » (grand)                                                    | Mila : « Pile à temps. » / Broc : « Et c'est parti pour le premier set ! »                          | Tempo reprend sa place. Le premier set commence.           | 1422  | 6 s   | gouttière 60 ; zoom léger                |
| 11  | `c11` | `payoff`  | `set-cave-bouquet`, `wide` (salle, dos)     | `idle`                | —                                                                          | Broc : « Désolé pour le rang de derrière. Je ne peux pas enlever ma tête. »                         | Au fond de la salle, Broc écoute. Et cache un peu la vue.  | 1200  | 5 s   | gouttière 120                            |
| 12  | `c12` | `call`    | `set-cave-bouquet`, `medium` (sortie)       | `waving`              | encart « Les vraies soirées sont sur lebrocoli.fr. »                       | Broc : « Bonne soirée. Et garde la tête verte ! »                                                   | La suite de nos sorties, c'est sur lebrocoli.fr.           | 1200  | 6 s   | fin d'épisode ; crédits (mention IA, §9) |

Total vidéo : 5+6+5+5+4+6+5+6+4+6+5+6 = **63 s** de plans, ramenés à environ **58 s** par les fondus
enchaînés de 0,4 s du pont (à mesurer sur la première sortie, pas promis).

### 3.2 Contrôles de cohérence avec la bible

- **9 poses sur 9** : `waving` (1, 12), `review` (2, 8), `idle` (3, 11), `failed` (4),
  `running-right` (5), `waiting` (6), `running` (7), `running-left` (9), `jumping` (10).
- **`failed` suivi d'un rebond** (bible §9) : `failed` en 4, puis `jumping` en 10 et `waving` en 12.
  `failed` et `jumping` apparaissent une seule fois (§10, règle 7).
- **`running` n'est pas une course** (§9) : en 7, Broc fouille (concentration), les courses sont en
  5 et 9 (`running-right`, `running-left`).
- **Ouverture et fermeture par Broc en `waving`** (§10, règle 1).
- **Jeux de mots** (§4) : « ça pousse » (7), « bien planté » (8, encart), « à la fraîche » (9), «
  garde la tête verte » (12). Un au plus par case, aucun répété. Aucun dans le titre.
- **Répliques ≤ 140 caractères** (§10, règle 3) : la plus longue (case 1) en fait 65.
- **Un point d'exclamation au plus par réplique, pas d'émoji** (§4).
- **Aucune info pratique** (date, heure, prix, adresse) : l'épisode est une fiction ; l'appel final
  renvoie à lebrocoli.fr sans rien promettre (§6, §10 règle 2).
- **Rien de §6** : pas d'alcool (la Cave est un club de jazz, on n'y montre ni verre ni bar), Broc
  n'est pas un aliment, aucune moquerie (Tempo n'est pas grondé).
- **Interdits visuels** (§2.5) : Broc ne tient rien. Tempo n'est jamais dans ses mains : il saute à
  côté de lui (cases 9 et 10). La vitrine (case 8) montre des métronomes **dans le décor**.
- **Personnages secondaires** (§8) : jamais plus de deux avec Broc à l'image (Mila et Tempo en 2, 4
  et 10) ; le Trio Lorem et le public sont des silhouettes floues (`public`).

## 4. Source Markdown Récit complète

Emplacement proposé : `examples/scenario-lebrocoli/toon/tempo-a-file.md` (non créé : ce plan n'écrit
que dans `sites/plans/pages/`). C'est une source de récit : **jamais passée par oxfmt** (bible §10,
règle 11).

Choix de syntaxe, tous tirés des plans :

- frontmatter à plat (plan 08, préambule) : `width`, `gutter`, `font` ; `cast:` en liste (plan 14 D4
  : « ou de plusieurs : liste ») ;
- séparateurs `--- id=… clé=valeur` (plan 02 §3) avec les attributs communs `beat=`, `cast=`,
  `set=`, `shot=`, `pose=`, `prompt=` (plan 14 D4) et les attributs de case `alt=`, `height=`,
  `gutter=` (plan 08 §2). **Pas de `src=`** : `prompt=` donne l'image de la case (l'asset enregistré
  pour ce prompt, sinon une image de remplacement, plan 14 D7). **Pas de `type=`** : il est réservé
  aux blocs motion (plan 02 §3), le pont toon → motion choisit le plan lui-même ;
- `:::bubble`, `:::caption`, `:::sfx` du spec toon (plan 08 §2) ; `:::dialogue` est « plus tard »
  (plan 14 D6), donc les répliques sont des bulles positionnées ;
- `:::notes` porte la **voix off** : non publiée dans le lecteur toon (notes d'auteur), elle devient
  la voix off ou le sous-titre du plan dans le pont vers motion (plan 02 §4).

### 4.1 `tempo-a-file.md`

```md
---
title: Tempo a filé
description: Les soirées de Broc, épisode 3. Tempo, le métronome de la Cave du Bouquet, a disparu juste avant le concert.
format: toon
lang: fr
author: lebrocoli.fr
width: 800
gutter: 120
font: lexend
cast:
  - ../cast/broc/character.md
  - ../cast/lieux.md
  - ./tempo-a-file.cast.md
---

--- id=c01 beat=hook cast=broc set=set-cave-bouquet shot=wide pose=waving prompt=p-t3-c01 height=1422 alt="Une cave voûtée en briques éclairée par des lampes basses. Au premier plan, Broc, un brocoli souriant au rendu 3D doux, salue le lecteur de la main. Au fond, une petite scène avec un piano droit."

:::caption
La Cave du Bouquet, juste avant le concert.
:::

:::bubble{x=58% y=58% tail=bottom-left}
Salut ! Ce soir, le Trio Lorem joue ici. Je t'ai gardé une place.
:::

:::notes
Ce soir, à la Cave du Bouquet, tout est prêt. Ou presque.
:::

--- id=c02 beat=context cast=broc set=set-cave-bouquet shot=medium pose=review prompt=p-t3-c02 height=1200 gutter=60 alt="Près du piano droit, Broc observe avec attention un petit métronome en bois dont le balancier oscille. À côté, Mila, en vêtements gris anthracite et casque de régie autour du cou, montre le métronome."

:::bubble{x=22% y=12% tail=bottom-right}
Tempo donne le départ. Comme toujours.
:::

:::bubble{x=64% y=30% tail=bottom-left}
Il bat la mesure mieux que personne.
:::

:::notes
Tempo, le métronome, lance toujours le premier morceau.
:::

--- id=c03 beat=context cast=broc set=set-cave-bouquet shot=wide pose=idle prompt=p-t3-c03 height=1200 gutter=160 alt="Broc, de face, attend tranquillement au premier plan. Derrière lui, sans qu'il le voie, le petit métronome descend du piano et file vers une porte entrouverte au fond de la cave."

:::caption
Personne ne voit Tempo descendre du piano.
:::

:::sfx{x=78% y=40% rotate=-8}
tic… tac…
:::

:::notes
Un courant d'air. Une porte entrouverte.
:::

--- id=c04 beat=tension cast=broc set=set-cave-bouquet shot=close pose=failed prompt=p-t3-c04 height=1000 gutter=40 alt="Gros plan sur le dessus du piano, vide. Broc, déçu mais pas abattu, baisse un peu la tête. Mila, à moitié dans le cadre, regarde autour d'elle."

:::bubble{x=20% y=10% tail=bottom-right}
Où est Tempo ?
:::

:::bubble{x=62% y=22% tail=bottom-left}
Oups. Le piano est vide.
:::

:::notes
Le piano est vide. Sans Tempo, pas de premier morceau.
:::

--- id=c05 beat=tension cast=broc set=set-cave-bouquet shot=stairs pose=running-right prompt=p-t3-c05 height=1000 gutter=200 alt="Broc court vers la droite et grimpe l'escalier de pierre de la cave, vers la porte ouverte sur la rue de nuit."

:::bubble{x=30% y=14% tail=bottom-right}
Pas de panique, je le retrouve !
:::

:::notes
Broc ne panique pas. Il file.
:::

--- id=c06 beat=tension cast=broc set=set-rue-serre shot=wide pose=waiting prompt=p-t3-c06 height=1422 gutter=80 alt="Une rue piétonne pavée, la nuit, bordée d'affiches de concerts sans texte lisible. Broc, seul au milieu de la rue, tend l'oreille, curieux."

:::bubble{x=50% y=16% tail=bottom shape=thought}
Écoute… un tic-tac, quelque part.
:::

:::sfx{x=86% y=34% rotate=6}
tic
:::

:::notes
Dans la Rue de la Serre, il tend l'oreille.
:::

--- id=c07 beat=tension cast=broc set=set-rue-serre shot=medium pose=running prompt=p-t3-c07 height=1200 gutter=80 alt="Broc, concentré, fouille derrière des bacs de plantes. Une guirlande d'ampoules s'est prise dans sa couronne de fleurettes."

:::bubble{x=56% y=12% tail=bottom-left}
Ma couronne s'accroche partout. Ça pousse un peu trop, là-haut.
:::

:::notes
Il cherche partout. Sa couronne, elle, s'accroche partout.
:::

--- id=c08 beat=tension cast=broc set=set-rue-serre shot=vitrine pose=review prompt=p-t3-c08 height=1200 gutter=120 alt="Devant la vitrine éclairée d'une boutique de musique, remplie de métronomes, le petit métronome en bois se balance sur le trottoir. Broc, penché, l'examine avec un sourire soulagé."

:::caption
Tempo, bien planté devant la vitrine.
:::

:::sfx{x=74% y=46% rotate=-10}
tic tac tic tac
:::

:::bubble{x=26% y=18% tail=bottom-right}
Te voilà. Tu voulais voir la famille ?
:::

:::notes
Le voilà, devant une vitrine pleine de métronomes.
:::

--- id=c09 beat=tension cast=broc set=set-rue-serre shot=wide pose=running-left prompt=p-t3-c09 height=1000 gutter=200 alt="Broc court vers la gauche dans la rue de nuit. Le petit métronome sautille à côté de lui, sur les pavés."

:::bubble{x=64% y=14% tail=bottom-left}
On rentre à la fraîche. Le trio t'attend.
:::

:::notes
Retour en vitesse. Le trio attend toujours.
:::

--- id=c10 beat=payoff cast=broc set=set-cave-bouquet shot=medium pose=jumping prompt=p-t3-c10 height=1422 gutter=60 alt="Le métronome est de retour sur le piano, son balancier en mouvement. Broc saute de joie. Mila sourit. Derrière, trois silhouettes floues de musiciens prennent place sur la petite scène."

:::sfx{x=50% y=8% rotate=0}
TIC TAC
:::

:::bubble{x=18% y=34% tail=bottom-right}
Pile à temps.
:::

:::bubble{x=66% y=40% tail=bottom-left}
Et c'est parti pour le premier set !
:::

:::notes
Tempo reprend sa place. Le premier set commence.
:::

--- id=c11 beat=payoff cast=broc set=set-cave-bouquet shot=wide pose=idle prompt=p-t3-c11 height=1200 alt="Vue de la salle depuis le fond. Le public est assis, en silhouettes floues, face à la scène éclairée. Broc, debout au dernier rang, écoute ; sa grande couronne masque une partie de la scène à la silhouette derrière lui."

:::bubble{x=60% y=12% tail=bottom-left}
Désolé pour le rang de derrière. Je ne peux pas enlever ma tête.
:::

:::notes
Au fond de la salle, Broc écoute. Et cache un peu la vue.
:::

--- id=c12 beat=call cast=broc set=set-cave-bouquet shot=medium pose=waving prompt=p-t3-c12 height=1200 alt="Broc, au pied de l'escalier de la cave, salue le lecteur de la main avec un grand sourire. Derrière lui, la scène éclairée et le petit métronome sur le piano."

:::bubble{x=56% y=14% tail=bottom-left}
Bonne soirée. Et garde la tête verte !
:::

:::caption
Les vraies soirées sont sur lebrocoli.fr.
:::

:::notes
La suite de nos sorties, c'est sur lebrocoli.fr.
:::
```

### 4.2 Bible complémentaire : `tempo-a-file.cast.md`

Personnages secondaires, cadrages des deux décors, gabarit de beats et prompts de l'épisode. Les
décors eux-mêmes (`set-cave-bouquet`, `set-rue-serre`) sont supposés dans la bible partagée
`cast/lieux.md` ; leurs entrées sont reprises en §6.1 pour le cas où elle n'existe pas encore. Les
`id` de cadrage (`wide`, `medium`, `close`, `stairs`, `vitrine`) sont **à ajouter** en `::shot` à
ces entrées (§6.1). Syntaxe : plan 14 D2.

```md
---
title: Tempo a filé — distribution et prompts
kind: bible
lang: fr
bible:
  promptLang: en
  style: doux-3d
  beats: broc-sortie
---

--- id=mila entry=character

## Mila

La régisseuse de la Cave du Bouquet. Calme, pragmatique, parle peu.

:::identity
Stylized adult woman, soft expressive 3D render in the style of a family animated film,
simpler and less detailed than the main character. Short dark hair, plain charcoal grey
long-sleeved top and trousers, a stage headset resting around her neck. Calm, friendly face.
:::

:::traits
- species: human {inferred}
- role: régisseuse de la Cave du Bouquet {inferred}
- voice: phrases très courtes, calme {inferred}
:::

::pose[Standing, relaxed, hands at her sides]{id=idle}
::pose[Pointing gently at something]{id=pointing}
::pose[Looking around, slightly worried]{id=searching}
::pose[Small satisfied smile, arms crossed]{id=satisfied}

:::avoid
- vegetable or plant features
- logos, text or patterns on clothing
- drinks, glasses or bottles
- more detail than the main character
:::

--- id=tempo entry=character

## Tempo

Un petit métronome en bois, vivant, muet. Il s'exprime par son balancier.

:::identity
Small living wooden pyramid metronome, warm honey-colored varnished wood, a brass-colored
pendulum, no mouth, two tiny round black dot eyes on the front face, two short stubby wooden
legs. Soft expressive 3D render in the style of a family animated film.
:::

:::traits
- species: metronome {inferred}
- role: donne le départ du premier morceau {inferred}
- voice: muet ; tic-tac du balancier {inferred}
:::

::pose[Standing still, pendulum swinging]{id=idle}
::pose[Small hop on its stubby legs]{id=hopping}

:::avoid
- mouth, arms or hands
- text, numbers or scale markings
- being held by another character
:::

--- id=doux-3d entry=style

## 3D doux

:::identity
Soft expressive 3D render in the style of a family animated film, soft diffuse lighting,
gentle shadows, no harsh specular highlights, no black outlines.
:::

--- id=broc-sortie entry=beats

1. hook — Broc accueille le lecteur dans le lieu
2. context — on découvre l'enjeu de la soirée
3. tension — un contretemps, puis la recherche
4. payoff — la soirée est sauvée
5. call — salut final et renvoi vers lebrocoli.fr

--- id=p-t3-c01 entry=prompt subject=broc set=set-cave-bouquet shot=wide pose=waving aspect=9:16

Broc stands in the foreground, waving at the viewer with one hand, a warm welcoming smile.
Behind him, the empty small stage with an upright piano under low amber lamps.

--- id=p-t3-c02 entry=prompt subject=broc set=set-cave-bouquet shot=medium pose=review aspect=2:3

Broc leans slightly toward a small living wooden metronome standing on top of an upright
piano, studying its swinging pendulum with attentive interest. Mila stands beside the piano,
pointing gently at the metronome.

--- id=p-t3-c03 entry=prompt subject=broc set=set-cave-bouquet shot=wide pose=idle aspect=2:3

Broc stands calmly in the foreground, facing the viewer, unaware. In the background, the small
wooden metronome hops down from the piano toward a half-open door at the back of the cellar.

--- id=p-t3-c04 entry=prompt subject=broc set=set-cave-bouquet shot=close pose=failed aspect=4:5

Close view of the empty top of the upright piano. Broc, mildly disappointed, head slightly
lowered, a small "oops" expression, not sad. Mila, half in frame, looks around searching.

--- id=p-t3-c05 entry=prompt subject=broc set=set-cave-bouquet shot=stairs pose=running-right aspect=4:5

Broc runs to the right, climbing the stone stairs of the cellar toward an open door that shows
a night street.

--- id=p-t3-c06 entry=prompt subject=broc set=set-rue-serre shot=wide pose=waiting aspect=9:16

Broc stands alone in the middle of the empty pedestrian street, head tilted, listening with
curious attention.

--- id=p-t3-c07 entry=prompt subject=broc set=set-rue-serre shot=medium pose=running aspect=2:3

Broc, focused, searches behind large planters along the street. A string of small light bulbs
is tangled in his broccoli crown, his hands are free.

--- id=p-t3-c08 entry=prompt subject=broc set=set-rue-serre shot=vitrine pose=review aspect=2:3

In front of a lit music shop window filled with wooden metronomes, the small living wooden
metronome stands on the pavement, pendulum swinging. Broc bends toward it with a relieved,
amused smile.

--- id=p-t3-c09 entry=prompt subject=broc set=set-rue-serre shot=wide pose=running-left aspect=4:5

Broc runs to the left along the cobbled street. The small wooden metronome hops along on the
pavement next to him, not touching him.

--- id=p-t3-c10 entry=prompt subject=broc set=set-cave-bouquet shot=medium pose=jumping aspect=9:16

The small wooden metronome is back on top of the upright piano, pendulum swinging. Broc jumps
for joy, both arms up. Mila smiles, arms crossed. Behind, three blurred musician silhouettes
take their places on the small stage.

--- id=p-t3-c11 entry=prompt subject=broc set=set-cave-bouquet shot=wide pose=idle aspect=2:3

View from the back of the room. A seated audience of soft blurred silhouettes faces the lit
stage. Broc stands in the last row, listening calmly; his large crown hides part of the stage
from the blurred silhouette behind him.

--- id=p-t3-c12 entry=prompt subject=broc set=set-cave-bouquet shot=medium pose=waving aspect=2:3

Broc stands at the foot of the cellar stairs, waving goodbye at the viewer with a big smile.
Behind him, the lit stage and the small wooden metronome on the piano.
```

### 4.3 Traduction : `tempo-a-file.en.md` (extrait)

Le fichier de langue ne contient que les textes par `id` de case (plan 08 §2, « traductions ») :
`alt`, encarts, bulles, sfx, notes. Images et prompts partagés (bible §10, règle 9). Les jeux de
mots s'adaptent au lieu de se traduire mot à mot (au plus un par case).

```md
---
title: Tempo Ran Off
lang: en
---

--- id=c01 alt="A brick vaulted cellar lit by low lamps. In the foreground, Broc, a smiling soft 3D broccoli, waves at the reader. In the back, a small stage with an upright piano."

:::caption
The Bouquet Cellar, just before the show.
:::

:::bubble{x=58% y=58% tail=bottom-left}
Hi! Tonight, Trio Lorem plays here. I saved you a seat.
:::

--- id=c12 alt="Broc, at the foot of the cellar stairs, waves goodbye to the reader with a big smile."

:::bubble{x=56% y=14% tail=bottom-left}
Have a good night. And keep a green head!
:::
```

## 5. Jumeau JSON typé

**Brouillon jusqu'à P16.** Forme `StorySource` (plan 09 §2.2) avec les champs `toon` (plan 09 §2.3)
; les attributs communs de la bible restent dans `attrs` (plan 14 D4). Deux champs ne sont pas
encore fixés par les schémas : `cast` (le chemin des bibles, posé ici à la racine) et l'absence de
`src` quand `prompt` le remplace. Les deux sont tranchés en P16 (IA1) ; ce brouillon ne les anticipe
pas autrement. Équivalence visée : `compile(md) == compile(toJson(md))` (plan 09 §2.4).

```json
{
  "$schema": "https://recit.dev/schema/v1/story.json",
  "kind": "story",
  "version": 1,
  "format": "toon",
  "meta": {
    "title": "Tempo a filé",
    "description": "Les soirées de Broc, épisode 3. Tempo, le métronome de la Cave du Bouquet, a disparu juste avant le concert.",
    "author": "lebrocoli.fr",
    "lang": "fr"
  },
  "settings": { "width": 800, "gutter": 120, "font": "lexend" },
  "cast": ["../cast/broc/character.md", "../cast/lieux.md", "./tempo-a-file.cast.md"],
  "scenes": [
    {
      "id": "c01",
      "attrs": { "beat": "hook", "cast": "broc", "set": "set-cave-bouquet", "shot": "wide", "pose": "waving", "prompt": "p-t3-c01" },
      "alt": "Une cave voûtée en briques éclairée par des lampes basses. Au premier plan, Broc, un brocoli souriant au rendu 3D doux, salue le lecteur de la main. Au fond, une petite scène avec un piano droit.",
      "height": 1422,
      "captions": ["La Cave du Bouquet, juste avant le concert."],
      "bubbles": [{ "x": "58%", "y": "58%", "tail": "bottom-left", "text": "Salut ! Ce soir, le Trio Lorem joue ici. Je t'ai gardé une place." }],
      "notes": "Ce soir, à la Cave du Bouquet, tout est prêt. Ou presque."
    },
    {
      "id": "c02",
      "attrs": { "beat": "context", "cast": "broc", "set": "set-cave-bouquet", "shot": "medium", "pose": "review", "prompt": "p-t3-c02" },
      "alt": "Près du piano droit, Broc observe avec attention un petit métronome en bois dont le balancier oscille. À côté, Mila, en vêtements gris anthracite et casque de régie autour du cou, montre le métronome.",
      "height": 1200,
      "gutter": 60,
      "bubbles": [
        { "x": "22%", "y": "12%", "tail": "bottom-right", "text": "Tempo donne le départ. Comme toujours." },
        { "x": "64%", "y": "30%", "tail": "bottom-left", "text": "Il bat la mesure mieux que personne." }
      ],
      "notes": "Tempo, le métronome, lance toujours le premier morceau."
    },
    {
      "id": "c03",
      "attrs": { "beat": "context", "cast": "broc", "set": "set-cave-bouquet", "shot": "wide", "pose": "idle", "prompt": "p-t3-c03" },
      "alt": "Broc, de face, attend tranquillement au premier plan. Derrière lui, sans qu'il le voie, le petit métronome descend du piano et file vers une porte entrouverte au fond de la cave.",
      "height": 1200,
      "gutter": 160,
      "captions": ["Personne ne voit Tempo descendre du piano."],
      "sfx": [{ "x": "78%", "y": "40%", "rotate": -8, "text": "tic… tac…" }],
      "notes": "Un courant d'air. Une porte entrouverte."
    },
    {
      "id": "c04",
      "attrs": { "beat": "tension", "cast": "broc", "set": "set-cave-bouquet", "shot": "close", "pose": "failed", "prompt": "p-t3-c04" },
      "alt": "Gros plan sur le dessus du piano, vide. Broc, déçu mais pas abattu, baisse un peu la tête. Mila, à moitié dans le cadre, regarde autour d'elle.",
      "height": 1000,
      "gutter": 40,
      "bubbles": [
        { "x": "20%", "y": "10%", "tail": "bottom-right", "text": "Où est Tempo ?" },
        { "x": "62%", "y": "22%", "tail": "bottom-left", "text": "Oups. Le piano est vide." }
      ],
      "notes": "Le piano est vide. Sans Tempo, pas de premier morceau."
    },
    {
      "id": "c05",
      "attrs": { "beat": "tension", "cast": "broc", "set": "set-cave-bouquet", "shot": "stairs", "pose": "running-right", "prompt": "p-t3-c05" },
      "alt": "Broc court vers la droite et grimpe l'escalier de pierre de la cave, vers la porte ouverte sur la rue de nuit.",
      "height": 1000,
      "gutter": 200,
      "bubbles": [{ "x": "30%", "y": "14%", "tail": "bottom-right", "text": "Pas de panique, je le retrouve !" }],
      "notes": "Broc ne panique pas. Il file."
    },
    {
      "id": "c06",
      "attrs": { "beat": "tension", "cast": "broc", "set": "set-rue-serre", "shot": "wide", "pose": "waiting", "prompt": "p-t3-c06" },
      "alt": "Une rue piétonne pavée, la nuit, bordée d'affiches de concerts sans texte lisible. Broc, seul au milieu de la rue, tend l'oreille, curieux.",
      "height": 1422,
      "gutter": 80,
      "bubbles": [{ "x": "50%", "y": "16%", "tail": "bottom", "shape": "thought", "text": "Écoute… un tic-tac, quelque part." }],
      "sfx": [{ "x": "86%", "y": "34%", "rotate": 6, "text": "tic" }],
      "notes": "Dans la Rue de la Serre, il tend l'oreille."
    },
    {
      "id": "c07",
      "attrs": { "beat": "tension", "cast": "broc", "set": "set-rue-serre", "shot": "medium", "pose": "running", "prompt": "p-t3-c07" },
      "alt": "Broc, concentré, fouille derrière des bacs de plantes. Une guirlande d'ampoules s'est prise dans sa couronne de fleurettes.",
      "height": 1200,
      "gutter": 80,
      "bubbles": [{ "x": "56%", "y": "12%", "tail": "bottom-left", "text": "Ma couronne s'accroche partout. Ça pousse un peu trop, là-haut." }],
      "notes": "Il cherche partout. Sa couronne, elle, s'accroche partout."
    },
    {
      "id": "c08",
      "attrs": { "beat": "tension", "cast": "broc", "set": "set-rue-serre", "shot": "vitrine", "pose": "review", "prompt": "p-t3-c08" },
      "alt": "Devant la vitrine éclairée d'une boutique de musique, remplie de métronomes, le petit métronome en bois se balance sur le trottoir. Broc, penché, l'examine avec un sourire soulagé.",
      "height": 1200,
      "captions": ["Tempo, bien planté devant la vitrine."],
      "sfx": [{ "x": "74%", "y": "46%", "rotate": -10, "text": "tic tac tic tac" }],
      "bubbles": [{ "x": "26%", "y": "18%", "tail": "bottom-right", "text": "Te voilà. Tu voulais voir la famille ?" }],
      "notes": "Le voilà, devant une vitrine pleine de métronomes."
    },
    {
      "id": "c09",
      "attrs": { "beat": "tension", "cast": "broc", "set": "set-rue-serre", "shot": "wide", "pose": "running-left", "prompt": "p-t3-c09" },
      "alt": "Broc court vers la gauche dans la rue de nuit. Le petit métronome sautille à côté de lui, sur les pavés.",
      "height": 1000,
      "gutter": 200,
      "bubbles": [{ "x": "64%", "y": "14%", "tail": "bottom-left", "text": "On rentre à la fraîche. Le trio t'attend." }],
      "notes": "Retour en vitesse. Le trio attend toujours."
    },
    {
      "id": "c10",
      "attrs": { "beat": "payoff", "cast": "broc", "set": "set-cave-bouquet", "shot": "medium", "pose": "jumping", "prompt": "p-t3-c10" },
      "alt": "Le métronome est de retour sur le piano, son balancier en mouvement. Broc saute de joie. Mila sourit. Derrière, trois silhouettes floues de musiciens prennent place sur la petite scène.",
      "height": 1422,
      "gutter": 60,
      "sfx": [{ "x": "50%", "y": "8%", "rotate": 0, "text": "TIC TAC" }],
      "bubbles": [
        { "x": "18%", "y": "34%", "tail": "bottom-right", "text": "Pile à temps." },
        { "x": "66%", "y": "40%", "tail": "bottom-left", "text": "Et c'est parti pour le premier set !" }
      ],
      "notes": "Tempo reprend sa place. Le premier set commence."
    },
    {
      "id": "c11",
      "attrs": { "beat": "payoff", "cast": "broc", "set": "set-cave-bouquet", "shot": "wide", "pose": "idle", "prompt": "p-t3-c11" },
      "alt": "Vue de la salle depuis le fond. Le public est assis, en silhouettes floues, face à la scène éclairée. Broc, debout au dernier rang, écoute ; sa grande couronne masque une partie de la scène à la silhouette derrière lui.",
      "height": 1200,
      "bubbles": [{ "x": "60%", "y": "12%", "tail": "bottom-left", "text": "Désolé pour le rang de derrière. Je ne peux pas enlever ma tête." }],
      "notes": "Au fond de la salle, Broc écoute. Et cache un peu la vue."
    },
    {
      "id": "c12",
      "attrs": { "beat": "call", "cast": "broc", "set": "set-cave-bouquet", "shot": "medium", "pose": "waving", "prompt": "p-t3-c12" },
      "alt": "Broc, au pied de l'escalier de la cave, salue le lecteur de la main avec un grand sourire. Derrière lui, la scène éclairée et le petit métronome sur le piano.",
      "height": 1200,
      "bubbles": [{ "x": "56%", "y": "14%", "tail": "bottom-left", "text": "Bonne soirée. Et garde la tête verte !" }],
      "captions": ["Les vraies soirées sont sur lebrocoli.fr."],
      "notes": "La suite de nos sorties, c'est sur lebrocoli.fr."
    }
  ]
}
```

Remarques sur ce brouillon :

- `x` et `y` sont gardés en chaînes `"58%"`, comme dans le Markdown ; le schéma P7 peut préférer un
  nombre (0–100). À trancher en W1, avec la propriété d'aller-retour.
- `sfx[]` reprend `x`, `y`, `rotate` et un `text` : le plan 09 §2.3 cite `sfx[]` sans en donner la
  forme. Brouillon.
- Le compagnon anglais est un `Sidecar` (`kind: "sidecar"`, plan 09 §2.2) dont `scenes` est indexé
  par `id` (`c01` … `c12`) et ne contient que `alt`, `captions`, `bubbles[].text`, `sfx[].text`,
  `notes`.

## 6. Prompts d'images (données, sans fournisseur imposé)

Les prompts sont **dérivés** de la bible par le gabarit déterministe du plan 14 D7 : identité du
style, identité du personnage (mot pour mot, bible §11.1), décor, cadrage, pose, action, puis
`avoid`. Langue : anglais (`promptLang: en`). Récit ne génère rien : `recit prompts build` écrit les
`.txt`, l'auteur génère ailleurs **en passant toujours `reference.png`** (et la planche
`spritesheet.webp` comme référence de pose quand l'outil l'accepte), puis
`recit assets register <image> --prompt p-t3-cNN` écrit la provenance (`kind: "asset"`).

Aucune **nouvelle pose** de Broc : les 9 lignes de `codex-pet-v1` suffisent. Nouveaux éléments
visuels : deux décors à fixer par une image de référence (ils existent dans la bible §7 mais n'ont
ni `:::identity` ni image), deux personnages secondaires et cinq cadrages.

### 6.1 Décors (entrées `entry=set`, à placer dans `cast/lieux.md`)

```md
--- id=set-cave-bouquet entry=set

## La Cave du Bouquet

Club de jazz en sous-sol voûté, briques, lampes basses, piano droit.

:::identity
Small underground jazz club in a vaulted brick cellar, low warm amber lamps, a small wooden
stage with an upright piano, a few rows of simple wooden chairs, stone stairs leading up to a
door. Cozy, intimate, fictional place. No bar, no bottles, no glasses, no readable signs.
:::

:::traits
- time: soirée
- light: lampes ambre basses, projecteur doux sur la scène
- palette: brick=#8a4b34, amber=#f2b45a, shadow=#2b1d1a
- props: piano droit, tabourets, chaises en bois, escalier de pierre
- ambience: jazz feutré {inferred}
:::

::shot[Wide, whole cellar, stage in the back]{id=wide}
::shot[Medium, piano and stage edge]{id=medium}
::shot[Close, top of the upright piano]{id=close}
::shot[Stone stairs going up to an open door, night street outside]{id=stairs}

--- id=set-rue-serre entry=set

## La Rue de la Serre

Rue piétonne de nuit, affiches de concerts sans texte lisible, pavés.

:::identity
Narrow fictional pedestrian street at night, wet-looking cobblestones, warm string lights
between the facades, large planters with green plants, concert posters with abstract shapes
and no readable text, soft indigo sky. No real landmark, no readable signs.
:::

:::traits
- time: nuit
- light: guirlandes chaudes, ciel indigo
- palette: sky=#1f2346, lights=#f4c46b, stone=#5a5560
- props: guirlandes d'ampoules, bacs de plantes, affiches sans texte, vitrine d'une boutique de musique
:::

::shot[Wide, full street in perspective]{id=wide}
::shot[Medium, planters and string lights]{id=medium}
::shot[Lit music shop window full of wooden metronomes, pavement in front]{id=vitrine}
```

Palettes des décors : proposées (`inferred` de fait, à valider), choisies pour que l'ambre et
l'indigo ne teintent jamais le vert de Broc (bible §7).

### 6.2 Images de référence des décors (vides, sans personnage)

```text
{style:doux-3d}
{set:set-cave-bouquet}
Empty establishing shot, no characters, eye-level, 2:3 vertical framing, even soft lighting
so the plate can be reused as a reference for every panel set in this place.
Avoid: text, letters, numbers, logos, watermark, bottles, glasses, bar, real places.
```

```text
{style:doux-3d}
{set:set-rue-serre}
Empty establishing shot, no characters, eye-level, 9:16 vertical framing, string lights on,
posters with abstract shapes only.
Avoid: text, letters, numbers, logos, watermark, readable signs, real landmarks, cars.
```

Ces deux images s'enregistrent comme `::reference{src=… role=set}` des entrées de décor (plan 14 D2)
et se passent en référence avec `reference.png` pour chaque case.

### 6.3 Références des personnages secondaires

```text
{style:doux-3d}
{character:mila.identity}
Full body, front view, neutral relaxed standing pose, centered, plain warm off-white
background (#f2eee5), soft contact shadow.
Avoid: vegetable features, logos or text on clothing, drinks, extra limbs, watermark.
```

```text
{style:doux-3d}
{character:tempo.identity}
Full body, three-quarter view, standing still with the pendulum mid-swing, centered, plain
warm off-white background (#f2eee5), soft contact shadow.
Avoid: mouth, arms, hands, numbers or scale markings, text, being held, watermark.
```

### 6.4 Prompt dérivé d'une case (exemple complet : `p-t3-c07`)

Ce que produira `recit prompts build` pour la case 7. Les autres cases suivent le même gabarit avec
l'action du §4.2.

```text
Soft expressive 3D render in the style of a family animated film, soft diffuse lighting,
gentle shadows, no harsh specular highlights, no black outlines.

Friendly smiling broccoli character, soft expressive 3D render in the style of a family
animated film. Large rounded broccoli crown of dense green florets growing from the top of
the head, about one third of total height, wider than the shoulders, with branching stems
visible under it. Pear-shaped light leaf-green face, small rounded ears, big round eyes with
cream whites, nearly black irises and a white highlight, thick dark green sculpted eyebrows,
small round button nose, gentle closed-mouth smile with dimples. Slim tubular stem-like body,
thin arms with rounded four-fingered mitten hands, short thick legs with rounded feet. Matte
velvety soft-vinyl skin, single green palette (skin #7aac3d, crown #508132, brows #2a4a18).
No clothing, no accessories. Same face, proportions, crown, colors, materials and 3D style as
the canonical reference image.

Setting: Narrow fictional pedestrian street at night, wet-looking cobblestones, warm string
lights between the facades, large planters with green plants, concert posters with abstract
shapes and no readable text, soft indigo sky. No real landmark, no readable signs.
Shot: Medium, planters and string lights.
Pose: focused, working, searching (codex-pet-v1 row "running": concentration, not a race).
Action: Broc, focused, searches behind large planters along the street. A string of small
light bulbs is tangled in his broccoli crown, his hands are free.
Warm evening lighting that keeps the character's greens unchanged. Character is the clear
focal point, other figures simpler and less detailed. Vertical 2:3 framing, leave the top
fifth of the image calm for speech bubbles.

Avoid: tuxedo, bow tie, cap, hat, glasses, headphones, clothing, shoes, gloves, jewelry,
accessories, held objects, musical instrument in hand, black outline, flat 2D, cel shading,
pixel art, changed face, changed eye color, teeth, angry expression, extra limbs, extra
fingers, other humanized vegetables, text, letters, numbers, logo, watermark, signature.
```

Points propres à cet épisode :

- **La guirlande dans la couronne (case 7)** est un élément du décor accroché à Broc, pas un
  accessoire porté : l'action le dit explicitement, et la relecture vérifie qu'aucune autre
  décoration n'a été ajoutée. Si l'outil en fait un « collier » ou une « couronne lumineuse »,
  regénérer : c'est un interdit de la bible §2.5.
- **Tempo jamais tenu** (cases 8 à 10) : chaque action le place « à côté », et `avoid` de Tempo
  contient « being held ».
- **Place pour les bulles** : chaque prompt de case réserve une zone calme en haut de l'image (le
  lettrage est généré par le format, jamais dans l'image).
- **Niveau 0, sans IA** : sans asset enregistré, chaque `prompt=` rend une **image de remplacement**
  (cadre neutre, nom du personnage, du décor et `id` du prompt, plan 14 D7). L'épisode est donc
  lisible et testable avant toute génération.

### 6.5 Variante économe (proposition, non prévue par les plans)

Au lieu de 12 images générées, deux plaques de décor (§6.2) par cadrage et la case de la planche
posée dessus par `::sprite{character=broc pose=…}` (plan 11 D9, `SpriteImage` statique). Avantage :
Broc est exactement celui de la planche validée, sans dérive d'identité. Limites : une case de
`192×208` agrandie sera floue en 800 px de large (plan 11 D9), et le spec toon (plan 08 §2) ne
prévoit pas de bloc dans une case. À n'envisager qu'après les goldens de P7 ; ce scénario ne s'en
sert pas.

## 7. Durées et rythme

- **Lecture au scroll** : le rythme vient des **gouttières** (plan 08 §2, `gutter`). Petites (40
  à 60) entre deux cases du même instant, grandes (160 à 200) pour une ellipse ou un changement de
  lieu (après 3, 5 et 9).
- **Vidéo** : les durées du tableau §3.1 (4 à 6 s) sont des propositions pour le pont toon → motion,
  calées sur environ 2,5 mots par seconde de bulle plus 2 s de regard sur l'image. Le pont n'a pas
  encore d'attribut de durée par case : à porter par `hold=` ou `dur=` (attributs motion, plan 05)
  si W4 les accepte sur une case, sinon par la règle par défaut du pont.

## 8. Déclinaison dans les autres formats

| Format    | A du sens ?  | Comment                                                                                                                                                                                                                                                                                                                                                |
| --------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `toon`    | oui, source  | ce document. Lecteur web, tranches 800 px (W3), PDF (PDF2)                                                                                                                                                                                                                                                                                             |
| `motion`  | oui          | `recit render tempo-a-file.md --as motion --aspect 9:16` (pont toon → motion, plan 08 §0, W4) : une case = un plan 9:16 avec panoramique vertical, bulles en apparition, `:::notes` en voix off ou sous-titre. Les images 1422 de haut (cases 1, 6, 10) ont le panoramique le plus long. Durées : §3.1                                                 |
| `stories` | oui, réécrit | pas de pont toon → stories (seul stories → toon existe, plan 14 D6). Version courte de 5 cartes réécrite à la main avec les mêmes `prompt=` : c01 (`hook`, `waving`), c04 (`tension`, `failed`), c08 (`review`), c10 (`payoff`, `jumping`), c12 (`call`, `waving`, `::cta` vers lebrocoli.fr). Respecte la règle des 3 à 7 scènes (bible §10, règle 1) |
| `deck`    | peu          | pas de pont depuis `toon`. Seul usage utile : un « making-of » par le pont bible → deck (plan 14 D6, plus tard) : une slide par entrée (Broc, Mila, Tempo, les deux décors), plus une slide « de la bible à la case » qui montre le prompt `p-t3-c07` et son image                                                                                     |
| `book`    | plus tard    | pas de pont toon → book. Quand plusieurs épisodes existeront : un recueil où chaque épisode est un chapitre avec ses cases en `figures[]` (légende = `alt`), et l'annexe `back: [cast]` (« Dramatis personae ») tirée de la bible (pont bible → book)                                                                                                  |
| `docs`    | oui          | page `docs.recit.dev` › Formats › Webtoon, avec l'épisode en `<StoryEmbed format="toon" />` et les fiches de Broc, Mila et Tempo (`CharacterSheet`, plan 14 D6)                                                                                                                                                                                        |

## 9. Points d'attention

### 9.1 Accessibilité

- **`alt` obligatoire sur chaque case** (plan 09 §2.3, exigé par le PDF balisé). Les 12 `alt`
  décrivent l'image (qui, où, quel geste), jamais le texte des bulles, qui est déjà du texte HTML
  lisible par un lecteur d'écran. Ils sont traduits dans `tempo-a-file.en.md`.
- **Ordre de lecture** : dans chaque case, l'ordre du Markdown est l'ordre de lecture (encart, puis
  bulles de gauche à droite et de haut en bas, puis sfx). Les sfx sont décoratifs : à exposer avec
  `aria-hidden` sauf s'ils portent l'histoire (case 3 : « tic… tac… » porte l'indice ; à garder
  lisible).
- **Qui parle** : sans `:::dialogue`, le locuteur n'est donné que par la queue de bulle, invisible
  pour un lecteur d'écran. À prévoir en W1 : un nom de locuteur dans le texte accessible de la bulle
  (`aria-label`), ou un attribut `cast=` sur `:::bubble`. Question ouverte, voir §10.
- **Mouvement** : apparition des bulles au scroll désactivée sous `prefers-reduced-motion` ; en
  motion, panoramiques doux, aucun flash.
- **Contraste** : bulles blanches à texte noir en Lexend, encarts sur fond crème `#f2eee5`, jamais
  de texte posé directement sur l'image sombre de la rue.

### 9.2 Mention IA et provenance

- Chaque image de case générée a son fichier de provenance (`p-t3-cNN.webp.json`, `kind: "asset"`,
  `origin: "ai"`, `aiGenerated: true`, `references: ["cast/broc/reference.png", <plaque du décor>]`,
  plan 14 D3 et D7).
- La mention « généré par IA » apparaît dans les **crédits de fin d'épisode** et dans les
  métadonnées publiées (plan 14 §5.1 ; `scenario.aiLabel: credits`, valeur à aligner sur ce défaut).
  Elle n'est pas écrite dans le Markdown de l'épisode : elle vient de la provenance.
- **Publication bloquée** tant que l'auteur et la licence de `reference.png` manquent (bible §1,
  §14). Un build `--strict` refuse aussi les traits `inferred` (Mila, Tempo, voix) et toute image de
  remplacement restante.

### 9.3 Cohérence et relecture

- Relire chaque case générée contre la bible §2.5 : pas de vêtement, pas de casquette, pas de
  smoking, pas d'objet tenu, couronne intacte, verts inchangés par l'éclairage ambre ou indigo.
- Mila et Tempo doivent rester **moins détaillés** que Broc (bible §8).
- La vitrine de la case 8 ne doit montrer ni enseigne lisible ni marque.

## 10. Questions ouvertes (à reporter aux plans propriétaires)

1. **Longueur.** La bible §10 (règle 1) dit « 3 à 7 scènes » par récit ; un épisode de webtoon en
   demande 8 à 12. Proposition : la règle vaut pour `stories` et `motion` courts, et le `toon` a sa
   propre fourchette (8 à 15 cases). À trancher dans la bible.
2. **Plusieurs personnages par scène.** `cast=` (plan 14 D4) ne nomme qu'un personnage ; Mila et
   Tempo ne sont ici que dans l'action des prompts. Proposition : `cast="broc mila"` (liste séparée
   par des espaces), vérifiée au build. À trancher en IA1.
3. **Locuteur d'une bulle.** `:::bubble` n'a pas d'attribut de personnage (plan 08 §2). Lien avec
   `:::dialogue` (plan 14 D6, « plus tard ») et l'accessibilité (§9.1).
4. **`cast:` et `src` dans le JSON** (§5) : champ racine ou `settings` ; `src` facultatif quand
   `prompt=` est présent.
5. **Attribut de `:::dialogue`** : la bible §10 écrit `:::dialogue{who=broc}`, le plan 14 D4 écrit
   `:::dialogue{cast mood}`. Ce scénario n'en utilise pas ; à aligner sur `cast=` dans la bible.
6. **Gabarit `broc-sortie`** : la bible §10 cite cinq beats, le plan 14 ne livre que `three-act` et
   `hook-tension-payoff`. Le gabarit est déclaré ici en `entry=beats` (§4.2) ; à déplacer dans la
   bible partagée de `scenario-lebrocoli`.
