2.2 KiB
2.2 KiB
| id | ticket | title | status | created | ref_decisions | tags | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PLN-0085 | render-frame-packet-boundary | PBS Stdlib and Syscall Declarations | done | 2026-05-25 |
|
|
Briefing
Source decision: DEC-0030.
Update PBS Game and Shell stdlibs so high-level APIs map to app-mode-specific ABI domains: Game uses composer.* and gfx2d.*; Shell uses gfxui.*.
Target
PBS authors can keep ergonomic high-level APIs where appropriate, but generated or declared syscalls use the correct DEC-0030 ABI domain for the active app mode.
Scope
- Update Game stdlib declarations for
composer.*andgfx2d.*. - Update Shell stdlib declarations for
gfxui.*. - Remove old primitive
gfx.*ABI declarations. - Keep author-facing wrappers clear about mode-specific behavior.
- Update examples/tests that compile PBS code.
Out of Scope
- Runtime implementation of the syscall handlers.
- New visual APIs beyond the domain split.
- Backward compatibility for old primitive
gfx.*ABI declarations. - Widget/layout redesign.
Execution Sequence
- Inventory PBS stdlib files and syscall declaration generation.
- Map Game scene/camera/sprites/HUD APIs to
composer.*. - Map Game primitive APIs to
gfx2d.*. - Map Shell primitive APIs to
gfxui.*. - Remove or fail old primitive
gfx.*ABI declarations. - Update PBS compile tests, examples, and syscall metadata expectations.
Acceptance Criteria
- PBS Game code emits only Game-allowed render ABI domains.
- PBS Shell code emits only Shell-allowed render ABI domains.
- Old primitive
gfx.*ABI declarations are gone or explicitly rejected. - Existing examples are updated to the new declarations.
Tests / Validation
- Run PBS stdlib and compiler tests.
- Add Game and Shell declaration tests for emitted syscall names.
- Add negative tests for wrong-domain declarations.
Risks
- User-facing API names may remain similar while ABI names change; tests must assert emitted syscall domains, not just wrapper names.
- Examples can mask stale declarations if they do not compile in both Game and Shell contexts.
Affected Artifacts
- PBS stdlib files
- Syscall declaration generation
- PBS tests and examples