Act 4 · Ship

Thesis writes the spec. The PM approves. Your agents write the code.

As code gets cheaper, the spec is the bottleneck. Thesis generates it from the locked Thesis — evidence, constraints, and acceptance criteria included. Nothing ships without a human's approval.

spec-TH-014.md
# Scalable roles & audit trail (TH-014)
## Problem
  • - 50+ seat accounts hit a ceiling: coarse permissions block delegation (MIX-0033, INT-2214).
  • - Lost enterprise deals cite granular roles & audit logs; competitor Ridgeline shipped them in May (HUB-0871).
## Solution outline
  • - Role hierarchy: owner / admin / member / guest.
  • - Bulk assignment via CSV import + inline editor.
  • - Audit log write-path + UI with export.
## API changes
  • - POST /v1/roles/bulk — accepts CSV, returns per-row status.
  • - GET /v1/audit-log — cursor-paginated, filterable by actor/entity.
  • - PATCH /v1/members/:id — role transitions emit audit events.
## Acceptance criteria
  • - ☐ Admin can reassign 200 roles via CSV in <60s.
  • - ☐ Every role change emits an audit event within 500ms.
  • - ☐ Audit log export completes for 100k events in <10s.
  • - ☐ Admin WAU in 50+ seat cohort returns to baseline within 60 days.
## Rollout plan
  • - Feature-flagged, 10% of 50+ seat accounts first.
## Out of scope
  • - Billing changes, SSO revamp.
Generated by Thesis from TH-014 · 5 evidence links inline
PM
Approval required
The PM owns the bet.

Thesis never pushes anything a human didn't approve.

Claude Code
Linear · 1 epic + 5 tickets
MER-240Scalable roles & audit trail
📎 spec TH-014 · 5 evidence
MER-241Role hierarchy model
📎 spec TH-014 · 5 evidence
MER-242Bulk role assignment + CSV import
📎 spec TH-014 · 5 evidence
MER-243Audit log service (write-path)
📎 spec TH-014 · 5 evidence
MER-244Audit log UI + export
📎 spec TH-014 · 5 evidence
MER-245Permissions analytics instrumentation
📎 spec TH-014 · 5 evidence
lockedin developmentshippedoutcome measured

Every ticket and every agent task carries its why. Six weeks from now, nobody asks "wait, why are we building this?"

3 Lock
5 Learn