You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make semantic rename a shared Wright refactoring over the project-aware edit transaction contract, preserving the proven OPY/M10 behavior while adding the declared OSTW source surface without creating language- or LSP-specific mutation engines.
Context
M10 already proved project-wide semantic rename for OPY, but that behavior lives across language-service/workspace code that predates the M14 shared edit transaction boundary. #128 establishes the frontend-aware atomic validation contract needed to make rename a reusable semantic operation.
M14 should consolidate rename around semantic identity and validated source edits before exposing mutation to agents or adding further refactorings.
Scope
Reuse Wright semantic symbols/references/project ownership to resolve the rename target and collect only semantically identical occurrences.
Produce one validated multi-source edit transaction rather than textual whole-document replacement.
Preserve current OPY project-wide rename behavior, including includes, open overlays, source/version preconditions, collisions, and stale refusal.
Add semantics-backed rename for the accepted OSTW source/project surface where current semantic identity and source spans prove correctness.
Support declarations and references across imports/project files when the shared semantic model exposes them.
Refuse ambiguous, unsupported, generated-only, or otherwise unsafe rename targets explicitly.
Parent: #127
Depends on: #128
Goal
Make semantic rename a shared Wright refactoring over the project-aware edit transaction contract, preserving the proven OPY/M10 behavior while adding the declared OSTW source surface without creating language- or LSP-specific mutation engines.
Context
M10 already proved project-wide semantic rename for OPY, but that behavior lives across language-service/workspace code that predates the M14 shared edit transaction boundary. #128 establishes the frontend-aware atomic validation contract needed to make rename a reusable semantic operation.
M14 should consolidate rename around semantic identity and validated source edits before exposing mutation to agents or adding further refactorings.
Scope
Non-goals
Acceptance criteria
Relationships