Files
summercms/.planning/phases/14.2.1-translate-plugin/14.2.1-DISCUSSION-LOG.md
2026-10-06 10:41:43 +02:00

2.6 KiB

Phase 14.2.1: Translate plugin - Discussion Log

Audit trail only. Do not use as input to planning, research, or execution agents. Decisions are captured in CONTEXT.md — this log preserves the alternatives considered.

Date: 2026-10-06 Phase: 14.2.1-translate-plugin Areas discussed: PHP source of truth, what ships, model API, where it boots


PHP source of truth

Option Description Selected
Fonoteka pin 725d547 Newest Płytarium checkout ✓
grzyby pin 6e0c146 Older ancestor
GitHub master at plan time Moving target

User's choice: Freeze at 725d547, read from the Fonoteka path. Read-only with the same urgent-upgrade re-pin rule as Journal.


What ships

Option Description Selected
Lean: Locale + TranslatableModel Unblocks Journal ✓
Lean plus Messages catalogue Extra admin
Full PHP surface Picker, AI/theme, import/export

User's choice: Lean. Cabana mltext/mlmarkdown. PHP Translator resolution (URL prefix / session / cookie / default). Seed en+pl.


Model API

Option Description Selected
Translatable() []string like PHP $translatable Journal copies the PHP list ✓
YAML-only; models unaware
Same Winter attribute tables Cutover-compatible ✓
JSON column per field Breaks Winter import
Fallback to default locale PHP behaviour ✓
Minimum API (WithLocale, get/set, Translator) Enough for Journal ✓
1:1 every PHP method

User's choice: PHP-like declaration, same tables, PHP fallback, minimum exported API.


Where it boots

Option Description Selected
Same sm-grzybyfunkcjonalne-app Matches Phase 15 D-21 ✓
In-module testhost
User creates sm-translate-plugin remote Does not exist yet ✓
Sibling checkout summercms/sm-translate-plugin/ ✓
Proof: Locales admin + fixture en+pl ✓
Plugin tests only

User's choice: Grzyby host with user+translate. User creates the public remote. Proof is boot + Locales admin + fixture model.


Claude's Discretion

  • Exact table/column names from frozen PHP updates
  • ML field identifiers and docs/OpenAPI/dist/ bundling
  • How mlmarkdown shares work with Phase 15 markdown
  • Plan count and split
  • Security-review agent

Deferred Ideas

  • Messages admin, CMS locale components, AI/theme commands
  • ROADMAP Phase 15 depends_on should include 14.2.1 ($gsd-phase --edit 15)