[smoke-test] Test coverage review: 121 source files, 2 test files (1.7%) #7
Labels
No labels
blocked:needs-decision
blocked:no-changes
bug
feature-request
quickfix
test-coverage
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/GSD2_PM#7
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?
Smoke Test Review: Mark/GSD2_PM
Type: unknown | Runtime: unknown
Source files: 121 | Test files: 2 | Coverage: 1.7%
Observations
Risks
Recommendations
Auto-filed by project-smoke-test.py on 2026-05-15 19:49:03 UTC
Feature Triage Assessment
Scope: large
Risk: medium
Spec Alignment: aligned
Summary: Requests increasing test coverage from ~0% to 50% across 111 source files in a project with no existing test framework or test infrastructure.
Recommendation: Too broad for a single issue — decompose into phases: (1) configure test frameworks (Vitest frontend, Vitest/Jest backend) and wire into CI, (2) add tests by criticality — server services/models first, then shared types, then app components/hooks, then docker-worker. Each phase a separate issue.
Rationale: Large scope: 111 source files across 3 packages (app 77, server 27, docker-worker 6, shared 1), zero existing project test files, no test framework installed or configured, no CI test step. Medium risk: additive so no breaking changes, but testability refactoring (DI, exports) will touch core paths, and API-dependent tests (OpenAI calls in server/docker-worker) could introduce flakiness. Aligned with spec: AGENTS.md explicitly notes 'No test framework is currently configured' and recommends Vitest/Jest, confirming the project expects tests but hasn't started.
Labeled
blocked:needs-decision— unblock on Forgejo to dispatch to the fixer pipeline.Quickfix applied via opencode.