Files
jobtrackingapp/.gsd/KNOWLEDGE.md
T
cesnimda e03f2e90a3 docs: Re-ran the focused daily-loop UI regressions, repaired the local…
- "docs/s07-uat.md"
- "job-tracker-ui/package-lock.json"
- ".gsd/KNOWLEDGE.md"
- ".gsd/milestones/M001/slices/S07/tasks/T03-SUMMARY.md"

GSD-Task: S07/T03
2026-03-27 09:55:26 +01:00

3.8 KiB
Raw Blame History

Project Knowledge

  • dotnet test JobTrackerApi.Tests/JobTrackerApi.Tests.csproj --filter GmailControllerTests still compiles the entire JobTrackerApi.Tests project before filtering execution. If unrelated controller tests drift from production signatures, the Gmail slice verification command will fail at compile time even when GmailControllerTests itself is correct.
  • The correspondence workspace auto-refreshes linked Gmail threads once per jobId + ExternalThreadId set using POST /api/gmail/refresh-linked-threads; if you need another pull in the same UI session without changing linked threads, use the explicit "Refresh linked threads" action.
  • The S02 package workspace persists the application-answer draft inside JobApplication.Notes using the marker block <<<APPLICATION_ANSWER_DRAFT>>> ... <<<END_APPLICATION_ANSWER_DRAFT>>>; downstream slices should replace or parse that block instead of appending free-form notes.
  • dotnet test JobTrackerApi.Tests/JobTrackerApi.Tests.csproj --filter JobApplicationsApplicationPackageTests is now a trustworthy direct verification command in this worktree for package-generation and notes-replacement behavior; prefer it over older isolated-harness guidance when checking S02 regressions.
  • dotnet test JobTrackerApi.Tests/JobTrackerApi.Tests.csproj --filter JobApplicationsFollowUpDraftTests is now trustworthy again in this worktree after restoring the missing ASP.NET Core / Identity / xUnit test-project references in JobTrackerApi.Tests/JobTrackerApi.Tests.csproj; older task notes that require an isolated Docker harness are stale.
  • Running npm --prefix job-tracker-ui start alone is not enough for browser UAT in this worktree: the frontend calls http://localhost:5202/api/..., so without the backend (or a matching CORS/proxy setup) the UI loads but shows empty-state surfaces with net::ERR_FAILED/CORS errors instead of real job data.
  • In this CRA frontend, react-scripts resolves the app directory from the current working directory. Run UI tests/builds from job-tracker-ui/ (for example cd job-tracker-ui && CI=true ./node_modules/.bin/react-scripts ...) instead of invoking npm --prefix job-tracker-ui ... from the repo root, or react-scripts may fail looking for a root-level package.json.
  • The S06 acceptance seed must backdate both JobApplication.FollowUpAt and the latest correspondence timestamp past the users AppliedFollowUpDays threshold; RulesEngine computes Waiting follow-up from the most recent activity (DateApplied, ResponseDate, FollowUpAt, FeedbackRequestedAt, or last correspondence), so a recent reminder date can suppress the intended workflowSignal.actionKey = "follow-up" fixture.
  • In this M001 worktree, the local SQLite DB contains admin@example.com with the Admin role even when the placeholder Auth:AdminPassword from appsettings.Development.json no longer authenticates. For repeatable localhost acceptance reruns, scripts/s06-acceptance-run.sh can mint a dev-only local JWT from the checked-in JWT settings instead of depending on a manual bearer-token export.
  • scripts/s06-preflight.sh intentionally exits 0 on the auth-limited path where /api/auth/config is reachable but /api/admin/system returns 401/403. Treat that as a guided partial pass for browser/UAT prep; only unreachable API, malformed JSON, or non-auth admin failures should block the slice.
  • In this M001 worktree, the focused CRA regression command CI=true npm --prefix /home/pi/development/JobTracker/.gsd/worktrees/M001/job-tracker-ui test -- --runInBand --watch=false src/daily-control-loop.test.tsx src/workflow-trust-signals.test.tsx can fail with react-scripts: not found even when job-tracker-ui/node_modules already exists from an older install state; rerun npm --prefix /home/pi/development/JobTracker/.gsd/worktrees/M001/job-tracker-ui install first, then retry the exact test command.