- JobBrief model (DRAFT→SUBMITTED→APPROVED→FULFILLED) with 6 CRUD endpoints: list, create, get, patch (DRAFT only), submit, approve - All endpoints use MembershipContext; read=VIEWER, mutate=MANAGER, approve=ADMIN for org-scoped access - create_job accepts brief_id Form field; validates APPROVED brief, copies organization_id/project_id/deadline from brief, marks brief FULFILLED after job insert - organization_id now populated from project client_id on job create (fixes missing multi-tenant field on new jobs) - migration_2026-04-29-000001: job_briefs collection + 4 indexes - Wired briefs router into main.py Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| scripts | ||
| __init__.py | ||
| migrator.py | ||