DOB-6: Test fixture overhaul — replace config/*.json fixture imports with TS preset modules #798
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Blocks
Depends on
#797 DOB-5: Delete config/*.json + Dockerfile / build context cleanup
charles/claude-hooks
#795 DOB-3: Setup wizard seeds the minimum at scope='global' from code-side presets
charles/claude-hooks
Reference
charles/claude-hooks#798
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
As a maintainer, I want every test that currently imports or
readFiles aconfig/*.jsonfactory file replaced with a hand-rolled TS fixture module (or with the newpresets.tsfrom DOB-3), so that DOB-5 can land without breaking any test.The factory files are about to be deleted. Tests that read them must be migrated to inline fixtures or shared TS presets first.
Acceptance criteria
Audit + migrate
grep -rln 'config/.*\\.json' apps/ packages/ --include='*.test.*' --include='*.test.tsx'returns zero hits post-PR.apps/server/src/test-fixtures/<kind>.ts— when several tests share a baseline fixture (e.g. "a typical agent_type row", "a typical service_config row"). Module exports typed const factories likemakeAgentType(overrides?).setup/presets.tsfrom DOB-3 — when a test wants the wizard's preset behaviour end-to-end.loadAgentsConfigForTest()/loadServiceConfigForTest()(or whatever the current names are) deleted along with the JSON readers.Test parity
expect(fixture.types.length).toBeGreaterThan(0)) on the trickiest ones to catch this.Documentation
apps/server/src/test-fixtures/README.md(one-pager) describing the fixture pattern: when to use the shared module vs. inline, naming convention, no-JSON-allowed rule.Out of scope
References
presets.ts.🤖 Auto-assigned to code-lead (heuristic: area:agents → code-lead (architecture-touching)). Reply
/unassignto reroute.