Core concepts
Specifications
A specification is a single, structured definition of one piece of the change. Each spec has:
- A before - how the system behaves today.
- An after - how the system should behave once the iteration ships.
- A type - what kind of change it is.
Itera generates specifications throughout the product and engineering phases as the team clarifies intent. They become the source of truth that the coding agent uses during the building phase.
There are three categories of specifications:
- Product specs. User experience and UI changes. Generated during the product phase.
- Technical specs. API contracts, data models, third-party dependencies, service architecture, and use-case logic. Generated during the engineering phase.
- Operational specs. Cross-cutting concerns that affect both, such as data migrations or feature flags.
Specifications are not free text. They have structure, which is what makes the building phase reliable.