Goal
opy-rs resolves every function the pinned OverPy 9.7.10 accepts, so a real project that uses one compiles instead of failing or losing the call.
Context
A probe of every non-operator function in the pinned OverPy 9.7.10 against opy-rs 0.1.58 found calls the reference accepts that opy-rs rejects because the name does not resolve (unknown-action, unknown-value, unknown-member). A project that uses one of them fails to compile or loses the call. Names are checked against the manifest; all 117 already exist in the workshop-rs catalog as native Workshop entries (112 under the same id, 5 under a differently spelled id), so the gap is in the opy-rs source-language surface (manifest entries, aliases and lowering), not in Workshop data.
The measured gap is 117 functions: 22 actions, 53 values and 42 member functions. Probe method: for each of the 412 non-operator OverPy functions, compile a type-appropriate sample call with the reference and with opy-rs, and count calls the reference accepts and opy-rs rejects with an unresolved-name error. Keyword forms (true, null, eventPlayer, hostPlayer, localPlayer, attacker, victim, healer) and probe-sample mistakes are excluded. Argument-level differences on names that already resolve are not counted here.
Scope
Close the gap in three batches: actions, values, member functions. Each batch is its own sub-issue.
Non-goals
- Literal-spelling parity (
False/True/Null versus 0/1) and other default-mode coercions; Wright and workshop-rs canonicalize these and they are semantically equivalent.
- Adding or renaming workshop-rs catalog entries; if a name turns out to have no native catalog entry, route it to workshop-rs instead of adding Workshop data here.
Acceptance criteria
- All three sub-issues are closed.
- Re-running the name-resolution probe over the 412 functions reports zero
unknown-action, unknown-value or unknown-member for a call the reference accepts.
Dependencies
None. Batches are independent.
Classification
Each name was checked twice: the pinned OverPy 9.7.10 metadata declares a Workshop en-US name for it, and that en-US name is an article in the workshop.codes wiki inventory of Workshop actions and values, which is independent of OverPy. That en-US name also resolves to an entry in the workshop-rs catalog. None of the 117 is an OverPy-only wrapper, so no new Workshop data and no new workshop-rs entry is needed for this work.
Result: 112 names match a catalog id exactly; 5 differ only in the catalog id spelling (listed in the sub-issues) and need a manifest alias.
Rule for implementers: opy-rs owns only the OverPy spelling. Where the OverPy name differs from the catalog id, add a manifest alias to the catalog id; do not add or rename catalog entries here. An OverPy-only composite helper, if one turns up, is lowered in opy-rs and never added to the workshop-rs catalog, which holds native Workshop syntax only.
Goal
opy-rs resolves every function the pinned OverPy 9.7.10 accepts, so a real project that uses one compiles instead of failing or losing the call.
Context
A probe of every non-operator function in the pinned OverPy 9.7.10 against opy-rs 0.1.58 found calls the reference accepts that opy-rs rejects because the name does not resolve (
unknown-action,unknown-value,unknown-member). A project that uses one of them fails to compile or loses the call. Names are checked against the manifest; all 117 already exist in the workshop-rs catalog as native Workshop entries (112 under the same id, 5 under a differently spelled id), so the gap is in the opy-rs source-language surface (manifest entries, aliases and lowering), not in Workshop data.The measured gap is 117 functions: 22 actions, 53 values and 42 member functions. Probe method: for each of the 412 non-operator OverPy functions, compile a type-appropriate sample call with the reference and with opy-rs, and count calls the reference accepts and opy-rs rejects with an unresolved-name error. Keyword forms (
true,null,eventPlayer,hostPlayer,localPlayer,attacker,victim,healer) and probe-sample mistakes are excluded. Argument-level differences on names that already resolve are not counted here.Scope
Close the gap in three batches: actions, values, member functions. Each batch is its own sub-issue.
Non-goals
False/True/Nullversus0/1) and other default-mode coercions; Wright and workshop-rs canonicalize these and they are semantically equivalent.Acceptance criteria
unknown-action,unknown-valueorunknown-memberfor a call the reference accepts.Dependencies
None. Batches are independent.
Classification
Each name was checked twice: the pinned OverPy 9.7.10 metadata declares a Workshop en-US name for it, and that en-US name is an article in the workshop.codes wiki inventory of Workshop actions and values, which is independent of OverPy. That en-US name also resolves to an entry in the workshop-rs catalog. None of the 117 is an OverPy-only wrapper, so no new Workshop data and no new workshop-rs entry is needed for this work.
Result: 112 names match a catalog id exactly; 5 differ only in the catalog id spelling (listed in the sub-issues) and need a manifest alias.
Rule for implementers: opy-rs owns only the OverPy spelling. Where the OverPy name differs from the catalog id, add a manifest alias to the catalog id; do not add or rename catalog entries here. An OverPy-only composite helper, if one turns up, is lowered in opy-rs and never added to the workshop-rs catalog, which holds native Workshop syntax only.