Skip to content

Web: admin run solver (Sprint 11 PR 11.17) - #137

Merged
tomqwu merged 1 commit into
mainfrom
sprint-11-17-solver
May 18, 2026
Merged

tomqwu merged 1 commit into
mainfrom
sprint-11-17-solver

Conversation

@tomqwu

@tomqwu tomqwu commented May 18, 2026

Copy link
Copy Markdown
Owner

Summary

/a/solver — date range + Strict/Relaxed mode + minimize-moves toggle → POST /a/solver/run reusing solve_schedule. Result partial: KPI grid + "Review solution" link to /a/solution/{id} (11.18). Invalid range / "no events" → inline error. Admin nav now 4 tabs.

Test plan

  • 5 web tests: form renders, run creates solution+result, invalid range rejected, admin-gated, auth-gated
  • black --check api tests / ruff check api tests clean
  • pytest tests/web tests/contract tests/unit/test_openapi_schema.py — 103 pass
  • E2E on live server: seeded org+admin+3 events+2 volunteers, live solve → Solution Replace datetime.utcnow() with timezone-aware api.timeutils.utcnow() helper #1 / 3 assignments / health 100; solver form screenshotted brand-correct (dark mode confirmed)

Closes #117

🤖 Generated with Claude Code

/a/solver — date range (defaults today..+28d) + Strict/Relaxed
segmented mode + minimize-moves toggle → POST /a/solver/run reusing
api.routers.solver.solve_schedule in the admin's org. Renders a
result partial: KPI grid (assignments, health, hard violations,
solve ms) + "Review solution" link to /a/solution/{id} (lands 11.18).
Invalid range / solver HTTPException (e.g. "no events in range") →
inline error. Admin nav now 4 tabs (Dashboard·People·Events·Solver).

5 web tests (form renders, run creates solution + result, invalid
range rejected, admin-gated, auth-gated). 103 web/contract/openapi
pass. Verified e2e on the live server: seeded org+admin+3 events+2
volunteers, live solve → Solution #1 with 3 assignments / health 100;
solver form screenshotted brand-correct (also confirms dark mode).

Closes #117

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@tomqwu
tomqwu merged commit 769b676 into main May 18, 2026
4 checks passed
@tomqwu
tomqwu deleted the sprint-11-17-solver branch May 18, 2026 01:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

11.17 — Solver run form

1 participant