Skip to content

[M13 investigation] Establish OSTW reference, corpus, licensing, and semantic support baseline #113

Description

@Teakowa

Parent: #90
Depends on: #106

Goal

Perform the evidence-gathering phase required before Wright decomposes or implements OSTW support: establish the upstream OSTW reference boundary, licensing/provenance constraints, viable oracle/reference machinery, a representative real-world corpus, and a bounded semantic support inventory.

This is a read-only investigation/planning task. It must not implement an OSTW parser, type system, emitter, or language service.

Context

#90 intentionally forbids detailed OSTW implementation decomposition until Architect/QA have inspected the actual upstream implementation and PM has approved corpus evidence. #106 now provides the reusable upstream-reference documentation and compatibility-baseline methodology used for OverPy.

Wright's product direction remains tooling-first: an OSTW frontend is enabling infrastructure for check, diagnostics, lint, analyze, inspect, source editing, agents, CI, and Workshop-centered interoperability.

Scope

  • Identify the current upstream OSTW project/repository and the implementation components relevant to language semantics, compiler behavior, Workshop emission, decompilation/source reconstruction, and language services.
  • Review licensing and provenance constraints for studying upstream source and using it as a compatibility/reference oracle.
  • Propose a pinned reference identity/version policy and record durable project-level facts in docs/compatibility/upstream-references.md.
  • Determine practical reference/oracle execution options for repeatable tests without making upstream .NET/runtime components a supported production dependency.
  • Inventory the OSTW language surface by semantic category using the same distinction established by Establish a proactive OPY compatibility baseline from the pinned upstream language surface #106:
    • syntax/parse;
    • semantic/type/name resolution;
    • compile/emission semantics;
    • tooling/language-service semantics;
    • decompile/source-reconstruction behavior where relevant;
    • known reference limitations/quirks.
  • Acquire or identify a representative real-world OSTW corpus with provenance and enough diversity to define an initial support boundary.
  • Classify candidate categories as baseline-supported/planned, evidence-prioritized, legacy/quirk demand-driven, or reference-limited/inconclusive as appropriate.
  • Identify which semantic services/data can reuse Wright's existing Workshop/WIR/session/tooling contracts and which genuinely require OSTW-specific frontend semantics.
  • Evaluate Workshop -> OSTW and OSTW -> Workshop evidence requirements separately; do not assume symmetry implies direct OPY <-> OSTW work.
  • Produce a PM-ready proposed decomposition grouped by semantic responsibility, not implementation convenience.

Non-goals

  • Implementing any OSTW frontend/compiler/language-service code.
  • Creating parser/type-system/emitter implementation issues before this investigation is accepted.
  • Requiring byte-identical OSTW compiler output.
  • Reproducing upstream internal architecture for its own sake.
  • Wright-only OSTW syntax/extensions.
  • Direct OPY <-> OSTW conversion design.
  • Perfect recovery of original comments, formatting, macros, or lost abstractions from Workshop.

Deliverables

  • Durable OSTW entry in docs/compatibility/upstream-references.md with repository identity, license, proposed pin/reference policy, oracle role, and limitations.
  • OSTW semantic/reference inventory and initial support classification.
  • Corpus inventory/acquisition plan with provenance and selection rationale.
  • Reference/oracle feasibility report.
  • Explicit architecture reuse/boundary findings for compiler/session/WIR/tooling/source-provenance services.
  • Proposed bounded M13 implementation categories and dependency order, pending PM approval.

Acceptance criteria

  • The upstream implementation and language-service/compiler boundaries have been inspected from actual source/repository evidence.
  • Licensing/provenance and reference execution constraints are documented before implementation planning.
  • A concrete initial corpus exists or has a reproducible acquisition plan sufficient for PM to approve the first support boundary.
  • The investigation distinguishes observable semantic compatibility from output/internal implementation identity.
  • Proposed implementation categories are driven by corpus/tooling value and semantic ownership, not by a desire to clone the upstream compiler.
  • No OSTW implementation code or premature parser/type-system/emitter decomposition is introduced.
  • PM has enough evidence to reassess [M13] Source-language interoperability and OSTW compatibility #90 and decide the first implementation milestone.

Relationships

Activity

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions