Subchapter 25.26
references/phases/design/design-assemble.mdMarkdown3 KBView on GitHub
Assembler unit. The single creator of
aws-design.jsonand the owner of its final contract. Seedesign.mdfor how it is composed into the phase.
aws-design.json.pattern_id, target_architecture, the cluster rationale, and the constraint
set the pattern imposed. Per-resource rows follow.azure_id and azure_type — not a Terraform address.
The ARM resource ID is a better stable address: it embeds subscription and
resource group, so one field supplies the cluster key, the environment scope, and
uniqueness with no derivation.confidence per row from the tier that produced it, and record
rubric_applied when pass 2 ran.aws___get_regional_availability on the AWS MCP Server. This is non-blocking: a
failed check becomes a warning, not a gate failure.deterministic row’s aws_service was
changed by a pattern constraint. Verify it against
knowledge/design/fast-path-services.json rather than from memory — every row
labelled deterministic must name a canonical type present in direct_mappings,
and its aws_service must equal that row’s aws_service or one of its
alternatives[].deferred[] entries carry no confidence field; services[] entries always do.pending_rubric[] from a missing category file, still
produces aws-design.json — carrying everything that WAS determined, plus the
halt object naming what blocked. The gate then fails on its own merits. Discarding
the work would make the user re-run the whole phase to learn one missing table row,
and would hide which resources were already fine.The customer-facing report leads with cluster-level rationale, not a 40-row mapping
table. Per-resource rows move to an appendix. This is the visible payoff of the
holistic goal, and it is the part a customer actually reads. An unclassified
pattern is a required fallback, not a failure — but it must be flagged so the output
does not overclaim architectural insight it does not have.
Writes the artifact and owns the contract above. Cluster-level fields land with step 4; the AI design route lands with step 6.