TRDs (Technical Requirement Documents)¶
The TRD is the technical translation of the PRD — the document that says how something will be built. PRDs say what should happen; TRDs say how.
Dezycro takes TRDs seriously because journey generation, the verifier binary, and downstream tooling all read from them. A sparse TRD produces sparse coverage.
What goes in a TRD¶

There's no required schema or format. Write a TRD the way that works for your team. The shape that tends to work well covers a few areas — architecture / system shape, data model, API contracts, failure modes, migration / rollout strategy, and open questions — but treat that as a starting point, not a checklist. A short, sharp TRD that addresses what actually matters for your feature beats a long one padded out to fit a template.
What does matter:
- The API contracts are concrete enough to drive your OpenAPI spec. That's what the verifier validates against.
- Failure modes are spelled out. This is where most negative-test journeys come from. Hand-wave here and the feature ships fragile.
- Open questions are honest. Every TRD has them; pretending you don't have any is what causes implementation surprises later.
Authoring a TRD¶
Three paths:
Web UI editor¶
The plain markdown editor. Useful for small edits or when you have a draft in another tool you want to paste in.
AI chat¶
Open the TRD document → use the chat panel. Describe what you want; the AI drafts sections using your PRD + ingested documents as grounding.
/dezycro:author --doc trd (Claude Code)¶
Guided state machine: scan existing work → clarify gaps with you → propose placement → create-or-load feature → discovery (gather context) → draft → iterate with you → finalize. State persists to the authoring transcript so the loop survives compaction.
For a TRD without an approved PRD, /dezycro:author --doc trd refuses by default — the PRD is the input to the TRD authoring, so it has to exist first.
Revising an approved TRD¶
Loads the current TRD content and walks you through revising it section-by-section. Each section can be kept unchanged, edited in place, or rewritten from scratch.
History is preserved — every approved revision creates a new version snapshot in the workbook. Old versions are read-only but viewable.
TRD lifecycle¶
- DRAFT — Work in progress.
- COMPLETE — Author considers it done. Useful as a "ready for review" signal.
- APPROVED — Reviewed + locked. Subsequent edits create new revisions; the approved version stays as a baseline.
You can revert from APPROVED to DRAFT if you need to do major surgery — but generally --revise-existing is the right tool.
How TRDs interact with the rest of Dezycro¶
| Surface | What it reads from the TRD |
|---|---|
| LogicStudio | The endpoint definitions + failure modes — to generate test journeys |
| Verifier | Indirectly — via the OpenAPI spec you publish from the TRD |
| Coverage projection | The TRD's endpoint inventory — to identify which paths should have journey coverage |
| Open questions | Become the seed for workbook Decisions as questions get resolved |
Common failure modes¶
- TRD diverges from the published OpenAPI spec. Symptom: verifier reports
FAIL_DECISIVE_CONTRACTon journeys that "should pass." Fix: update one to match the other. - TRD is comprehensive but the API contracts section is thin. Other sections aren't load-bearing the way API contracts are — keep them tight.
--revise-existingrewrites too aggressively. Keep unchanged sections unchanged; the per-section flow exists specifically to keep stable parts stable.
See also¶
- The Workbook — journeys, tasks, decisions, issues
/dezycro:author— the guided authoring state machine- The Verifier — what proves the TRD's API contracts are honored