Skip to content

Reach Workshop-independent OPY frontend completeness and expose tooling APIs #7

Description

@Teakowa

Parent: #1

Goal

Close the remaining Workshop-independent compatibility gaps and expose a stable enough frontend API for Wright and other consumers to parse, check, inspect, and reason about OPY source before end-to-end compilation is connected.

Current baseline

The standalone frontend/tooling/runtime foundation, documentation rebaseline, and strengthened compatibility evidence are merged on main. The canonical Workshop core gate in wrightkit/workshop-rs#2 is also complete.

The remaining frontend-readiness work is now split into three executable tracks:

The current support matrix still contains eight planned rows, but #30 must first separate genuine OPY semantic overlay work from canonical Workshop catalog/member/domain coverage. Do not treat the current row count as eight independent implementation requirements.

Workshop-owned validation, catalog population, emission, post-compile-hook execution against final Workshop text, settings/catalog validation, and locale behavior remain integration work under #8.

Scope

  • Complete the remaining pure OPY syntax and source-language directive/preprocessing behavior with corpus/oracle evidence.
  • Keep OPY-owned semantic metadata limited to language/API behavior that cannot be derived from canonical Workshop contracts.
  • Reclassify mixed builtin/member/enum rows so authoritative Workshop catalog breadth is not represented as unfinished Workshop-independent work.
  • Stabilize structured diagnostics across parse, preprocessing, macro expansion, runtime, and semantic-resolution stages.
  • Preserve library APIs for parsing, resolved semantic queries, symbol/reference lookup, source provenance, compatibility/support metadata, and validated source tooling.
  • Validate representative real-world and minimized-regression corpus cases end to end through the OPY semantic model.
  • Document known limitations and explicitly separate integration-dependent gaps from unsupported frontend behavior.

Non-goals

  • Wright-specific lint rules, agent orchestration, or UI behavior.
  • Full-file source regeneration/pretty-printing as the default editing model.
  • Workshop emission, canonical catalog ownership, locale data, or decompilation.
  • Copying Workshop data into opy-rs merely to increase compatibility counts.
  • Declaring full compiler compatibility before Integrate OPY lowering and end-to-end compatibility with workshop-rs #8 integration evidence exists.

Acceptance criteria

Dependencies

Planning notes

#7 is now the final pre-integration gate. Once #28#30 satisfy the acceptance criteria, close #7 and refine #8 into the smallest executable integration changes. wrightkit/workshop-rs#10 strengthens future conformance/census evidence but is not a blocker for establishing the basic OPY→Workshop integration boundary.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status
    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions