Package com.eqixiac.equinix.design.record


package com.eqixiac.equinix.design.record
The Design Decision Record: the one document an architect hands to a review board for a DesignSpec. It chains the design engines (Metro Optimizer, resilience analysis, growth and value models, deployment plan) and records what was decided, why, on what evidence, and what would change the decision.
DesignDecisionRecord adr = DesignDecisionRecorder.forSpec(fabric, spec).record();
Files.writeString(Path.of("adr-0007.md"), adr.toMarkdown());
Files.writeString(Path.of("adr-0007.json"), adr.toJson());

// next quarter
DesignDecisionRecord again = DesignDecisionRecorder.forSpec(fabric, spec).record();
System.out.println(DesignDecisionRecord.compare(DesignDecisionRecord.fromJson(saved), again).toMarkdown());

Every section is optional and says when it was skipped or failed and why; one section failing never loses the record. Results already computed can be supplied (DesignDecisionRecorder.optimization, DesignDecisionRecorder.resilience, ...) and are rejected when they were computed for another spec.