mmu-cli 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. mmu_cli-0.1.0/.gitignore +276 -0
  2. mmu_cli-0.1.0/LICENSE +674 -0
  3. mmu_cli-0.1.0/PKG-INFO +217 -0
  4. mmu_cli-0.1.0/README.md +159 -0
  5. mmu_cli-0.1.0/THIRD-PARTY-NOTICES.md +72 -0
  6. mmu_cli-0.1.0/pyproject.toml +388 -0
  7. mmu_cli-0.1.0/requirements.txt +55 -0
  8. mmu_cli-0.1.0/src/mixed_media_utility/__init__.py +1 -0
  9. mmu_cli-0.1.0/src/mixed_media_utility/cadence_previz.py +1997 -0
  10. mmu_cli-0.1.0/src/mixed_media_utility/cli.py +5325 -0
  11. mmu_cli-0.1.0/src/mixed_media_utility/codec_profiles.py +2373 -0
  12. mmu_cli-0.1.0/src/mixed_media_utility/color_calibration.py +4303 -0
  13. mmu_cli-0.1.0/src/mixed_media_utility/color_metrics.py +1314 -0
  14. mmu_cli-0.1.0/src/mixed_media_utility/color_pipeline.py +388 -0
  15. mmu_cli-0.1.0/src/mixed_media_utility/constants.py +6 -0
  16. mmu_cli-0.1.0/src/mixed_media_utility/declaration_de_rush.py +1335 -0
  17. mmu_cli-0.1.0/src/mixed_media_utility/detection/__init__.py +35 -0
  18. mmu_cli-0.1.0/src/mixed_media_utility/detection/aruco.py +463 -0
  19. mmu_cli-0.1.0/src/mixed_media_utility/encode.py +3204 -0
  20. mmu_cli-0.1.0/src/mixed_media_utility/encode_master.py +724 -0
  21. mmu_cli-0.1.0/src/mixed_media_utility/encode_previz.py +1976 -0
  22. mmu_cli-0.1.0/src/mixed_media_utility/extraction.py +1723 -0
  23. mmu_cli-0.1.0/src/mixed_media_utility/extraction_previz.py +1002 -0
  24. mmu_cli-0.1.0/src/mixed_media_utility/ffmpeg_utils.py +629 -0
  25. mmu_cli-0.1.0/src/mixed_media_utility/frame_selection.py +994 -0
  26. mmu_cli-0.1.0/src/mixed_media_utility/gamut_map.py +393 -0
  27. mmu_cli-0.1.0/src/mixed_media_utility/gui/__init__.py +6 -0
  28. mmu_cli-0.1.0/src/mixed_media_utility/gui/__main__.py +102 -0
  29. mmu_cli-0.1.0/src/mixed_media_utility/gui/application.py +125 -0
  30. mmu_cli-0.1.0/src/mixed_media_utility/gui/atelier_scan.py +639 -0
  31. mmu_cli-0.1.0/src/mixed_media_utility/gui/barre_de_vue.py +310 -0
  32. mmu_cli-0.1.0/src/mixed_media_utility/gui/cartes_taches.py +214 -0
  33. mmu_cli-0.1.0/src/mixed_media_utility/gui/catalogue.py +399 -0
  34. mmu_cli-0.1.0/src/mixed_media_utility/gui/chargeur_detections.py +119 -0
  35. mmu_cli-0.1.0/src/mixed_media_utility/gui/chutier.py +1153 -0
  36. mmu_cli-0.1.0/src/mixed_media_utility/gui/coquille.py +1384 -0
  37. mmu_cli-0.1.0/src/mixed_media_utility/gui/depot_projets.py +266 -0
  38. mmu_cli-0.1.0/src/mixed_media_utility/gui/ecran_projet.py +958 -0
  39. mmu_cli-0.1.0/src/mixed_media_utility/gui/executeur.py +193 -0
  40. mmu_cli-0.1.0/src/mixed_media_utility/gui/feuille_application.py +257 -0
  41. mmu_cli-0.1.0/src/mixed_media_utility/gui/jetons.py +432 -0
  42. mmu_cli-0.1.0/src/mixed_media_utility/gui/lecture_detection.py +431 -0
  43. mmu_cli-0.1.0/src/mixed_media_utility/gui/modele_chutier.py +680 -0
  44. mmu_cli-0.1.0/src/mixed_media_utility/gui/modele_projets.py +279 -0
  45. mmu_cli-0.1.0/src/mixed_media_utility/gui/modele_zone_tampon.py +478 -0
  46. mmu_cli-0.1.0/src/mixed_media_utility/gui/preferences_projets.py +98 -0
  47. mmu_cli-0.1.0/src/mixed_media_utility/gui/raster_de_page.py +153 -0
  48. mmu_cli-0.1.0/src/mixed_media_utility/gui/scan_jugement.py +1351 -0
  49. mmu_cli-0.1.0/src/mixed_media_utility/gui/surimpressions.py +520 -0
  50. mmu_cli-0.1.0/src/mixed_media_utility/gui/zone_tampon.py +587 -0
  51. mmu_cli-0.1.0/src/mixed_media_utility/io/__init__.py +67 -0
  52. mmu_cli-0.1.0/src/mixed_media_utility/io/calibration_profile.py +1316 -0
  53. mmu_cli-0.1.0/src/mixed_media_utility/io/encode_manifest.py +940 -0
  54. mmu_cli-0.1.0/src/mixed_media_utility/io/extraction_manifest.py +2018 -0
  55. mmu_cli-0.1.0/src/mixed_media_utility/io/manifest.py +319 -0
  56. mmu_cli-0.1.0/src/mixed_media_utility/io/metadata_matrix.py +237 -0
  57. mmu_cli-0.1.0/src/mixed_media_utility/io/naming.py +1516 -0
  58. mmu_cli-0.1.0/src/mixed_media_utility/io/payload.py +1334 -0
  59. mmu_cli-0.1.0/src/mixed_media_utility/io/pdf_manifest.py +483 -0
  60. mmu_cli-0.1.0/src/mixed_media_utility/io/profile_designation.py +478 -0
  61. mmu_cli-0.1.0/src/mixed_media_utility/io/project_layout.py +660 -0
  62. mmu_cli-0.1.0/src/mixed_media_utility/io/reconstruction.py +1120 -0
  63. mmu_cli-0.1.0/src/mixed_media_utility/io/scan_manifest.py +2216 -0
  64. mmu_cli-0.1.0/src/mixed_media_utility/io/version_ranks.py +164 -0
  65. mmu_cli-0.1.0/src/mixed_media_utility/layout.py +313 -0
  66. mmu_cli-0.1.0/src/mixed_media_utility/makepdf.py +1097 -0
  67. mmu_cli-0.1.0/src/mixed_media_utility/numeric_guards.py +44 -0
  68. mmu_cli-0.1.0/src/mixed_media_utility/page_payload.py +360 -0
  69. mmu_cli-0.1.0/src/mixed_media_utility/page_roles.py +149 -0
  70. mmu_cli-0.1.0/src/mixed_media_utility/page_templates.py +2701 -0
  71. mmu_cli-0.1.0/src/mixed_media_utility/patch_presets.py +1599 -0
  72. mmu_cli-0.1.0/src/mixed_media_utility/patch_values.py +1018 -0
  73. mmu_cli-0.1.0/src/mixed_media_utility/pdf_composition.py +2763 -0
  74. mmu_cli-0.1.0/src/mixed_media_utility/pdf_previz.py +1017 -0
  75. mmu_cli-0.1.0/src/mixed_media_utility/pdf_render.py +417 -0
  76. mmu_cli-0.1.0/src/mixed_media_utility/previz_common.py +361 -0
  77. mmu_cli-0.1.0/src/mixed_media_utility/progression.py +340 -0
  78. mmu_cli-0.1.0/src/mixed_media_utility/project_inventory.py +1213 -0
  79. mmu_cli-0.1.0/src/mixed_media_utility/project_maintenance.py +2995 -0
  80. mmu_cli-0.1.0/src/mixed_media_utility/qr_codes.py +920 -0
  81. mmu_cli-0.1.0/src/mixed_media_utility/relink.py +634 -0
  82. mmu_cli-0.1.0/src/mixed_media_utility/scan_calibrate.py +855 -0
  83. mmu_cli-0.1.0/src/mixed_media_utility/scan_chain.py +240 -0
  84. mmu_cli-0.1.0/src/mixed_media_utility/scan_corrections.py +1166 -0
  85. mmu_cli-0.1.0/src/mixed_media_utility/scan_crop.py +481 -0
  86. mmu_cli-0.1.0/src/mixed_media_utility/scan_detect.py +1395 -0
  87. mmu_cli-0.1.0/src/mixed_media_utility/scan_detection.py +1432 -0
  88. mmu_cli-0.1.0/src/mixed_media_utility/scan_ingest.py +1974 -0
  89. mmu_cli-0.1.0/src/mixed_media_utility/scan_output_frames.py +2238 -0
  90. mmu_cli-0.1.0/src/mixed_media_utility/scan_previz.py +3113 -0
  91. mmu_cli-0.1.0/src/mixed_media_utility/scan_sorting.py +825 -0
  92. mmu_cli-0.1.0/src/mixed_media_utility/scan_write.py +2298 -0
  93. mmu_cli-0.1.0/src/mixed_media_utility/source_confirmation.py +1225 -0
  94. mmu_cli-0.1.0/src/mixed_media_utility/specs/project.schema.json +999 -0
  95. mmu_cli-0.1.0/src/mixed_media_utility/specs/project.schema.legacy.json +52 -0
  96. mmu_cli-0.1.0/src/mixed_media_utility/specs/project.schema.v2-0.json +323 -0
  97. mmu_cli-0.1.0/src/mixed_media_utility/tui/__init__.py +14 -0
  98. mmu_cli-0.1.0/src/mixed_media_utility/tui/__main__.py +370 -0
  99. mmu_cli-0.1.0/src/mixed_media_utility/tui/aide_de_champ.py +492 -0
  100. mmu_cli-0.1.0/src/mixed_media_utility/tui/ajout_de_rush.py +1497 -0
  101. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_confirmation.py +779 -0
  102. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_execution.py +880 -0
  103. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_lot.py +1401 -0
  104. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_parcours.py +1188 -0
  105. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_reglages.py +1098 -0
  106. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_resultat.py +730 -0
  107. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_exports_versions.py +892 -0
  108. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_extraction.py +2810 -0
  109. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_extraction_ecriture.py +3477 -0
  110. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf.py +676 -0
  111. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_calibration.py +1980 -0
  112. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_confirmation.py +845 -0
  113. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_execution.py +997 -0
  114. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_lots.py +761 -0
  115. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_parcours.py +1477 -0
  116. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_reglages.py +775 -0
  117. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_resultat.py +768 -0
  118. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_pdf_versions.py +1258 -0
  119. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan.py +1682 -0
  120. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_calibrate.py +2725 -0
  121. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_calibration.py +1250 -0
  122. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_completion.py +1235 -0
  123. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_confirmation.py +915 -0
  124. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_detection.py +1169 -0
  125. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_ecriture.py +975 -0
  126. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_parcours.py +2297 -0
  127. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_rapport.py +648 -0
  128. mmu_cli-0.1.0/src/mixed_media_utility/tui/atelier_scan_resultat.py +767 -0
  129. mmu_cli-0.1.0/src/mixed_media_utility/tui/avancement.py +206 -0
  130. mmu_cli-0.1.0/src/mixed_media_utility/tui/cadences.py +937 -0
  131. mmu_cli-0.1.0/src/mixed_media_utility/tui/coque.py +1052 -0
  132. mmu_cli-0.1.0/src/mixed_media_utility/tui/ecran_ateliers.py +264 -0
  133. mmu_cli-0.1.0/src/mixed_media_utility/tui/ecran_manuel.py +582 -0
  134. mmu_cli-0.1.0/src/mixed_media_utility/tui/ecran_projet.py +1245 -0
  135. mmu_cli-0.1.0/src/mixed_media_utility/tui/execution.py +2351 -0
  136. mmu_cli-0.1.0/src/mixed_media_utility/tui/explorateur.py +1950 -0
  137. mmu_cli-0.1.0/src/mixed_media_utility/tui/jetons.py +1082 -0
  138. mmu_cli-0.1.0/src/mixed_media_utility/tui/manuel.py +513 -0
  139. mmu_cli-0.1.0/src/mixed_media_utility/tui/noms.py +319 -0
  140. mmu_cli-0.1.0/src/mixed_media_utility/tui/palier_profil_defaut.py +1204 -0
  141. mmu_cli-0.1.0/src/mixed_media_utility/tui/palier_projet.py +469 -0
  142. mmu_cli-0.1.0/src/mixed_media_utility/tui/panneau.py +393 -0
  143. mmu_cli-0.1.0/src/mixed_media_utility/tui/projet_inventaire.py +2522 -0
  144. mmu_cli-0.1.0/src/mixed_media_utility/tui/projet_lecture.py +373 -0
  145. mmu_cli-0.1.0/src/mixed_media_utility/tui/projet_medias.py +335 -0
  146. mmu_cli-0.1.0/src/mixed_media_utility/tui/projet_suppression.py +2987 -0
  147. mmu_cli-0.1.0/src/mixed_media_utility/tui/projets.py +447 -0
  148. mmu_cli-0.1.0/src/mixed_media_utility/tui/rushes.py +1181 -0
  149. mmu_cli-0.1.0/src/mixed_media_utility/video_metadata.py +416 -0
@@ -0,0 +1,276 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[codz]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ share/python-wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+
29
+ # PyInstaller
30
+ # Usually these files are written by a python script from a template
31
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
32
+ *.manifest
33
+ *.spec
34
+
35
+ # Installer logs
36
+ pip-log.txt
37
+ pip-delete-this-directory.txt
38
+
39
+ # Unit test / coverage reports
40
+ htmlcov/
41
+ .tox/
42
+ .nox/
43
+ .coverage
44
+ .coverage.*
45
+ .cache
46
+ nosetests.xml
47
+ coverage.xml
48
+ *.cover
49
+ *.py.cover
50
+ .hypothesis/
51
+ .pytest_cache/
52
+ cover/
53
+
54
+ # mutmut (mutation testing) : bac a sable et cache de campagne, jamais commites
55
+ mutants/
56
+ .mutmut-cache*
57
+
58
+ # Translations
59
+ *.mo
60
+ *.pot
61
+
62
+ # Django stuff:
63
+ *.log
64
+ local_settings.py
65
+ db.sqlite3
66
+ db.sqlite3-journal
67
+
68
+ # Flask stuff:
69
+ instance/
70
+ .webassets-cache
71
+
72
+ # Scrapy stuff:
73
+ .scrapy
74
+
75
+ # Sphinx documentation
76
+ docs/_build/
77
+
78
+ # PyBuilder
79
+ .pybuilder/
80
+ target/
81
+
82
+ # Jupyter Notebook
83
+ .ipynb_checkpoints
84
+
85
+ # IPython
86
+ profile_default/
87
+ ipython_config.py
88
+
89
+ # pyenv
90
+ # For a library or package, you might want to ignore these files since the code is
91
+ # intended to run in multiple environments; otherwise, check them in:
92
+ # .python-version
93
+
94
+ # pipenv
95
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
96
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
97
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
98
+ # install all needed dependencies.
99
+ # Pipfile.lock
100
+
101
+ # UV
102
+ # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
103
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
104
+ # commonly ignored for libraries.
105
+ # uv.lock
106
+
107
+ # poetry
108
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
109
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
110
+ # commonly ignored for libraries.
111
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
112
+ # poetry.lock
113
+ # poetry.toml
114
+
115
+ # pdm
116
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
117
+ # pdm recommends including project-wide configuration in pdm.toml, but excluding .pdm-python.
118
+ # https://pdm-project.org/en/latest/usage/project/#working-with-version-control
119
+ # pdm.lock
120
+ # pdm.toml
121
+ .pdm-python
122
+ .pdm-build/
123
+
124
+ # pixi
125
+ # Similar to Pipfile.lock, it is generally recommended to include pixi.lock in version control.
126
+ # pixi.lock
127
+ # Pixi creates a virtual environment in the .pixi directory, just like venv module creates one
128
+ # in the .venv directory. It is recommended not to include this directory in version control.
129
+ .pixi
130
+
131
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
132
+ __pypackages__/
133
+
134
+ # Celery stuff
135
+ celerybeat-schedule
136
+ celerybeat.pid
137
+
138
+ # Redis
139
+ *.rdb
140
+ *.aof
141
+ *.pid
142
+
143
+ # RabbitMQ
144
+ mnesia/
145
+ rabbitmq/
146
+ rabbitmq-data/
147
+
148
+ # ActiveMQ
149
+ activemq-data/
150
+
151
+ # SageMath parsed files
152
+ *.sage.py
153
+
154
+ # Environments
155
+ .env
156
+ .envrc
157
+ .venv
158
+ env/
159
+ venv/
160
+ ENV/
161
+ env.bak/
162
+ venv.bak/
163
+
164
+ # Spyder project settings
165
+ .spyderproject
166
+ .spyproject
167
+
168
+ # Rope project settings
169
+ .ropeproject
170
+
171
+ # mkdocs documentation
172
+ /site
173
+
174
+ # mypy
175
+ .mypy_cache/
176
+ .dmypy.json
177
+ dmypy.json
178
+
179
+ # Pyre type checker
180
+ .pyre/
181
+
182
+ # pytype static type analyzer
183
+ .pytype/
184
+
185
+ # Cython debug symbols
186
+ cython_debug/
187
+
188
+ # PyCharm
189
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
190
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
191
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
192
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
193
+ # .idea/
194
+
195
+ # Abstra
196
+ # Abstra is an AI-powered process automation framework.
197
+ # Ignore directories containing user credentials, local state, and settings.
198
+ # Learn more at https://abstra.io/docs
199
+ .abstra/
200
+
201
+ # Visual Studio Code
202
+ # Visual Studio Code specific template is maintained in a separate VisualStudioCode.gitignore
203
+ # that can be found at https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore
204
+ # and can be added to the global gitignore or merged into this file. However, if you prefer,
205
+ # you could uncomment the following to ignore the entire vscode folder
206
+ # .vscode/
207
+ # Temporary file for partial code execution
208
+ tempCodeRunnerFile.py
209
+
210
+ # Ruff stuff:
211
+ .ruff_cache/
212
+
213
+ # PyPI configuration file
214
+ .pypirc
215
+
216
+ # Marimo
217
+ marimo/_static/
218
+ marimo/_lsp/
219
+ __marimo__/
220
+
221
+ # Streamlit
222
+ .streamlit/secrets.toml
223
+
224
+ # .claude/skills/ etait ignore ici (jonction locale vers .agents/skills, deja
225
+ # versionnes la-bas). Reversé le 2026-08-05, sur decision d'Egan: dans un
226
+ # environnement distant (claude.ai/code), chaque session repart d'un clone
227
+ # frais du depot, donc un dossier non suivi disparaissait a chaque nouvelle
228
+ # session. Les liens symboliques commites ici sont legers (le blob ne porte
229
+ # que la cible du lien, jamais une copie de SKILL.md): .agents/skills/ reste
230
+ # la seule source de contenu, .claude/skills/ n'est qu'un index de decouverte
231
+ # que Claude Code sait scanner nativement.
232
+
233
+ # Etat local de Claude Code, propre a la machine et jamais partageable:
234
+ # settings.local.json porte des chemins absolus Windows et l'URL du proxy
235
+ # headroom; .headroom_wrap_marker.json est un marqueur de session vivante
236
+ # (pid + port), reecrit a chaque demarrage. La config partagee du depot reste
237
+ # .claude/settings.json, qui lui est versionne.
238
+ .claude/settings.local.json
239
+ .claude/.headroom_wrap_marker.json
240
+
241
+ # Apercus de correction couleur: 35 Mo regenerables en une commande
242
+ # (scripts/research/preview_color_correction.py --images)
243
+ _bmad-output/test-artifacts/apercu-correction/
244
+ mixed_media_utility.code-workspace
245
+
246
+ # Captures de l'interface (scripts/gui/capturer_ecrans.py). Elles se
247
+ # regenerent en une commande et changent a chaque passe de chrome : les
248
+ # versionner ferait un diff binaire a chaque commit de design.
249
+ captures-gui/
250
+
251
+ # Journal de la sonde clavier jetable (vague 1 bis) : une sortie de mesure,
252
+ # regeneree a chaque lancement, jamais un livrable.
253
+ _bmad-output/planning-artifacts/ux-designs/*/trace_clavier.log
254
+
255
+ # Bancs de mesure des agents (revues, campagnes de mutation). Regeneres a
256
+ # chaque campagne, et une copie d arbre y pese jusqu a 4,5 Go : une couche de
257
+ # revue en a laisse 5309 fichiers non suivis le 2026-08-28, que git status
258
+ # rendait illisible. Les mesures vivent dans les rapports, pas ici.
259
+ scratchpad/
260
+ # Les courses de scripts/mesure/mesure.py : des mesures, pas des sources.
261
+ .mesures/
262
+ # Les worktrees que le harnais cree pour isoler un agent (`isolation: worktree`).
263
+ # Meme motif que `scratchpad/` juste au-dessus, et le meme ordre de grandeur :
264
+ # une revue en trois couches en ouvre TROIS, chacune etant une copie complete de
265
+ # l arbre. Ils sont deja des arbres git a part entiere -- les versionner
266
+ # reviendrait a commiter le depot dans le depot. Pose le 2026-09-08, quand la
267
+ # revue de la story 8.10 les a fait apparaitre en non suivis.
268
+ .claude/worktrees/
269
+
270
+ # --- Dossier de travail local, JAMAIS versionne (arbitrage Egan, 2026-09-03) ---
271
+ # `projects/` porte les rushes, scans et planches reels. Il portait 97 % du volume
272
+ # Git LFS du depot (2 217 Mo) et AUCUN test ne le lisait -- les occurrences de
273
+ # `projects/` dans `tests/` sont toutes dans des commentaires. Verbatim d Egan :
274
+ # << c est un dossier qui a vocation a rester local, tout fichier qui devra etre
275
+ # partage devra passer par tests/ >>.
276
+ projects/