Goal
Build opy-rs into an independent OverPy-compatible engine that owns OverPy language semantics and compiler behavior while integrating with canonical Workshop semantics from workshop-rs.
Context
opy-rs owns OverPy syntax, preprocessing/macros, semantic resolution, HIR, diagnostics/source mapping, source-language tooling, compiler behavior, and scoped Workshop -> OPY reconstruction.
workshop-rs owns canonical Workshop semantics, catalog, public Program representation, settings/localization, validation, and emission. Wright consumes these owner capabilities and must not fill missing OPY or Workshop semantics in the integration layer.
The durable forward data flow is:
OPY source -> parse/preprocess -> semantic resolution/HIR -> OPY lowering -> workshop-rs Program -> validation/emission
Scope
- Parse and preprocess supported OverPy source with recoverable diagnostics and accurate authored-source locations.
- Resolve declarations, expressions, receivers/members, builtins, enums/constants, macros, directives, settings, and other declared language semantics into a tooling-usable semantic model.
- Expose semantic APIs suitable for check, diagnostics, inspect, lint, validated source tooling, CI, and agent workflows independently of final Workshop text emission.
- Lower supported OPY semantics through canonical
workshop-rs contracts.
- Protect compatibility through ordinary tests, pinned upstream reference comparisons, focused regressions, and representative real-project workflows where they add independent coverage.
- Converge supported forward compiler output structurally on the pinned OverPy reference within the current compatibility contract; keep approved exceptions explicit and tested.
- Keep source-language and Workshop capability gaps attributable to their owning repository.
- Treat Workshop -> OPY reconstruction as a separately reviewed semantic-equivalence/useful-source capability with explicit information-loss boundaries.
Non-goals
- Duplicating canonical Workshop actions, values, events, enums, settings, localization, validation, representation, or emission logic in
opy-rs.
- Adding WrightKit-only OverPy syntax or semantics.
- Reproducing upstream internal architecture, helper implementation, or IR solely for fidelity.
- Requiring text-identical output for formatting differences outside the structural compiler contract.
- Hiding owner gaps behind text-reparse fallbacks, fixture-specific workarounds, or Wright-side semantic compensation.
- Treating manually maintained status text, issue checklists, or support inventories as proof of compatibility.
Acceptance criteria
- Supported OPY source can be parsed, semantically resolved, inspected, and diagnosed without depending on an upstream runtime.
- Supported OPY programs lower through the canonical Workshop
Program boundary with structured diagnostics and source mapping where authored locations exist.
- Forward compiler behavior within the declared support surface is protected by owner tests and pinned reference comparisons appropriate to the capability.
- Representative real-project workflows are used when they protect interactions not economically covered by focused tests.
- No authoritative Workshop semantics are duplicated in
opy-rs.
- Cross-repository gaps follow the owner sequence:
owner contract/tests -> consumable release/revision -> opy-rs integration -> workflow verification.
- Reconstruction, where supported, follows an explicit semantic-equivalence/useful-source contract rather than promising literal recovery.
Ownership
- OverPy language semantics and compiler behavior:
opy-rs.
- Canonical Workshop semantics and representation:
workshop-rs.
- Product integration/tooling consumption:
wright.
Goal
Build
opy-rsinto an independent OverPy-compatible engine that owns OverPy language semantics and compiler behavior while integrating with canonical Workshop semantics fromworkshop-rs.Context
opy-rsowns OverPy syntax, preprocessing/macros, semantic resolution, HIR, diagnostics/source mapping, source-language tooling, compiler behavior, and scoped Workshop -> OPY reconstruction.workshop-rsowns canonical Workshop semantics, catalog, publicProgramrepresentation, settings/localization, validation, and emission. Wright consumes these owner capabilities and must not fill missing OPY or Workshop semantics in the integration layer.The durable forward data flow is:
OPY source -> parse/preprocess -> semantic resolution/HIR -> OPY lowering -> workshop-rs Program -> validation/emissionScope
workshop-rscontracts.Non-goals
opy-rs.Acceptance criteria
Programboundary with structured diagnostics and source mapping where authored locations exist.opy-rs.owner contract/tests -> consumable release/revision -> opy-rs integration -> workflow verification.Ownership
opy-rs.workshop-rs.wright.