Product Architecture¶
A PotatoLabs product is the business-facing software delivered by the platform.
Product characteristics¶
Each product:
- Lives in its own GitLab repository
- Is developed in code-server or an equivalent supported development workflow
- Uses git branches for isolated change management
- Is validated through GitLab CI/CD
- Is built into a deployable artifact or container image
- Is released through an explicit release step
- Is deployed into an approved environment
- Is monitored after deployment
Product boundaries¶
Products should be loosely coupled.
A product may depend on shared services, but it should not assume access to another product's internal data, private APIs, or deployment details.
Technology choice¶
Not every product uses PostgreSQL, Redis, Docker, or Nginx in the same way.
PMP-001 treats those as platform capabilities. A product adopts only what it needs.
Product data¶
Product data belongs to the product boundary unless it is explicitly promoted to a shared platform service.
Product interfaces¶
Products expose interfaces only when required for product behavior, integration, or operations, and those interfaces must be documented.