84 lines
2.7 KiB
Markdown
84 lines
2.7 KiB
Markdown
# Tasks — enterprise-overview
|
||
|
||
Numbered checklist of the discrete units of work to ship `@suaveplan/overview`.
|
||
|
||
## 1. Skeleton
|
||
|
||
- [x] Create `packages/devtools/tooling/overview/` with `package.json`,
|
||
`tsconfig.lib.json`, `vite.config.ts`, `vitest.config.ts`,
|
||
`README.md`, and `tests/setup/polyfills.ts`.
|
||
- [x] Wire `package.json` exports for `.` and `./discover`.
|
||
|
||
## 2. Types
|
||
|
||
- [x] `src/types/types.ts` — `Tier`, `PackageRecord`, `PluginSummary`,
|
||
`SuavePlanManifest`, `WorkspaceGraph`. Sibling `types.md`.
|
||
|
||
## 3. Errors
|
||
|
||
- [x] `src/errors/errors.ts` — `defineCodes("OVERVIEW", [...])`, `OverviewError`
|
||
subclass, code uniqueness test, sibling `.md`.
|
||
|
||
## 4. Schemas
|
||
|
||
- [x] `src/schemas/schemas.ts` — Zod schemas for `Tier`, `PackageRecord`,
|
||
`PluginSummary`, `SuavePlanManifest`. Sibling `.md` and tests.
|
||
|
||
## 5. Tier inference
|
||
|
||
- [x] `src/tier/tier.ts` — `inferTier(short, pkgJson, hints?)`, exported
|
||
`SERVER_DEP_HINTS`. Sibling `.md` and tests.
|
||
|
||
## 6. Discovery (server sub-path)
|
||
|
||
- [x] `src/discover/discover.ts` — `discoverPackages(options)`, async
|
||
`discoverPackagesIter` with `AbortSignal`. Real-fs test fixture under
|
||
`tests/setup/fixtures/`. Sibling `.md`.
|
||
|
||
## 7. Graph utilities
|
||
|
||
- [x] `src/graph/graph.ts` — `buildGraph`, `topologicalOrder`, `detectCycles`,
|
||
`transitiveDependencies`, `transitiveDependents`, `leafPackages`,
|
||
`rootPackages`. Sibling `.md` and tests including `fast-check`
|
||
property-based cases.
|
||
|
||
## 8. Roll-ups
|
||
|
||
- [x] `src/rollups/rollups.ts` — `byPlugin`, `byCategory`, `byTier`. Sibling
|
||
`.md` and tests.
|
||
|
||
## 9. Telemetry
|
||
|
||
- [x] `src/telemetry/telemetry.ts` — meter init, counter + histogram exports.
|
||
Sibling `.md` and tests using in-memory metric reader.
|
||
|
||
## 10. Root barrel
|
||
|
||
- [x] `src/index.ts` — explicit named re-exports (no `export *`). README at
|
||
package root documenting the API surface.
|
||
|
||
## 11. Gate
|
||
|
||
- [x] `bunx turbo lint typecheck test build --filter=@suaveplan/overview`
|
||
green.
|
||
- [x] `bunx turbo test:coverage --filter=@suaveplan/overview` reports
|
||
100/100/100/100.
|
||
|
||
## 12. Manifest refresh
|
||
|
||
- [x] Run `bun scripts/folder-reorg/generate-manifest.ts` so `MANIFEST.md`
|
||
lists the new package.
|
||
|
||
## 13. STATUS flip
|
||
|
||
- [x] In `STATUS.md`, change the `@suaveplan/overview` row from `–` to `✅`
|
||
and update its info column to reflect the migrated surface.
|
||
- [x] Update the Counts table (+1 migrated, -1 pending).
|
||
|
||
## 14. Fold + archive
|
||
|
||
- [x] Fold `openspec/changes/enterprise-overview/specs/overview/spec.md` into
|
||
`openspec/specs/overview/spec.md` (canonical).
|
||
- [x] Move `openspec/changes/enterprise-overview/` to
|
||
`openspec/archive/2026-05-25-enterprise-overview/`.
|