ADORSYS-GIS / ADORSYS-GIS/converse-frontends
[Ticket]: Delete apps/self-service and packages/ui
- 主要语言
- TypeScript
- 星标
- 0
- 派生
- 0
- 平均合并
- 1 小时 49 分钟
- 30 天内合并 PR
- 253
描述
## Type
Technical debt
## Summary
We need to delete `apps/self-service` and `packages/ui` because ADR 0009 schedules the Expo app for
deletion at console parity, and #258 already disabled its automatic image builds as an interim
stopgap. Also delete the nginx/`envsubst` runtime-config chain and the `EXPO_PUBLIC_*` env surface,
both of which exist only to serve `apps/self-service`.
Expected result:
> `apps/self-service`, `packages/ui`, the nginx/`envsubst` chain, and the `EXPO_PUBLIC_*` surface no
> longer exist in the repo. The repo builds and tests green. No workspace manifest references the
> deleted packages.
## Intent
Converts an interim stopgap (#258's disabled builds) into the actual end state ADR 0009 describes.
Removes a whole class of drift — two design systems, two codec paths, RN-only tooling — for a
surface that currently ships nothing.
## Source of truth (links)
ADR 0009, Decision 1 and Follow-up 7: https://github.com/ADORSYS-GIS/converse-frontends/blob/main/docs/adr/0009-nextjs-console-replacement.md
#258 (image builds disabled): https://github.com/ADORSYS-GIS/converse-frontends/pull/258
## Current Behavior
`apps/self-service` (Expo/React Native) and `packages/ui` (its design system) remain in the repo
alongside `apps/console`/`packages/ui-web`. `apps/self-service` also carries an nginx/`envsubst`
runtime-config chain and reads an `EXPO_PUBLIC_*` env-var surface, both dedicated to it. Automatic
image builds for it were disabled in #258, so none of this is exercised by CI in any way that
currently matters.
## Expected Behavior
`apps/self-service`, `packages/ui`, the nginx/`envsubst` chain, and the `EXPO_PUBLIC_*` surface are
removed entirely. `pnpm-workspace.yaml` and any root `package.json` workspace globs no longer
reference them.
## Acceptance Criteria
- [ ] Given the repo after this ticket merges, when `git ls-files apps/self-service packages/ui` is
run, then it returns nothing.
- [ ] Given the workspace manifests, when checked after deletion, then no dangling reference to
either package remains.
- [ ] Given the nginx/`envsubst` chain and `EXPO_PUBLIC_*` surface, when grepped repo-wide, then
neither remains.
- [ ] Given `packages/chart-core` and any other console-side consumer, when the deletion lands, then
they are unaffected (already extracted, confirmed by grep before merge).
- [ ] Error cases are handled safely: the PR is not merged until a full workspace grep for importers
of the deleted packages returns zero hits.
- [ ] Existing behavior is not broken: `pnpm build` and the full test suite pass.
- [ ] Relevant tests are added or updated: none new are expected (this is a deletion), but any test
that referenced the deleted packages is removed, not left broken.
- [ ] Verification evidence is provided (see below).
## Out of Scope
Pruning `packages/hooks` (separate ticket in this story). Re-pointing `docker-image.yml`/Helm
chart/Storybook filter (Story 5.2). Any new console feature work.
## Technical Context
- `apps/self-service` — the Expo/React Native app.
- `packages/ui` — its design system, superseded by `packages/ui-web`.
- `packages/chart-core` — already extracted from the Expo path; must remain unaffected.
- nginx/`envsubst` runtime-config chain and `EXPO_PUBLIC_*` env surface — both exist only to serve
`apps/self-service`.
- `pnpm-workspace.yaml` / root `package.json` — workspace globs that list the deleted packages.
## Risks
Missing a live importer of `packages/ui` or the nginx/`envsubst` chain would break the build.
Mitigated by a full workspace grep for importers before merge, plus a green `pnpm build` after
deletion.
## Test Plan
- Workspace-wide grep for imports of `packages/ui`, `apps/self-service`, `EXPO_PUBLIC_`, and the
nginx/`envsubst` chain — expect zero hits outside historical docs/changelogs.
- `pnpm build` across the full workspace.
- Full test suite run.
## Verification evidence
To be filled in at delivery time: grep output, `pnpm build` output, test suite results.
## Human accountable owner
@stephane-segning
## AI Usage Declaration
- Ticket decomposition
## Human verification completed
- [ ] I understood the intent
- [ ] I checked the source of truth
- [ ] I reviewed all AI-generated text/code
- [ ] I verified the implementation manually
- [ ] I verified the tests
- [ ] I checked for hallucinated assumptions
- [ ] I documented remaining risks
- [ ] I am the accountable owner and accept responsibility for this ticket.
贡献指南
评估
这个 Issue 还没有评估数据。