Document the Script API surface and update the glossary (#75) #87

Closed
opened 2026-09-06 01:25:47 +00:00 by crowmaki · 0 comments
Owner

Parent

#75

What to build

A tooling developer can write a .d.luau definition file against a stable, documented Script API. Write one Wiki page describing the whole surface as shipped by the preceding tickets: Component.define and field Kinds, Component instances (gameObject, field access, IsAlive, Destroy, GetComponent), lifecycle methods and their timing (Awake, Start, Update, FixedUpdate, OnDestroy), the GameObject class (statics, properties, methods), transform, Time, print/warn, global Destroy, dead-Handle errors, Script loading and hot reload semantics through cinnabar.script/1, and update ordering guarantees.

Update the glossary with entries for Script, Script API, Script Component and the cinnabar.script Interface, and record the Plugin List Order note that a game wanting Scripts to see this frame's physics lists luau after the physics Plugin. Record an ADR only if a decision was made during implementation that the parent spec does not already state.

Not a vertical slice; it closes story 44 of the parent.

Acceptance criteria

  • A Wiki page documents every name a Script can reach, with its signature, return, and error behaviour
  • The page states lifecycle ordering, hot reload semantics, and what is out of scope (no file reading, no Instantiate, no rotation helpers, no field access on Odin Components)
  • The glossary gains Script, Script API, Script Component and the Interface entry, in the existing style
  • The Plugin List Order note about luau and physics is in the glossary or the page
  • Every documented behaviour is one the tests/luau suite exercises

Blocked by

## Parent #75 ## What to build A tooling developer can write a `.d.luau` definition file against a stable, documented Script API. Write one Wiki page describing the whole surface as shipped by the preceding tickets: `Component.define` and field Kinds, Component instances (`gameObject`, field access, `IsAlive`, `Destroy`, `GetComponent`), lifecycle methods and their timing (`Awake`, `Start`, `Update`, `FixedUpdate`, `OnDestroy`), the `GameObject` class (statics, properties, methods), `transform`, `Time`, `print`/`warn`, global `Destroy`, dead-Handle errors, Script loading and hot reload semantics through `cinnabar.script/1`, and update ordering guarantees. Update the glossary with entries for Script, Script API, Script Component and the `cinnabar.script` Interface, and record the Plugin List Order note that a game wanting Scripts to see this frame's physics lists `luau` after the physics Plugin. Record an ADR only if a decision was made during implementation that the parent spec does not already state. Not a vertical slice; it closes story 44 of the parent. ## Acceptance criteria - [ ] A Wiki page documents every name a Script can reach, with its signature, return, and error behaviour - [ ] The page states lifecycle ordering, hot reload semantics, and what is out of scope (no file reading, no Instantiate, no rotation helpers, no field access on Odin Components) - [ ] The glossary gains Script, Script API, Script Component and the Interface entry, in the existing style - [ ] The Plugin List Order note about `luau` and physics is in the glossary or the page - [ ] Every documented behaviour is one the `tests/luau` suite exercises ## Blocked by - #83 - #84 - #85 - #86
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crowmaki/cinnabar#87
No description provided.