Skip to content

Epic: strengthen TypeScript ownership around block registration and upstream Gutenberg tracking #284

Closed

Description

@imjlk

Summary

Recent Gutenberg work, especially WordPress/gutenberg#76312, reinforced a direction that is highly relevant for wp-typia:

  • own the important TypeScript surface locally instead of depending on broad downstream declarations
  • tighten helper signatures so they preserve type information instead of forcing casts later
  • treat recurring upstream TypeScript changes as something to watch intentionally, not incidentally

wp-typia already has strong type-first foundations. The next step is to reduce cast-heavy boundaries around block registration and generated JSON artifacts, then use that cleaner foundation to ratchet stricter compiler behavior and monitor upstream Gutenberg changes on a schedule.

Desired Outcomes

  • A locally owned block registration type surface that generated projects can depend on.
  • Fewer JSON import and helper-boundary casts in scaffolds, examples, and runtime packages.
  • Typia validators active at JSON artifact boundaries instead of raw as casts.
  • A clearer path to stricter TypeScript settings in targeted packages.
  • A recurring upstream watch for Gutenberg TypeScript changes that may require local follow-up.

Sub-issues

Notes

This epic is intentionally about sequencing as much as scope:

  1. own the type surface (Own block registration TypeScript surface in @wp-typia/block-types #279)
  2. emit typed wrappers and remove code-generated double-casts (Emit typed wrappers for generated block.json and typia.manifest.json artifacts #280)
  3. tighten helper design (Refine scaffold/runtime helpers to preserve generic types and remove cast hotspots #281)
  4. wire Typia validators into the cleaned-up boundaries (Integrate Typia validators at generated JSON artifact boundaries #286)
  5. ratchet strictness where it becomes useful (Prepare a targeted TypeScript strictness ratchet after boundary cleanup #282)
  6. keep watching upstream so the local surface stays healthy (Add a scheduled Gutenberg upstream TypeScript watch and triage workflow #283)

Activity

  1. imjlk commented on Apr 15, 2026

    @imjlk
    OwnerAuthor

    Closing this epic now that #279, #280, #281, #282, #283, and #286 are merged, and the remaining follow-up review from #288 landed in #293.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions