═══════════════════════════════════════════════════════════════════════
TODO #6 — size-limit budgets in CI
═══════════════════════════════════════════════════════════════════════
Adds .size-limit.cjs with budgets for 6 pilot @bytelyst/* packages,
plus a Gitea Actions workflow (.gitea/workflows/size-limit.yml) that
fails the build on any regression.
Current measurements vs budget (all comfortably under):
@bytelyst/api-client 793 B / 8 KB
@bytelyst/auth-client 1.97 KB / 8 KB
@bytelyst/celebrations 236 B / 6 KB
@bytelyst/quick-actions 122 B / 6 KB
@bytelyst/react-auth 2.71 KB / 10 KB
@bytelyst/dashboard-shell 3.96 KB / 30 KB
Scripts:
pnpm size — measure + assert against budgets
pnpm size:why — explain top contributors
Deps: size-limit@^12.1.0, @size-limit/preset-small-lib@^12.1.0.
Pilot scope (this commit): 6 packages. Full @bytelyst/* rollout is
incremental — each entry added separately.
═══════════════════════════════════════════════════════════════════════
TODO #5 — Storybook canonical pattern
═══════════════════════════════════════════════════════════════════════
Discovery: @bytelyst/ui already has Storybook 8 with the @bytelyst/
addon-a11y addon configured and 5 .stories.tsx files.
This commit:
- Documents that setup as the canonical template
(docs/STORYBOOK_TEMPLATE.md) including the .storybook/main.ts,
preview.ts, package.json scripts, and an example story.
- Catalogs which of the 8 visual @bytelyst/* packages need Storybook
added (1/8 done — @bytelyst/ui).
- Per docs/ROADMAP_2026_DECISIONS.md §9, hosting target is
self-hosted Gitea Pages (no Chromatic).
Full rollout to the other 7 packages stays open as incremental work.
═══════════════════════════════════════════════════════════════════════
TODO #4 — DTCG v3 token migration RFC
═══════════════════════════════════════════════════════════════════════
This is too large to land in a single commit. Drafted RFC instead:
docs/rfc/0001-dtcg-v3-token-migration.md
The RFC proposes a 4-PR sequence:
PR 1 — Add converter + dual-emit (byte-identical assertion)
PR 2 — Flip source of truth to DTCG JSON
PR 3 — Introduce the component tier
PR 4 — Multi-theme via DTCG token sets
Estimate: 2 person-weeks total. Backward compatibility: --ml-* and
--bl-* names preserved through all 4 PRs. Status: Draft, awaiting
reviewers.
Refs: learning_ai_uxui_web/docs/ROADMAP_2026.md §10 TODOs #4, #5, #6
Three consecutive commits to eslint.config.js (9be49acb, 1035b730,
7ae60852) failed to trigger any new common-plat CI runs even after
`git push origin main && git push gitea main`. Root cause: the
workflow had a 'paths:' filter that only matched packages/**,
services/**, dashboards/**, lockfiles, and a few specific
root manifests — `eslint.config.js` and the workflows themselves
were NOT in the list, so Gitea silently skipped every push that
only touched those files.
Added the two missing globs:
- 'eslint.config.js'
- '.gitea/workflows/**'
Both are demonstrably CI-relevant — eslint.config.js drives the
lint step that's currently failing, and workflow edits obviously
need to trigger a fresh run.
This commit edits a workflow file, so it is itself covered by the
new path glob and should trigger a run on push.
The 'Build, Test & Typecheck' job was failing immediately at its
first 'Pull latest' step with:
/opt/bytelyst/learning_ai_common_plat: No such file or directory
exit status 1
The act_runner on this host has the monorepo at
/Users/sd9235/code/mygh/learning_ai_common_plat (same pattern as
the consumer repos that switched to the on-disk workflow earlier
today). The legacy /opt/bytelyst/* path predates the migration and
never existed on this host.
Replaced all 10 occurrences across both CI workflow files
(.gitea/workflows/ci.yml and publish.yml) with sed. No script
content changed, only the cd target.
- Publish job was overriding runner env with empty string via secrets ref
- Build job could fail on dirty workdir from previous failed run
- Runner env already provides GITEA_NPM_TOKEN — no secrets store needed
- Add publish-packages job to CI workflow (runs after build-and-test)
- Publish 13 remaining packages to Gitea (56 total, up from 43)
- Update act_runner token to read+write scope
- Fix package counts throughout migration doc (43 → 56)
- Update CI status: all 10/10 repos now have CI workflows
- Add package inventory section (§15.1)