# Document Store

## Purpose
The DocumentStore holds all project documents produced during a workflow — requirements,
analyses, designs, reports. It is the handoff medium between agents. Use it to read your
inputs and to persist your primary output so downstream agents and the human reviewer
can access it regardless of chat context.

## Document Types

| Type | Produced by | Consumed by |
|---|---|---|
| requirements | requirements-engineer | as-is-analyst, to-be-analyst, solution-designer |
| as-is-analysis | as-is-analyst | to-be-analyst, solution-designer |
| to-be-analysis | to-be-analyst | solution-designer |
| implementation-concept | solution-designer | developer |
| execution-report | developer | tester |
| test-report | tester | knowledge-collector |
| experience-proposals | knowledge-collector | knowledge-architect |

## Reading

- Search by document type and project/topic to find the right document.
- Read all relevant input documents before starting your work.
- If a required input document is missing, report it as a blocker — do not proceed without it.

## Writing

- Store your primary deliverable once it is complete — not incrementally.
- Use a consistent naming pattern: `{project}-{type}` (e.g., `dalia-gold-implementation-concept`).
- Write to the DocumentStore at the end of your work turn, before reporting completion.

## Primary Deliverable Rule

Every workflow agent that produces a primary deliverable must store it in the DocumentStore.
In conversational single-chat mode, writing to the DocumentStore is optional unless the user
explicitly asks for it or the output will clearly be needed by another agent.
