SysReq – Design notes

Persistence

All creates and saves write to PostgreSQL through Prisma. Each save creates a new RequirementVersion and increments currentRev.

Requirement types

Baselining

Baseline locks the requirement. Use Unlock for new revision to continue work while keeping history.

Requirement IDs

Each project configures a prefix per type and a next numeric suffix. On create, the next ID is assigned and the sequence increments. Change this under Project config.

Traceability

Parent links are constrained by project LinkRules. Use the parent picker (create or requirement detail) and the Trace matrix page for End User → System → Sub-system chains, orphans, and coverage gaps.

Soft locks (concurrent edit)

Enter your name on a requirement page and acquire an edit lock. Only the lock holder can save, baseline, or unlock. Locks expire after 5 minutes without a heartbeat (auto-refresh while the page is open). Each revision records the editor in history.