AEROSIM-TS-12
Establish shared Stardust UI primitives
Nebula exposes a single typed Stardust primitive layer that application screens can reuse without duplicating foundation components.
- Verified flow state
- Done
- Owner
- AeroSim Architecture and Delivery
- Feature
- AEROSIM-FT-41
- Component
- Web Application — shared Stardust primitive layer
- Repository
- corp-v1-aerosim/corp-v1-aerosim
Delivery scope
Wrap the adopted Stardust package behind a Nebula-owned export barrel, declare the default theme tokens, and prove Button and Panel composition without allowing screens to import Stardust internals directly. Primary files: applications/web/src/ui/stardust/index.ts, applications/web/src/ui/stardust/theme.ts, applications/web/src/ui/stardust/Button.tsx, applications/web/src/ui/stardust/Panel.tsx, applications/web/tests/stardust-primitives.test.tsx.
Implementation contract
Implementation artifacts
- applications/web/src/ui/stardust/index.ts
- applications/web/src/ui/stardust/theme.ts
- applications/web/src/ui/stardust/Button.tsx
- applications/web/src/ui/stardust/Panel.tsx
- applications/web/tests/stardust-primitives.test.tsx
Inputs
- Stardust component package version pinned in applications/web/package.json
- Nebula ThemeTokens values for color, spacing, radius, and typography
Outputs
- Public @/ui/stardust exports for Button, Panel, StardustProvider, and ThemeTokens
- Rendered primitive fixture using the Nebula default theme
Failure boundaries
- Reject a theme override containing an unknown token key at TypeScript compile time.
- Fail the architecture test when application code outside src/ui/stardust imports the upstream Stardust package.
Excluded scope
- Feature-specific screens, route definitions, data grids, and 3D controls are not primitives in this task.
Verification steps
- pnpm --filter @aerosim/web test -- stardust-primitives.test.tsx
- pnpm exec eslint applications/web/src --rule "no-restricted-imports:error"; verify only src/ui/stardust may import Stardust.
Traceability
Dependencies
- AEROSIM-TS-11Canonical ID: TASK-0011
UI/UX applicability
non_visual
This Task owns technical or behavioral acceptance and does not claim direct visual conformance to the approved UI/UX package.
Acceptance evidence
Verified delivery: application PR #14 reviewed head 00bcd9fd26a09a8199841df1ca4631b88881be13, exact-head validation task 1751 succeeded, merged as 294c9b56319a8b05aaa5d3e70ec722cf0ff130ae; integrated Gitea Actions publish task 1754 and validate task 1755 succeeded. Release completion verified on product 1.0.0.0 at GitOps revision 5d3712d89dfbf7dacd993348e55f497d126c7bf9 with Argo Synced/Healthy, exact image digests, authenticated API/database access, and three-world configured-flight acceptance.
Current evidence boundary
No current implementation, acceptance, release, or deployment evidence is claimed for this planned Task. Any prior implementation may be used only as prototype and discovery evidence.