Phase 0 PR Review -- Scratch / Action Notes
Specific Actions for review findings:
Section titled “Specific Actions for review findings:”3.1 Plan Deviations.
Section titled “3.1 Plan Deviations.”-
The proper location of the constructs is not in
src/main/cdk/constructs/emailbut rather insrc/main/cdk/constructs/xgress.- Rationale: the
xgressdirectory contains all the mechanisms by which the system can send or receive information and interactions for the external world.
- Rationale: the
-
Should Adopt recommendation.
-
Follow M3 decision.
3.2 Scope Additions
Section titled “3.2 Scope Additions”- O.K. to keep, need to be documented as extension in the requirements and design documentation.
4. Findings
Section titled “4. Findings”4.1 Major
Section titled “4.1 Major”| Finding | Action |
|---|---|
| M1 | Adopt Recommendation |
| M2 | Adopt Recommendation |
| M3 | (1) Adopt Short term recommendation (2) Create Issue in Linear: Team PDEV, Initiative Product / OAM / Security, Project Security / Improvements, Release: MVP3, Title: Infrastructure 1Password secret reader |
| M5 | Adopt Recommendation |
| M4 | Adopt Recommendation |
4.2 Minor
Section titled “4.2 Minor”| Finding | Action |
| N1 | (1) Hoist logging.ts to scripts/lib/, (2) Adopt Recommendation |
| N2 | Adopt recommendation after N1 mitigation is complete and logging.ts is relocated |
| N3 | PENDING |
| N4 | Keep As-Is for now |
| N5 | Verify they are in Documentation PR: https://github.com/Arda-cards/documentation/pull/64 |
| N6 | As part of the redaction utility relocation (N1), the coverage should be enhanced. The unit tests should also be moved and enhanced |
| N7 | Agreed. This stack is very likely to not change much. DESTROY helps with the operations workflows |
| N8 | This is actually a bigger issue than it appears. It conflates the “freeKanban” server with the partition configuration. It needs to be redesigned based on the newly stated principles so that (1)
Partitions do not know anything at all about the free kanban tool (this is part of the Corporate instance class) and (2) there are no magic if-then-else conditions in the code, the behavior should be driven by configuration of the stack, not by “control flags” that introduce control coupling between different parts and layers in the system |
5.3 Nit Findings
Section titled “5.3 Nit Findings”| Finding | Action | | Nit-1 | Should be part of next round of commits | | Nit-2 | No Action | | Nit-3 | Make the update in the next push | | Nit-4 | Add the comment |
Corporate Infrastructure Composition
Section titled “Corporate Infrastructure Composition”Reading the Diagram, unless an arrow has a specific label:
- The contents of
Runtimerepresents the instances that are created when the scripts are run. - The contents of
IaCrepresents the code Artifacts that define the configuration for the instances. .|>arrows mean instantiation of.>arrows in theIaCscope meanimportas it is the only meaningful relationship at code time..>arrows in theRuntimescope meansusesthe values of the target object.*->arrows meancontainsas in theApplicationcontainsStack.
Additional Round After Reading Diagram
Section titled “Additional Round After Reading Diagram”(b) C2 text is canonical
The Diagram is correct:
Rationale: We want to differentiate between the Stack (set of resources that share a lifecycle, i.e. deploy together) and the Constructs that define them. The Stack is properly named CorporateEmail as it will include all the resources needed for Corporate Email, not just Dns records, even though right now the only contents is those records.
This is a mistake in the diagram. That was intended to be an informative arrow. The real mechanism is that the PostMarkServer construct will have some built-with values that the Stack will transfer to the DnsRecordSet and neither construct depends on the other. The arrow can be eliminated, the dependency is handled by the calling Stack.
The correct solution is (a). For this interim we are going to externalize that dependency and absorb it in the Corporate CLI layer (b). Documentation must reflect this explicit Tradeoff.
Copyright: © Arda Systems 2025-2026, All rights reserved