Skip to content

Type AST: remove internal string boundaries #167

@frendsick

Description

@frendsick

Parent PRD

#140

What to build

Audit remaining Type ↔ str conversions and keep only the ones at true IO boundaries:

  • error message formatting
  • JSON serialization (LSP, debug dumps)
  • source-text consumers (Op.type_annotation, Op.deferred_return_type)

Drop every other internal parse_type / Type.format round-trip that exists only because the migration plumbed strings through intermediate calls.

Acceptance criteria

  • No internal Type → str → Type round trips remain (grep parse_type and Type.format call sites)
  • Conversion sites limited to: error builders, JSON encode/decode, source-text annotation parsing
  • tests/test_examples.sh + tests/test_compiler.sh (< /dev/null) pass
  • simplify review pass before PR

Blocked by

User stories addressed

Migration step 3 final cleanup in parent PRD.

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