Skip to content

Spike 4: CKEditor 5 Footnotes and Tibetan Unicode

Status: Pending Lead: Than Grove (built D7 shanti_texts and footnotes) Mode: Individual Date:Commit:

Theory

Existing Texts site content — including CKEditor 4 footnote markup and Unicode Tibetan script — can be reliably transformed and migrated to Drupal 11 without data loss.

Scope note (added 2026-06-15, roadmap planning)

This spike originally fused two distinct concerns that the roadmap separates:

  • (a) Tibetan Unicode round-trip — cross-cutting, not Texts-only. True Tibetan script lives in Texts bodies and AV transcripts; Latin transliteration (EWTS/Wylie + diacritics) is pervasive in metadata across sites (e.g., Images). The transliteration risk is Unicode normalization fidelity (NFC vs NFD) through Migrate API → MySQL collation → Solr. The Images pilot exercises the transliteration-normalization path; this spike covers the true-script path in Texts/AV. A green Images pilot does not retire the script risk.
  • (b) CKEditor 4→5 footnote markup transformation — Texts-specific. The rich-text-body problem; genuinely independent of (a).

Open question: depending on the AV transcript format (plain text vs. structured / time-coded / rich markup), the footnote work (b) and AV transcript handling may be the same underlying proof ("structured Tibetan rich-text round-trip"). If so, this spike should formally split/merge accordingly — a change to be ratified by the team before the work starts.

Demo

To be completed when spike is run.

Findings

To be completed when spike is run.

What this does NOT establish

To be completed when spike is run.

Deferred notes

To be completed when spike is run.


Reference: Pass Criteria

  • Footnote markup format for both CKEditor 4 and 5 is fully documented
  • A deterministic transformation function handles all patterns found in the sample
  • Transformed content renders correctly in CKEditor 5
  • Tibetan Unicode content round-trips through the D11 database without corruption
  • Latin transliteration (EWTS/Wylie) preserves diacritics at a consistent Unicode normalization form (NFC/NFD) through Migrate API → MySQL → Solr — no silent normalization drift
  • Edge cases are documented and accounted for

Reference: Fail Criteria

Finding Response
CKEditor 4 markup is inconsistent across the corpus Plan a content cleanup pass in D7 before migration
footnotes 4.x uses a fundamentally different storage model Evaluate alternative footnote modules for D11
Complex footnote patterns cannot be transformed deterministically Manual content review required; scope the cleanup effort
Tibetan Unicode corrupted in D11 database Verify utf8mb4 charset and collation settings

Full spike definition: docs/planning/spikes-plan.md