Skip to content

[M10] Implement completion, rename, and semantic token services #66

Description

@Teakowa

Parent: #27

Depends on: #63, #64, #65

Planning status: provisional until the M9 gate is complete.

Goal

Add editor-neutral completion, semantics-backed rename, and semantic token capabilities on top of Wright's native frontend and symbol/project model.

Scope

  • Implement context-aware completion for supported declarations, symbols, Workshop catalog builtins, events, enums, and source constructs.
  • Implement rename using M9 safe source-edit/refactoring contracts and semantic reference resolution.
  • Implement semantic token classification based on parser/semantic identity rather than textual heuristics.
  • Preserve multi-file/project correctness and source-version preconditions.
  • Degrade safely for incomplete syntax and unsupported constructs.
  • Add focused tests for collisions, shadowing/namespace boundaries, catalog-localized identities, and stale edits.

Non-goals

  • Editor-specific snippet/UI behavior.
  • Guessing rename targets from plain text when semantic identity is unresolved.
  • LSP protocol encoding; separate issue.

Acceptance criteria

  • Completion results are context/semantic aware and deterministic.
  • Rename produces validated source edits or explicit refusal when safety cannot be established.
  • Semantic tokens track actual syntax/semantic kinds and update with document versions.
  • Cross-file behavior follows Wright's project/source model.

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