T-7BIN-appframe-determined-adapter
Status: closed/done · Impact: high · Complexity: medium
Turn @determined/shell into a thin adapter over the neutral frame: it registers determined’s
experience manifests, injects @determined/platform/transport, and sets the determined scheme,
tokens, and product config — proving the extraction is behavior-neutral across all 21 products.
| Location | Role today |
|---|---|
packages/ts/shell/ | @determined/shell — extends the frame (T-4JGE-appframe-scaffold-move) but still carries the determined seams inline. |
apps/determined/products/ | 21 products, each extends ['@determined/shell', ...]. |
Proposed
Section titled “Proposed”@determined/shell becomes a thin adapter that supplies the frame’s contracts
(T-D2SL-appframe-contracts) with determined’s implementations: experience manifests (already
manifests, now via the neutral defineModule with base routes), the
@determined/platform/transport client as SettingsTransport, the determined:// scheme,
@determined/ui tokens, and product config. No product nuxt.config.ts changes; behavior
unchanged.
Approach
Section titled “Approach”- Move determined’s experience registration onto the neutral manifest model (
defineModule, base routes). - Inject
@determined/platform/transportinto the frame as the domain client. - Set the determined scheme, the
@determined/uidesign-system layer, and product config through the frame’s config. - Verify parity: a representative set of products (and
workbench) render and behave identically — palette, keybindings, context-menus, deep-links, and settings all still work.
Files to touch
Section titled “Files to touch”| Location | Kind | Change |
|---|---|---|
packages/ts/shell/ | modify | reduce to a thin adapter supplying the frame’s contracts |
Acceptance criteria
Section titled “Acceptance criteria”- AC-1:
@determined/shellsupplies the frame’s contracts with determined’s implementations, with no productnuxt.config.tschanges. - AC-2: Parity — palette, keybindings, context-menus, deep-links, settings, and nav behave
identically across a representative product set including
workbench. - AC-3: The determined seams no longer live in the frame package.
Out of scope
Section titled “Out of scope”- Dashboard adoption — Phase B (see the milestone).
Depends on T-D2SL-appframe-contracts, T-21FI-appframe-neutralize-tokens.
Depends on
Section titled “Depends on”T-D2SL-appframe-contracts, T-21FI-appframe-neutralize-tokens