openpencil/templates/step0/_generators
Fini 7970c0c108 chore(editor): keep the template QA gates beside the generators
cjkcheck (CJK line-break simulation), cjkreal (resolved-height cross
check that filters simulator false positives) and gate.sh (audit +
both, per-file verdicts) move from session staging into the generator
tree so the next template batch starts with the gates that vetted
this one. stubcheck is deliberately not kept — the audit's diagnostics
already cover empty decorated stubs via the same predicate.

Claude-Session: https://claude.ai/code/session_01FqKQqNj8exYwopGDpYUU7x
2026-08-09 02:24:44 +08:00
..
assets feat(editor): add step-0 scene templates for the mass-market track 2026-08-02 11:00:34 +08:00
qa chore(editor): keep the template QA gates beside the generators 2026-08-09 02:24:44 +08:00
bake_hints.py feat(editor): add step-0 scene templates for the mass-market track 2026-08-02 11:00:34 +08:00
cardlib.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
oplib.py feat(editor): refresh deck template visuals 2026-08-07 02:00:22 +08:00
previews.sh feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
scene_preview_cards.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl1.py feat(editor): add step-0 scene templates for the mass-market track 2026-08-02 11:00:34 +08:00
tpl2.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl3.py feat(editor): add step-0 scene templates for the mass-market track 2026-08-02 11:00:34 +08:00
tpl_bookreview_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_card_daily.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_card_metric.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_card_notice.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_card_price.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_card_quote.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_card_spine.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_cards.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_cityguide_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_do_dont.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_compare_myth_truth.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_pricing_tiers.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_scenario_guide.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_spec_table.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_three_way.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_time_shift.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_tradeoff_scale.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_compare_version_diff.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_datareport_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_event_deck.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_gradient_tech.py feat(editor): refresh deck template visuals 2026-08-07 02:00:22 +08:00
tpl_infographic_challenge.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_infographic_concept.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_infographic_data.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_infographic_faq.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_infographic_list.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_infographic_map.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_infographic_ranking.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_infographic_steps.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_infographic_story.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_infographic_timeline.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_journal_card.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_lecture_light.py feat(editor): refresh deck template visuals 2026-08-07 02:00:22 +08:00
tpl_minimal_keynote.py feat(editor): refresh deck template visuals 2026-08-07 02:00:22 +08:00
tpl_opinion_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_pitch_dark.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_qa_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_quote_card.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_slides.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_story_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_toolkit_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_diy.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_tutorial_onboarding.py fix(editor): tighten template copy that wrapped into orphan lines 2026-08-09 02:24:44 +08:00
tpl_tutorial_photo.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_recipe.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_report.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_skincare.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_software.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_storage.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_tutorial_workout.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00
tpl_yearreview_carousel.py feat(editor): grow the template library to fifty-eight across six scenes 2026-08-09 02:24:43 +08:00