@jterrats/open-orchestra 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/AGENTS.md +7 -2
  2. package/CLAUDE.md +2 -2
  3. package/README.md +3 -0
  4. package/dist/args.js +12 -2
  5. package/dist/args.js.map +1 -1
  6. package/dist/assets/web-console.js +44 -0
  7. package/dist/autonomous-phase-lifecycle.js +23 -3
  8. package/dist/autonomous-phase-lifecycle.js.map +1 -1
  9. package/dist/autonomous-run-state.js +2 -0
  10. package/dist/autonomous-run-state.js.map +1 -1
  11. package/dist/benchmark.js +6 -0
  12. package/dist/benchmark.js.map +1 -1
  13. package/dist/cli.js +4 -1
  14. package/dist/cli.js.map +1 -1
  15. package/dist/command-manifest.js +4 -3
  16. package/dist/command-manifest.js.map +1 -1
  17. package/dist/command-utils.js +4 -5
  18. package/dist/command-utils.js.map +1 -1
  19. package/dist/commands.d.ts +1 -1
  20. package/dist/commands.js +1 -1
  21. package/dist/commands.js.map +1 -1
  22. package/dist/constants.js +1 -0
  23. package/dist/constants.js.map +1 -1
  24. package/dist/memory.js +18 -8
  25. package/dist/memory.js.map +1 -1
  26. package/dist/metrics-commands.js +8 -0
  27. package/dist/metrics-commands.js.map +1 -1
  28. package/dist/model-commands.js +6 -2
  29. package/dist/model-commands.js.map +1 -1
  30. package/dist/phase-executor.js +3 -0
  31. package/dist/phase-executor.js.map +1 -1
  32. package/dist/prompt-registry-update.js +20 -0
  33. package/dist/prompt-registry-update.js.map +1 -1
  34. package/dist/qa-coverage.js +15 -6
  35. package/dist/qa-coverage.js.map +1 -1
  36. package/dist/release-commands.js +42 -5
  37. package/dist/release-commands.js.map +1 -1
  38. package/dist/release-readiness.d.ts +3 -1
  39. package/dist/release-readiness.js +33 -6
  40. package/dist/release-readiness.js.map +1 -1
  41. package/dist/roles/core-roles.js +10 -5
  42. package/dist/roles/core-roles.js.map +1 -1
  43. package/dist/skills-catalog.js +130 -0
  44. package/dist/skills-catalog.js.map +1 -1
  45. package/dist/skills-commands.d.ts +1 -0
  46. package/dist/skills-commands.js +37 -1
  47. package/dist/skills-commands.js.map +1 -1
  48. package/dist/skills-planning.d.ts +2 -1
  49. package/dist/skills-planning.js +79 -11
  50. package/dist/skills-planning.js.map +1 -1
  51. package/dist/skills.d.ts +1 -1
  52. package/dist/skills.js +1 -1
  53. package/dist/skills.js.map +1 -1
  54. package/dist/task-graph-commands.js +36 -8
  55. package/dist/task-graph-commands.js.map +1 -1
  56. package/dist/types/metrics.d.ts +2 -0
  57. package/dist/types/model-config.d.ts +4 -0
  58. package/dist/types/skills.d.ts +9 -0
  59. package/dist/types/tasks.d.ts +8 -1
  60. package/dist/types.d.ts +2 -2
  61. package/dist/types.js.map +1 -1
  62. package/dist/web-api.js +80 -7
  63. package/dist/web-api.js.map +1 -1
  64. package/dist/web-console/assets/{index-C9lx-V42.css → index-jxCY5eEc.css} +1 -1
  65. package/dist/web-console/index.html +2 -2
  66. package/dist/workflow-approval-service.js +13 -0
  67. package/dist/workflow-approval-service.js.map +1 -1
  68. package/dist/workflow-evidence-service.js +37 -2
  69. package/dist/workflow-evidence-service.js.map +1 -1
  70. package/dist/workflow-gates.d.ts +1 -0
  71. package/dist/workflow-gates.js +220 -1
  72. package/dist/workflow-gates.js.map +1 -1
  73. package/dist/workflow-phase-planner.js +51 -9
  74. package/dist/workflow-phase-planner.js.map +1 -1
  75. package/dist/workflow-run-commands.d.ts +1 -0
  76. package/dist/workflow-run-commands.js +11 -6
  77. package/dist/workflow-run-commands.js.map +1 -1
  78. package/dist/workflow-services.js +26 -0
  79. package/dist/workflow-services.js.map +1 -1
  80. package/dist/workflow-task-service.js +27 -2
  81. package/dist/workflow-task-service.js.map +1 -1
  82. package/docs/adoption-guide.md +22 -1
  83. package/docs/advisory-supervisor-architecture.md +206 -0
  84. package/docs/architecture.md +47 -41
  85. package/docs/autonomous-workflow.md +2 -2
  86. package/docs/backlog/ac-evidence-bugfix-stories-20260517.md +76 -0
  87. package/docs/backlog/dev-best-practices-hardening-story.md +69 -0
  88. package/docs/backlog/docs-public-internal-package-hygiene-story.md +62 -0
  89. package/docs/backlog/prompt-bank-registry-epic.md +159 -0
  90. package/docs/backlog/site-docs-manifest-story.md +56 -0
  91. package/docs/dev-team-specialist-role-profiles.md +1 -1
  92. package/docs/diagrams/diagram-master-prompt.md +207 -0
  93. package/docs/diagrams/enterprise-set/README.md +22 -0
  94. package/docs/diagrams/enterprise-set/lead-to-account-swimlanes.svg +38 -0
  95. package/docs/diagrams/enterprise-set/product-implementation-timeline.svg +45 -0
  96. package/docs/diagrams/enterprise-set/salesforce-enterprise-architecture.svg +54 -0
  97. package/docs/diagrams/experiments/pixel-v2-review.md +124 -0
  98. package/docs/diagrams/experiments/roadmap/diagram.mmd +14 -0
  99. package/docs/diagrams/experiments/roadmap/diagram.svg +48 -0
  100. package/docs/diagrams/experiments/roadmap/experiment.md +44 -0
  101. package/docs/diagrams/experiments/sfdc-implementation/diagram.mmd +54 -0
  102. package/docs/diagrams/experiments/sfdc-implementation/diagram.svg +72 -0
  103. package/docs/diagrams/experiments/sfdc-implementation/experiment.md +41 -0
  104. package/docs/diagrams/experiments/swimlane/diagram.mmd +40 -0
  105. package/docs/diagrams/experiments/swimlane/diagram.svg +70 -0
  106. package/docs/diagrams/experiments/swimlane/experiment.md +50 -0
  107. package/docs/diagrams/experiments/timeline/diagram.mmd +9 -0
  108. package/docs/diagrams/experiments/timeline/diagram.svg +29 -0
  109. package/docs/diagrams/experiments/timeline/experiment.md +34 -0
  110. package/docs/diagrams/final-artifact-hygiene.md +40 -0
  111. package/docs/diagrams/mermaid-target-strategy.md +106 -0
  112. package/docs/diagrams/payment-gateway/architecture.md +57 -0
  113. package/docs/diagrams/payment-gateway/architecture.mmd +39 -0
  114. package/docs/diagrams/payment-gateway/architecture.svg +171 -0
  115. package/docs/diagrams/prompt-bank.md +48 -0
  116. package/docs/diagrams/salesforce-integration/architecture.md +56 -0
  117. package/docs/diagrams/salesforce-integration/architecture.mmd +26 -0
  118. package/docs/diagrams/salesforce-integration/architecture.svg +123 -0
  119. package/docs/diagrams/source-fidelity-review.md +116 -0
  120. package/docs/diagrams/state-uml-recreated.drawio +336 -0
  121. package/docs/diagrams/state-uml-recreated.prompt.md +114 -0
  122. package/docs/diagrams/state-uml-recreated.prompt.v10.md +52 -0
  123. package/docs/diagrams/state-uml-recreated.prompt.v11.md +52 -0
  124. package/docs/diagrams/state-uml-recreated.prompt.v12.md +50 -0
  125. package/docs/diagrams/state-uml-recreated.prompt.v14.md +91 -0
  126. package/docs/diagrams/state-uml-recreated.prompt.v2.md +31 -0
  127. package/docs/diagrams/state-uml-recreated.prompt.v3.md +36 -0
  128. package/docs/diagrams/state-uml-recreated.prompt.v4.md +35 -0
  129. package/docs/diagrams/state-uml-recreated.prompt.v5.md +35 -0
  130. package/docs/diagrams/state-uml-recreated.prompt.v6.md +39 -0
  131. package/docs/diagrams/state-uml-recreated.prompt.v7.md +37 -0
  132. package/docs/diagrams/state-uml-recreated.prompt.v8.md +41 -0
  133. package/docs/diagrams/state-uml-recreated.prompt.v9.md +32 -0
  134. package/docs/diagrams/state-uml-recreated.svg +159 -0
  135. package/docs/diagrams/v14-stress-test/README.md +33 -0
  136. package/docs/diagrams/v14-stress-test/stress-test.svg +114 -0
  137. package/docs/external-artifact-import-bridge.md +56 -0
  138. package/docs/{setup-agents-applicability-review.md → external-baseline-applicability-review.md} +37 -40
  139. package/docs/{setup-agents-dogfooding-findings.md → external-baseline-dogfooding-findings.md} +10 -9
  140. package/docs/multi-agent-orchestrator-backlog.md +1 -1
  141. package/docs/orchestra-mvp.md +19 -0
  142. package/docs/persona-workflows.md +42 -0
  143. package/docs/release-test-matrix.md +21 -9
  144. package/docs/reports/ac-evidence-backfill-20260517.md +256 -0
  145. package/docs/reports/ac-evolution-reconciliation-20260517.md +366 -0
  146. package/docs/reports/ac-failure-evidence-20260517.md +115 -0
  147. package/docs/reports/ac-history-dry-run-20260517.md +434 -0
  148. package/docs/runtime-llm-flow.md +8 -0
  149. package/docs/site-content-workflow.md +96 -0
  150. package/docs/site-manifest.json +143 -0
  151. package/docs/skill-loading-strategy.md +19 -7
  152. package/docs/story-mapping-adoption-review.md +99 -0
  153. package/docs/traceability-flow.md +11 -0
  154. package/docs/workspace-repo-strategy.md +63 -0
  155. package/package.json +3 -1
  156. package/rules/agent-collaboration.mdc +2 -0
  157. package/rules/code-review-engineering.mdc +2 -0
  158. package/rules/delivery-quality-gates.mdc +12 -0
  159. package/rules/development-engineering.mdc +5 -0
  160. package/rules/devops-tooling.mdc +1 -0
  161. package/rules/diagram-quality.mdc +35 -0
  162. package/rules/dry-clean-code.mdc +1 -0
  163. package/rules/module-boundaries.mdc +71 -0
  164. package/rules/performance-reliability.mdc +1 -0
  165. package/rules/testing-discipline.mdc +17 -1
  166. package/skills/collection-standards/SKILL.md +65 -0
  167. package/skills/collection-standards/manifest.json +69 -0
  168. package/skills/diagram-export/SKILL.md +30 -0
  169. package/skills/qa-evidence-pack/SKILL.md +110 -0
  170. package/skills/qa-evidence-pack/manifest.json +60 -0
  171. package/docs/setup-agents-bridge.md +0 -61
  172. /package/dist/web-console/assets/{index-M3S0g1GK.js → index-BNESIVvk.js} +0 -0
@@ -0,0 +1,54 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="1500" height="940" viewBox="0 0 1500 940" role="img" aria-labelledby="title desc">
2
+ <title id="title">Salesforce enterprise solution architecture</title>
3
+ <desc id="desc">Enterprise architecture diagram showing Salesforce, web app, mobile app, integration layer, SAP, Oracle, AWS, and on-prem backends.</desc>
4
+ <defs>
5
+ <marker id="arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto"><path d="M0 0 L10 5 L0 10 z" fill="#475569"/></marker>
6
+ <marker id="arrow-start" viewBox="0 0 10 10" refX="1" refY="5" markerWidth="8" markerHeight="8" orient="auto"><path d="M10 0 L0 5 L10 10 z" fill="#475569"/></marker>
7
+ <style>
8
+ .font{font-family:Arial,Helvetica,sans-serif}.title{font-size:28px;font-weight:700;fill:#172033}.subtitle{font-size:13px;fill:#4b596c}
9
+ .region{fill:#f8fafc;stroke:#94a3b8;stroke-width:1.5}.channel{fill:#f3f8ff;stroke:#8fb2dc;stroke-width:1.5}.sf{fill:#f5fbff;stroke:#7fb7df;stroke-width:1.5}.int{fill:#fff7ed;stroke:#e5ad70;stroke-width:1.5}.back{fill:#f7fbf5;stroke:#91bd9b;stroke-width:1.5}.sec{fill:#fff5f5;stroke:#e0a1a1;stroke-width:1.5}
10
+ .card{fill:#fff;stroke:#64748b;stroke-width:1.5}.label{font-size:13px;font-weight:700;fill:#526174;text-transform:uppercase}.cardTitle{font-size:17px;font-weight:700;fill:#1f2a3d}.small{font-size:12px;fill:#445267}.badgeText{font-size:10px;font-weight:700;fill:#fff}
11
+ .pill{fill:#fff;stroke:#d8dee8;stroke-width:1}.pillText{font-size:12px;fill:#263445}.edge{fill:none;stroke:#475569;stroke-width:2;marker-end:url(#arrow)}.edgeBoth{fill:none;stroke:#475569;stroke-width:2;marker-start:url(#arrow-start);marker-end:url(#arrow)}.edgeSoft{fill:none;stroke:#64748b;stroke-width:2;stroke-dasharray:7 5;marker-end:url(#arrow)}
12
+ </style>
13
+ </defs>
14
+ <rect width="1500" height="940" fill="#fff"/>
15
+ <g class="font">
16
+ <text class="title" x="48" y="56">Salesforce Enterprise Solution Architecture</text>
17
+ <text class="subtitle" x="48" y="80">Source-free enterprise architecture candidate with channels, Salesforce, integrations, security, and heterogeneous backends.</text>
18
+
19
+ <rect class="channel" x="52" y="140" width="260" height="470" rx="18"/><text class="label" x="84" y="174">Digital Channels</text>
20
+ <rect class="card" x="92" y="236" width="180" height="110" rx="12"/><circle cx="124" cy="270" r="17" fill="#2563eb"/><text class="badgeText" x="124" y="274" text-anchor="middle">WEB</text><text class="cardTitle" x="156" y="266">Web App</text><text class="small" x="114" y="300">customer portal</text><text class="small" x="114" y="320">agent workspace</text>
21
+ <rect class="card" x="92" y="430" width="180" height="112" rx="12"/><circle cx="124" cy="464" r="17" fill="#7c3aed"/><text class="badgeText" x="124" y="468" text-anchor="middle">MOB</text><text class="cardTitle" x="156" y="460">Mobile App</text><text class="small" x="114" y="494">field sales</text><text class="small" x="114" y="514">service actions</text>
22
+
23
+ <rect class="sec" x="360" y="116" width="220" height="610" rx="18"/><text class="label" x="392" y="150">Security Edge</text>
24
+ <rect class="card" x="400" y="244" width="140" height="104" rx="12"/><circle cx="432" cy="278" r="17" fill="#dc2626"/><text class="badgeText" x="432" y="282" text-anchor="middle">IAM</text><text class="cardTitle" x="462" y="274">Identity</text><text class="small" x="422" y="308">SSO / MFA</text><text class="small" x="422" y="328">policy claims</text>
25
+ <rect class="card" x="400" y="434" width="140" height="104" rx="12"/><circle cx="432" cy="468" r="17" fill="#d97706"/><text class="badgeText" x="432" y="472" text-anchor="middle">API</text><text class="cardTitle" x="462" y="464">API Edge</text><text class="small" x="422" y="498">WAF, throttling</text><text class="small" x="422" y="518">TLS policy</text>
26
+
27
+ <rect class="sf" x="640" y="116" width="330" height="610" rx="18"/><text class="label" x="672" y="150">Salesforce Platform</text>
28
+ <rect class="card" x="688" y="212" width="232" height="98" rx="12"/><circle cx="720" cy="244" r="17" fill="#0ea5e9"/><text class="badgeText" x="720" y="248" text-anchor="middle">SF</text><text class="cardTitle" x="752" y="240">Sales Cloud</text><text class="small" x="714" y="274">leads, accounts</text><text class="small" x="714" y="292">opportunities</text>
29
+ <rect class="card" x="688" y="374" width="232" height="98" rx="12"/><circle cx="720" cy="406" r="17" fill="#059669"/><text class="badgeText" x="720" y="410" text-anchor="middle">SVC</text><text class="cardTitle" x="752" y="402">Service Cloud</text><text class="small" x="714" y="436">cases, entitlements</text><text class="small" x="714" y="454">knowledge</text>
30
+ <rect class="card" x="688" y="536" width="232" height="116" rx="12"/><circle cx="720" cy="570" r="17" fill="#4f46e5"/><text class="badgeText" x="720" y="574" text-anchor="middle">D360</text><text class="cardTitle" x="752" y="566">Data 360</text><text class="small" x="714" y="600">profiles, segments</text><text class="small" x="714" y="620">consent signals</text>
31
+
32
+ <rect class="int" x="1030" y="116" width="210" height="610" rx="18"/><text class="label" x="1062" y="150">Integration Layer</text>
33
+ <rect class="card" x="1070" y="250" width="130" height="116" rx="12"/><circle cx="1102" cy="284" r="17" fill="#0f766e"/><text class="badgeText" x="1102" y="288" text-anchor="middle">MW</text><text class="cardTitle" x="1132" y="280">API /</text><text class="cardTitle" x="1132" y="300">Middleware</text><text class="small" x="1092" y="334">events, ETL</text><text class="small" x="1092" y="352">orchestration</text>
34
+ <rect class="card" x="1070" y="482" width="130" height="112" rx="12"/><circle cx="1102" cy="516" r="17" fill="#0ea5e9"/><text class="badgeText" x="1102" y="520" text-anchor="middle">BUS</text><text class="cardTitle" x="1132" y="512">Event Bus</text><text class="small" x="1092" y="546">streaming</text><text class="small" x="1092" y="566">replay</text>
35
+
36
+ <rect class="back" x="1290" y="116" width="160" height="610" rx="18"/><text class="label" x="1320" y="150">Backends</text>
37
+ <rect class="card" x="1318" y="194" width="104" height="72" rx="10"/><text class="cardTitle" x="1346" y="230">SAP</text><text class="small" x="1336" y="250">ERP</text>
38
+ <rect class="card" x="1318" y="306" width="104" height="72" rx="10"/><text class="cardTitle" x="1338" y="342">Oracle</text><text class="small" x="1336" y="362">finance</text>
39
+ <rect class="card" x="1318" y="418" width="104" height="72" rx="10"/><text class="cardTitle" x="1340" y="454">AWS</text><text class="small" x="1336" y="474">services</text>
40
+ <rect class="card" x="1318" y="530" width="104" height="86" rx="10"/><text class="cardTitle" x="1340" y="566">On-Prem</text><text class="small" x="1336" y="588">legacy</text><text class="small" x="1336" y="606">systems</text>
41
+
42
+ <path class="edge" d="M272 291 H400"/><rect class="pill" x="298" y="260" width="106" height="20" rx="4"/><text class="pillText" x="306" y="274">web identity</text>
43
+ <path class="edge" d="M272 486 H400"/><rect class="pill" x="298" y="506" width="112" height="20" rx="4"/><text class="pillText" x="306" y="520">mobile access</text>
44
+ <path class="edge" d="M540 296 H688"/><rect class="pill" x="566" y="264" width="102" height="20" rx="4"/><text class="pillText" x="574" y="278">claims + SSO</text>
45
+ <path class="edge" d="M540 486 H614 Q640 486 640 423 H688"/><rect class="pill" x="560" y="506" width="94" height="20" rx="4"/><text class="pillText" x="568" y="520">API traffic</text>
46
+ <path class="edgeBoth" d="M920 262 H1030"/><rect class="pill" x="940" y="230" width="72" height="20" rx="4"/><text class="pillText" x="948" y="244">CRM APIs</text>
47
+ <path class="edgeBoth" d="M920 594 H1004 Q1030 594 1030 538 H1070"/><rect class="pill" x="930" y="612" width="90" height="20" rx="4"/><text class="pillText" x="938" y="626">profile sync</text>
48
+ <path class="edgeBoth" d="M1200 292 H1318"/><rect class="pill" x="1222" y="260" width="82" height="20" rx="4"/><text class="pillText" x="1230" y="274">ERP flow</text>
49
+ <path class="edgeBoth" d="M1200 320 H1280 Q1290 320 1290 342 H1318"/><rect class="pill" x="1216" y="334" width="92" height="20" rx="4"/><text class="pillText" x="1224" y="348">finance sync</text>
50
+ <path class="edgeBoth" d="M1200 538 H1280 Q1290 538 1290 454 H1318"/><rect class="pill" x="1212" y="500" width="90" height="20" rx="4"/><text class="pillText" x="1220" y="514">cloud events</text>
51
+ <path class="edgeBoth" d="M1200 566 H1272 Q1290 566 1290 573 H1318"/><rect class="pill" x="1212" y="586" width="86" height="20" rx="4"/><text class="pillText" x="1220" y="600">legacy API</text>
52
+ <path class="edgeSoft" d="M804 652 V790 H1135 V594"/><rect class="pill" x="858" y="768" width="174" height="38" rx="5"/><text class="pillText" x="866" y="784">async customer data</text><text class="pillText" x="866" y="800">and observability events</text>
53
+ </g>
54
+ </svg>
@@ -0,0 +1,124 @@
1
+ # Diagram Pixel V2 Review
2
+
3
+ Task: DIAGRAM-PIXEL-REGEN-V2
4
+
5
+ ## Generated Artifacts
6
+
7
+ - `output/diagram-experiments/pixel-v2/roadmap/preview-v2.png`
8
+ - `output/diagram-experiments/pixel-v2/sfdc-implementation/preview-v2.png`
9
+ - `output/diagram-experiments/pixel-v2/swimlane/preview-v2.png`
10
+ - `output/diagram-experiments/pixel-v2/timeline/preview-v2.png`
11
+
12
+ ## Evaluation Method
13
+
14
+ The v2 candidates were rendered from the current SVG sources with Playwright to
15
+ create fresh screenshots for visual review. Each render was compared against the
16
+ downloaded source reference at the diagram level: page framing, primary
17
+ containers, typography scale, element order, connector behavior, spacing, and
18
+ semantic completeness.
19
+
20
+ ## Roadmap Findings
21
+
22
+ Source: `output/diagram-experiments/sources/roadmap-tech-1.png`
23
+
24
+ - Not pixel-perfect. The current output omits the source page chrome, footer URL,
25
+ and top timestamp line. That is acceptable only if the contract is diagram-only,
26
+ not full-page recreation.
27
+ - Title and legend placement are close, but the title text is too large and too
28
+ high compared with the source.
29
+ - The source roadmap grid starts lower and uses a taller body; the generated
30
+ grid is compressed vertically.
31
+ - Initiative cards do not match the source y positions and several month spans
32
+ are visually shifted.
33
+ - The source uses real component icons; the generated output uses text/dot
34
+ abstractions. For pixel recreation this must be declared as a deviation or
35
+ replaced with icon-equivalent symbols.
36
+
37
+ Prompt corrections needed:
38
+
39
+ - Declare whether page chrome must be recreated or intentionally cropped out.
40
+ - Include exact grid bounds, lane label bounds, and month column width before
41
+ drawing cards.
42
+ - Re-evaluate each card against start/end dates using the month grid as a hard
43
+ placement constraint.
44
+
45
+ ## SFDC Implementation Findings
46
+
47
+ Source: `output/diagram-experiments/sources/sfdc-impl-1.png`
48
+
49
+ - Not pixel-perfect. The output is a simplified architecture approximation; the
50
+ source has many more internal cards, badges, side rails, external systems, and
51
+ integration bars.
52
+ - Layer count and high-level reading direction are correct, but the density and
53
+ semantic completeness are much lower than the source.
54
+ - The source has a right-side marketing platform rail in the application layer;
55
+ the output omits that structure.
56
+ - Several source connectors run through intermediate bars and external data
57
+ systems; the output collapses them into broad vertical lines.
58
+ - The source left rail labels are taller and align exactly with source layer
59
+ bands; the output is visually clean but not faithful.
60
+
61
+ Prompt corrections needed:
62
+
63
+ - Split architecture recreation into inventory first, then render. The inventory
64
+ must list every lane, system card, internal subcard, external rail, and
65
+ connector group before drawing.
66
+ - Add a density mode: `faithful recreation` keeps small labels and badges;
67
+ `readable abstraction` may simplify them but must not be called pixel-perfect.
68
+ - For source matching, connectors must be grouped by source/target layer and
69
+ validated against visible landing points.
70
+
71
+ ## Swimlane Findings
72
+
73
+ Source: `output/diagram-experiments/sources/swimlane-def-01.png`
74
+
75
+ - The current output is not recreating the visible source. The source image is a
76
+ website page with an embedded monitor illustration, while the output is an
77
+ independent swimlane process diagram.
78
+ - This is acceptable as a source-free diagram experiment, but not as a
79
+ recreation.
80
+ - The output itself has readable lane structure and mostly orthogonal routing.
81
+ It still needs a stricter source-free contract for lane count, process steps,
82
+ decision labels, and unused whitespace.
83
+
84
+ Prompt corrections needed:
85
+
86
+ - Classify the source as `page screenshot`, `embedded diagram`, or
87
+ `source-free inspiration` before generation.
88
+ - If the source contains an embedded diagram inside another illustration, crop or
89
+ isolate the embedded diagram before asking for pixel recreation.
90
+ - If source-free, define acceptance criteria for visual quality independent of
91
+ the source.
92
+
93
+ ## Timeline Findings
94
+
95
+ Source: `output/diagram-experiments/sources/timeline-steps-01.png`
96
+
97
+ - The current output is a clean source-free timeline, not a recreation. The
98
+ source is a web page screenshot with a small preview image and Vecteezy chrome.
99
+ - The timeline pattern is plausible, but it does not match the reference
100
+ preview's tiny scale, web chrome, typography, or content.
101
+ - This confirms the rule gap: downloaded marketplace PDFs/pages need source
102
+ region extraction before diagram generation.
103
+
104
+ Prompt corrections needed:
105
+
106
+ - Extract or define the diagram region before generation.
107
+ - If the source only shows a tiny preview, mark pixel-perfect recreation as
108
+ blocked until a higher-resolution diagram region is available.
109
+ - For source-free timelines, validate even milestone spacing, vertical stem
110
+ alignment, text fit, and balanced top/bottom annotation density.
111
+
112
+ ## Overall Result
113
+
114
+ The v2 renders are useful baseline artifacts, but none should be accepted as
115
+ pixel-perfect recreation. The next implementation pass should update the master
116
+ diagram prompt/rules to force:
117
+
118
+ - source classification before rendering;
119
+ - element inventory before drawing;
120
+ - explicit recreation mode versus source-free mode;
121
+ - post-render screenshot review before delivery;
122
+ - connector landing-point validation;
123
+ - text fit and container bounds validation;
124
+ - page-crop or diagram-region extraction for downloaded web/PDF sources.
@@ -0,0 +1,14 @@
1
+ gantt
2
+ title Technology Component Roadmap
3
+ dateFormat YYYY-MM-DD
4
+ axisFormat %b
5
+
6
+ section Sales Cloud
7
+ Environment Set-Up :env, 2026-01-15, 2026-02-01
8
+ Account and Contact Management :acct, 2026-02-05, 2026-03-15
9
+ Custom Lead Conversion Process :lead, 2026-02-15, 2026-04-10
10
+ Opportunity and Quote Mgmt :opp, 2026-03-15, 2026-04-15
11
+ CPQ Integration :cpq, 2026-03-20, 2026-04-25
12
+ Forecasting :forecast, 2026-04-20, 2026-05-15
13
+ Territory Management :territory, 2026-04-15, 2026-05-10
14
+
@@ -0,0 +1,48 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="1280" height="820" viewBox="0 0 1280 820" role="img" aria-labelledby="title desc">
2
+ <title id="title">Technology roadmap experiment</title>
3
+ <desc id="desc">Six-month technology component roadmap with timeline columns and initiative cards.</desc>
4
+ <defs>
5
+ <style>
6
+ .font{font-family:Arial,Helvetica,sans-serif}.title{fill:#153e75;font-size:24px;font-weight:700}.sub{fill:#153e75;font-size:12px}.month{fill:#111827;font-size:14px;font-weight:700}.lane{fill:#24324f;font-size:17px;font-weight:700}.card{fill:#fff;stroke:#687185;stroke-width:1.6}.cardTitle{fill:#111827;font-size:13px;font-weight:700}.meta{fill:#111827;font-size:10px}.legend{fill:#fff;stroke:#d0d4dd}.dotBlue{fill:#123e75}.dotPurple{fill:#2d125f}.dotViolet{fill:#4b2aad}.grid{stroke:#8d96a9;stroke-width:1}.iconText{fill:#fff;font-size:11px;font-weight:700}
7
+ </style>
8
+ </defs>
9
+ <rect width="1280" height="820" fill="#fff"/>
10
+ <g class="font">
11
+ <text class="title" x="70" y="156">Technology Component Roadmap</text>
12
+ <text class="sub" x="70" y="184">Specific components deployed to assist planning, budgeting, and dependency review.</text>
13
+ <path d="M520 86 C565 136 565 196 520 246 H1190 V86 Z" fill="#e5e5e5"/>
14
+ <rect class="legend" x="610" y="106" width="520" height="100" rx="8"/>
15
+ <g transform="translate(640 132)">
16
+ <circle class="dotBlue" cx="0" cy="0" r="14"/><text class="iconText" x="0" y="4" text-anchor="middle">A</text><text class="meta" x="26" y="4">Authentication</text>
17
+ <circle class="dotBlue" cx="160" cy="0" r="14"/><text class="iconText" x="160" y="4" text-anchor="middle">M</text><text class="meta" x="186" y="4">App Menu</text>
18
+ <circle class="dotPurple" cx="320" cy="0" r="14"/><text class="iconText" x="320" y="4" text-anchor="middle">P</text><text class="meta" x="346" y="4">Pro Code</text>
19
+ <circle class="dotPurple" cx="440" cy="0" r="14"/><text class="iconText" x="440" y="4" text-anchor="middle">L</text><text class="meta" x="466" y="4">Lightning</text>
20
+ <circle class="dotBlue" cx="0" cy="54" r="14"/><text class="iconText" x="0" y="58" text-anchor="middle">D</text><text class="meta" x="26" y="58">Administration</text>
21
+ <circle class="dotViolet" cx="160" cy="54" r="14"/><text class="iconText" x="160" y="58" text-anchor="middle">LC</text><text class="meta" x="186" y="58">Low Code</text>
22
+ <circle class="dotViolet" cx="320" cy="54" r="14"/><text class="iconText" x="320" y="58" text-anchor="middle">DB</text><text class="meta" x="346" y="58">Potential LDV</text>
23
+ </g>
24
+ <rect x="220" y="280" width="940" height="470" fill="#fafafa" stroke="#687185"/>
25
+ <rect x="84" y="365" width="136" height="385" fill="#fff" stroke="#687185"/>
26
+ <text class="lane" x="152" y="565" text-anchor="middle">Sales Cloud</text>
27
+ <g>
28
+ <path class="grid" d="M376 280V750M532 280V750M688 280V750M844 280V750M1000 280V750"/>
29
+ <path class="grid" d="M220 365H1160"/>
30
+ <text class="month" x="298" y="328" text-anchor="middle">January</text>
31
+ <text class="month" x="454" y="328" text-anchor="middle">February</text>
32
+ <text class="month" x="610" y="328" text-anchor="middle">March</text>
33
+ <text class="month" x="766" y="328" text-anchor="middle">April</text>
34
+ <text class="month" x="922" y="328" text-anchor="middle">May</text>
35
+ <text class="month" x="1078" y="328" text-anchor="middle">June</text>
36
+ </g>
37
+ <g>
38
+ <rect class="card" x="270" y="390" width="160" height="140" rx="10"/><text class="cardTitle" x="285" y="424">Environment Set-Up</text><text class="meta" x="285" y="454">Start Date: January 15</text><text class="meta" x="285" y="476">End Date: February 1</text><text class="meta" x="285" y="498">Dependencies: None</text>
39
+ <circle class="dotBlue" cx="295" cy="514" r="10"/><circle class="dotPurple" cx="335" cy="514" r="10"/><circle class="dotBlue" cx="375" cy="514" r="10"/><circle class="dotBlue" cx="415" cy="514" r="10"/>
40
+ <rect class="card" x="414" y="610" width="190" height="112" rx="10"/><text class="cardTitle" x="429" y="644">Account and Contact</text><text class="cardTitle" x="429" y="662">Management</text><text class="meta" x="429" y="692">Start Date: February 5</text><text class="meta" x="429" y="714">End Date: March 15</text>
41
+ <rect class="card" x="520" y="512" width="310" height="112" rx="10"/><text class="cardTitle" x="535" y="546">Custom Lead Conversion Process</text><text class="meta" x="535" y="576">Start Date: February 15</text><text class="meta" x="535" y="598">End Date: April 10</text><circle class="dotViolet" cx="674" cy="604" r="12"/>
42
+ <rect class="card" x="636" y="610" width="190" height="112" rx="10"/><text class="cardTitle" x="651" y="644">Opportunity and Quote</text><text class="cardTitle" x="651" y="662">Management</text><text class="meta" x="651" y="692">Start Date: March 15</text><circle class="dotViolet" cx="707" cy="704" r="12"/><circle class="dotPurple" cx="743" cy="704" r="12"/>
43
+ <rect class="card" x="754" y="390" width="190" height="112" rx="10"/><text class="cardTitle" x="769" y="424">CPQ Integration</text><text class="meta" x="769" y="454">Start Date: March 20</text><text class="meta" x="769" y="476">End Date: April 25</text>
44
+ <rect class="card" x="880" y="510" width="190" height="112" rx="10"/><text class="cardTitle" x="895" y="544">Forecasting</text><text class="meta" x="895" y="574">Start Date: April 20</text><text class="meta" x="895" y="596">End Date: May 15</text><circle class="dotViolet" cx="975" cy="604" r="12"/>
45
+ <rect class="card" x="858" y="624" width="190" height="112" rx="10"/><text class="cardTitle" x="873" y="658">Territory Management</text><text class="meta" x="873" y="688">Start Date: April 15</text><text class="meta" x="873" y="710">End Date: May 10</text><circle class="dotViolet" cx="948" cy="712" r="12"/><circle class="dotPurple" cx="982" cy="712" r="12"/>
46
+ </g>
47
+ </g>
48
+ </svg>
@@ -0,0 +1,44 @@
1
+ # Technology Roadmap Diagram Experiment
2
+
3
+ Task: DIAGRAM-ROADMAP-EXPERIMENT
4
+
5
+ ## Source Inventory
6
+
7
+ - `roadmap-technology-component.pdf`: one-page technology component roadmap with a title band, legend, month columns, a left-side product lane, and rounded initiative cards positioned by time span.
8
+
9
+ ## Element Contract
10
+
11
+ - Audience: delivery leads and technical stakeholders planning releases and dependencies.
12
+ - Reading flow: month grid left to right; cards occupy the months where work happens.
13
+ - Layout: single product lane with month columns January through June.
14
+ - Nodes: initiative cards with title, start/end date, dependency note, and component icons.
15
+ - Visual constraints: cards must align to month columns, legend must stay separate from the schedule, and card shadows should not imply grouping.
16
+
17
+ ## Prompt Used
18
+
19
+ Create a technology component roadmap diagram as SVG.
20
+
21
+ Use a title block on the upper left, a compact legend on the upper right, and a
22
+ timeline grid below. The grid has a left lane label and six monthly columns:
23
+ January, February, March, April, May, June. Use rounded initiative cards placed
24
+ inside the grid by rough date span. Include these initiatives:
25
+
26
+ - Environment Set-Up, January 15 to February 1, dependency Environment.
27
+ - Account and Contact Management, February 5 to March 15, dependency Environment.
28
+ - Custom Lead Conversion Process, February 15 to April 10, dependency Leads.
29
+ - Opportunity and Quote Management, March 15 to April 15, dependency Accounts, Contacts, Leads.
30
+ - CPQ Integration, March 20 to April 25, dependency Environment.
31
+ - Forecasting, April 20 to May 15, dependency Accounts, Contacts, Leads.
32
+ - Territory Management, April 15 to May 10, dependency Accounts, Contacts, Leads.
33
+
34
+ Use icon dots inside each card to show component categories. Align every card to
35
+ the relevant month region. Re-evaluate text fit, timeline alignment, overlap,
36
+ and legend spacing after rendering.
37
+
38
+ ## Evaluation Findings
39
+
40
+ - Roadmaps need column-grid fidelity more than connector fidelity; small card shifts can change perceived timing.
41
+ - Card density becomes a problem when initiatives overlap in the same months; vertical staggering must be part of the prompt.
42
+ - Icons work as metadata, but they need a legend and consistent spacing.
43
+ - A future master rule should require roadmap card start/end alignment checks against the declared time axis.
44
+
@@ -0,0 +1,54 @@
1
+ flowchart TB
2
+ subgraph app["Application, Service, Orchestration and Agentic Layer"]
3
+ WS["Collaboration Workspace"]
4
+ EO["Employee Org"]
5
+ SO["Service Org"]
6
+ SA["Sales Org"]
7
+ PO["Partner Org"]
8
+ CS["Customer Success Org"]
9
+ WS --> EO
10
+ WS --> SO
11
+ WS --> SA
12
+ WS --> PO
13
+ WS --> CS
14
+ end
15
+
16
+ subgraph bi["Business Intelligence and Reporting Layer"]
17
+ AC["Analytics Cloud"]
18
+ end
19
+
20
+ subgraph data["Data Platform and Unification Layer"]
21
+ DP2["Data Platform Instance 2\nEmployee, IT, Security, Legal"]
22
+ DP1["Data Platform Instance 1\nSales, Knowledge, CS, M&A, Marketing"]
23
+ DP2 <--> DP1
24
+ end
25
+
26
+ subgraph external["External Data and Federation Layer"]
27
+ FED["Query and Federation Layer"]
28
+ EDW["EDW"]
29
+ MA["M&A EDW"]
30
+ TL["Telemetry Lake"]
31
+ FED --> EDW
32
+ FED --> MA
33
+ FED --> TL
34
+ end
35
+
36
+ subgraph source["Source Layer"]
37
+ SRC1["1P and 3P Data"]
38
+ SRC2["Structured Data"]
39
+ SRC3["Enterprise Systems"]
40
+ SRC4["Marketing Systems"]
41
+ SRC5["App Logs and Telemetry"]
42
+ end
43
+
44
+ EO --> DP2
45
+ SO --> AC
46
+ SA --> AC
47
+ PO --> DP1
48
+ CS --> DP1
49
+ AC --> DP1
50
+ DP1 --> FED
51
+ DP2 --> SRC2
52
+ EDW --> SRC3
53
+ MA --> SRC4
54
+ TL --> SRC5
@@ -0,0 +1,72 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="1380" height="980" viewBox="0 0 1380 980" role="img" aria-labelledby="title desc">
2
+ <title id="title">Layered implementation architecture experiment</title>
3
+ <desc id="desc">Five-layer enterprise implementation architecture with application orgs, reporting, data platforms, external data, and source systems.</desc>
4
+ <defs>
5
+ <marker id="arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
6
+ <path d="M0 0 L10 5 L0 10 z" fill="#7b8497"/>
7
+ </marker>
8
+ <style>
9
+ .font{font-family:Arial,Helvetica,sans-serif}.title{fill:#2f3747;font-size:22px;font-weight:700}.sub{fill:#3f4858;font-size:11px}.layerLabel{fill:#fff;font-size:14px;font-weight:700}.band{fill:#f0f1fc}.rail{fill:#6155f6}.card{fill:#fff;stroke:#7a8394;stroke-width:1.4}.bar{fill:#fff;stroke:#7a8394;stroke-width:1.4}.cardTitle{fill:#243044;font-size:13px;font-weight:700}.small{fill:#374151;font-size:10px}.chip{fill:#e8fff8;stroke:#bde9db}.chip2{fill:#fff3f3;stroke:#f0c7c7}.edge{fill:none;stroke:#8d96a8;stroke-width:1.5;marker-end:url(#arrow)}.edgeSoft{fill:none;stroke:#8d96a8;stroke-width:1.2}.badgeText{fill:#fff;font-size:9px;font-weight:700}
10
+ </style>
11
+ </defs>
12
+ <rect width="1380" height="980" fill="#fff"/>
13
+ <g class="font">
14
+ <text class="title" x="82" y="78">Customer Zero Implementation Architecture</text>
15
+ <text class="sub" x="82" y="104">Layered view of service, reporting, data platform, external data, and source system relationships.</text>
16
+ <path d="M760 42 C800 78 800 118 760 154 H1320 V42 Z" fill="#e5e7eb"/>
17
+ <rect x="930" y="58" width="320" height="80" rx="8" fill="#fff"/>
18
+ <circle cx="960" cy="82" r="10" fill="#f97316"/><text class="small" x="978" y="86">Cloud service</text>
19
+ <circle cx="1080" cy="82" r="10" fill="#4285f4"/><text class="small" x="1098" y="86">Ads / media</text>
20
+ <circle cx="960" cy="114" r="10" fill="#2563eb"/><text class="small" x="978" y="118">Data platform</text>
21
+ <circle cx="1080" cy="114" r="10" fill="#4b5563"/><text class="small" x="1098" y="118">External app</text>
22
+ <g>
23
+ <rect class="rail" x="70" y="178" width="160" height="238" rx="8"/><text class="layerLabel" x="150" y="274" text-anchor="middle">Application</text><text class="layerLabel" x="150" y="294" text-anchor="middle">Service</text><text class="layerLabel" x="150" y="314" text-anchor="middle">Orchestration</text><text class="layerLabel" x="150" y="334" text-anchor="middle">Agentic Layer</text>
24
+ <rect class="rail" x="70" y="424" width="160" height="118" rx="8"/><text class="layerLabel" x="150" y="466" text-anchor="middle">Business</text><text class="layerLabel" x="150" y="486" text-anchor="middle">Intelligence and</text><text class="layerLabel" x="150" y="506" text-anchor="middle">Reporting Layer</text>
25
+ <rect class="rail" x="70" y="550" width="160" height="154" rx="8"/><text class="layerLabel" x="150" y="610" text-anchor="middle">Data Platform</text><text class="layerLabel" x="150" y="630" text-anchor="middle">and Unification</text><text class="layerLabel" x="150" y="650" text-anchor="middle">Layer</text>
26
+ <rect class="rail" x="70" y="712" width="160" height="150" rx="8"/><text class="layerLabel" x="150" y="770" text-anchor="middle">External Data</text><text class="layerLabel" x="150" y="790" text-anchor="middle">and Federation</text><text class="layerLabel" x="150" y="810" text-anchor="middle">Layer</text>
27
+ <rect class="rail" x="70" y="870" width="160" height="82" rx="8"/><text class="layerLabel" x="150" y="906" text-anchor="middle">Source Layer</text>
28
+ </g>
29
+ <rect class="band" x="245" y="178" width="1070" height="238" rx="10"/>
30
+ <rect class="band" x="245" y="424" width="1070" height="118" rx="10"/>
31
+ <rect class="band" x="245" y="550" width="1070" height="154" rx="10"/>
32
+ <rect class="band" x="245" y="712" width="1070" height="150" rx="10"/>
33
+ <rect class="band" x="245" y="870" width="1070" height="82" rx="10"/>
34
+ <rect class="bar" x="280" y="192" width="820" height="54" rx="8"/><text class="cardTitle" x="300" y="225">Collaboration Workspace</text>
35
+ <g>
36
+ <rect class="card" x="290" y="280" width="160" height="106" rx="8"/><text class="cardTitle" x="310" y="310">Employee Org</text><text class="small" x="310" y="334">Employee agents</text><text class="small" x="310" y="352">HR support</text>
37
+ <rect class="card" x="478" y="280" width="160" height="106" rx="8"/><text class="cardTitle" x="498" y="310">Service Org</text><text class="small" x="498" y="334">Service agents</text><text class="small" x="498" y="352">Support workflows</text>
38
+ <rect class="card" x="666" y="280" width="160" height="106" rx="8"/><text class="cardTitle" x="686" y="310">Sales Org</text><text class="small" x="686" y="334">Sales agents</text><text class="small" x="686" y="352">Revenue workflows</text>
39
+ <rect class="card" x="854" y="280" width="160" height="106" rx="8"/><text class="cardTitle" x="874" y="310">Partner Org</text><text class="small" x="874" y="334">Partner learning</text><text class="small" x="874" y="352">Lead routing</text>
40
+ <rect class="card" x="1042" y="280" width="160" height="106" rx="8"/><text class="cardTitle" x="1062" y="310">Customer Success</text><text class="small" x="1062" y="334">Incident response</text><text class="small" x="1062" y="352">Success metrics</text>
41
+ </g>
42
+ <rect class="card" x="660" y="454" width="190" height="64" rx="8"/><text class="cardTitle" x="682" y="482">Analytics Cloud</text><text class="small" x="682" y="500">Data intelligence and reporting</text>
43
+ <rect class="card" x="340" y="578" width="310" height="98" rx="8"/><text class="cardTitle" x="362" y="606">Data Platform Instance 2</text><rect class="chip" x="362" y="628" width="66" height="24" rx="5"/><text class="small" x="374" y="644">Employee</text><rect class="chip" x="436" y="628" width="56" height="24" rx="5"/><text class="small" x="451" y="644">IT</text><rect class="chip2" x="362" y="658" width="66" height="24" rx="5"/><text class="small" x="380" y="674">Security</text><rect class="chip2" x="436" y="658" width="56" height="24" rx="5"/><text class="small" x="452" y="674">Legal</text>
44
+ <rect class="card" x="880" y="578" width="310" height="98" rx="8"/><text class="cardTitle" x="902" y="606">Data Platform Instance 1</text><rect class="chip" x="902" y="628" width="58" height="24" rx="5"/><text class="small" x="918" y="644">Sales</text><rect class="chip" x="968" y="628" width="98" height="24" rx="5"/><text class="small" x="982" y="644">Unified Knowledge</text><rect class="chip2" x="902" y="658" width="58" height="24" rx="5"/><text class="small" x="920" y="674">CS</text><rect class="chip2" x="968" y="658" width="58" height="24" rx="5"/><text class="small" x="986" y="674">M&amp;A</text><rect class="chip2" x="1034" y="658" width="72" height="24" rx="5"/><text class="small" x="1048" y="674">Marketing</text>
45
+ <rect class="bar" x="736" y="692" width="280" height="24" rx="6"/><text class="small" x="876" y="708" text-anchor="middle">Data sharing between platform instances</text>
46
+ <rect class="bar" x="742" y="726" width="380" height="26" rx="6"/><text class="small" x="932" y="744" text-anchor="middle">Query and federation layer</text>
47
+ <g>
48
+ <rect class="card" x="690" y="772" width="150" height="58" rx="8"/><text class="cardTitle" x="710" y="804">EDW</text>
49
+ <rect class="card" x="860" y="772" width="150" height="58" rx="8"/><text class="cardTitle" x="880" y="804">M&amp;A EDW</text>
50
+ <rect class="card" x="1030" y="772" width="150" height="58" rx="8"/><text class="cardTitle" x="1050" y="804">Telemetry Lake</text>
51
+ </g>
52
+ <g>
53
+ <rect class="card" x="270" y="890" width="130" height="42" rx="7"/><text class="small" x="335" y="916" text-anchor="middle">1P and 3P Data</text>
54
+ <rect class="card" x="430" y="890" width="150" height="42" rx="7"/><text class="small" x="505" y="916" text-anchor="middle">Structured Data</text>
55
+ <rect class="card" x="610" y="890" width="170" height="42" rx="7"/><text class="small" x="695" y="916" text-anchor="middle">Enterprise Systems</text>
56
+ <rect class="card" x="810" y="890" width="160" height="42" rx="7"/><text class="small" x="890" y="916" text-anchor="middle">Marketing Systems</text>
57
+ <rect class="card" x="1000" y="890" width="180" height="42" rx="7"/><text class="small" x="1090" y="916" text-anchor="middle">App Logs and Telemetry</text>
58
+ </g>
59
+ <path class="edge" d="M370 386V578"/>
60
+ <path class="edge" d="M558 386V454"/>
61
+ <path class="edge" d="M746 386V454"/>
62
+ <path class="edge" d="M934 386V578"/>
63
+ <path class="edge" d="M1122 386V578"/>
64
+ <path class="edge" d="M755 518V578"/>
65
+ <path class="edgeSoft" d="M650 628H880"/>
66
+ <path class="edge" d="M495 676V890"/>
67
+ <path class="edge" d="M1035 676V772"/>
68
+ <path class="edge" d="M765 830V890"/>
69
+ <path class="edge" d="M935 830V890"/>
70
+ <path class="edge" d="M1105 830V890"/>
71
+ </g>
72
+ </svg>
@@ -0,0 +1,41 @@
1
+ # Implementation Architecture Diagram Experiment
2
+
3
+ Task: DIAGRAM-SFDC-IMPLEMENTATION-EXPERIMENT
4
+
5
+ ## Source Inventory
6
+
7
+ - `sfdc_customer_zero_implementation.pdf`: one-page layered enterprise implementation architecture. It uses a title/legend band, horizontal layer bands, a left-side layer label rail, system cards, internal subcards, many vertical integration lines, and external/source systems at the bottom.
8
+
9
+ ## Element Contract
10
+
11
+ - Audience: architecture reviewer evaluating system boundaries and data movement.
12
+ - Reading flow: top application layer down to source systems, with lateral data sharing between platform instances.
13
+ - Layers: Application/Service/Agentic, BI/Reporting, Data Platform, External Data, Source.
14
+ - Nodes: workspace cards, platform cards, external system cards, and integration bars.
15
+ - Connectors: mostly vertical, orthogonal, and labeled only for cross-layer meaning.
16
+ - Visual constraints: layer labels must align with bands, connectors must not hide system names, and dense icons should be abstracted into compact badges.
17
+
18
+ ## Prompt Used
19
+
20
+ Create a layered implementation architecture diagram as SVG.
21
+
22
+ Use a top title band and compact legend. Build five horizontal layers with a
23
+ purple label rail on the left. In the top layer, place five organization cards
24
+ under a collaboration bar. In the reporting layer, place a central analytics
25
+ card. In the data platform layer, place two platform instance cards with data
26
+ space chips and feature blocks. In the external data layer, place a shared query
27
+ and federation bar plus three data platform cards. In the source layer, place
28
+ five source system cards.
29
+
30
+ Use vertical orthogonal connectors between layers and one horizontal connector
31
+ between platform instances. Abstract vendor icons as small colored badges. Keep
32
+ all text inside cards, avoid connector overlap with labels, and re-evaluate
33
+ layer heights after rendering.
34
+
35
+ ## Evaluation Findings
36
+
37
+ - Dense enterprise diagrams need abstraction rules; copying every icon and micro-label from a reference makes the output unreadable.
38
+ - Layer bands are the primary structure; connectors should be secondary and lower contrast.
39
+ - The prompt must declare which labels are essential versus optional because source diagrams contain many small badges.
40
+ - Future master rules should add a density budget for architecture recreations: max cards per layer, max badges per card, and required zoom/screenshot review.
41
+
@@ -0,0 +1,40 @@
1
+ flowchart LR
2
+ subgraph client["Client"]
3
+ direction TB
4
+ C1(["Client submits PO"])
5
+ end
6
+
7
+ subgraph sales["Sales"]
8
+ direction TB
9
+ S1["Sales reviews costing"]
10
+ end
11
+
12
+ subgraph contracts["Contracts"]
13
+ direction TB
14
+ K1["Contracts review"]
15
+ K2{"Contract okay?"}
16
+ K3["Set mobilization date"]
17
+ K4["Complete requirements"]
18
+ K5["Completion date delayed"]
19
+ end
20
+
21
+ subgraph construction["Construction"]
22
+ direction TB
23
+ B1["Construction starts"]
24
+ B2{"Terms accepted?"}
25
+ B3["Return files to contractor"]
26
+ end
27
+
28
+ subgraph handover["Handover"]
29
+ direction TB
30
+ H1["Construction finished"]
31
+ H2(["Project handed over"])
32
+ end
33
+
34
+ C1 --> S1 --> K1 --> K2
35
+ K2 -- Yes --> K3 --> B1 --> B2
36
+ K2 -- No --> K4
37
+ K4 --> K3
38
+ B2 -- Yes --> H1 --> H2
39
+ B2 -- No --> B3 --> K5
40
+
@@ -0,0 +1,70 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="1180" height="760" viewBox="0 0 1180 760" role="img" aria-labelledby="title desc">
2
+ <title id="title">Swimlane workflow experiment</title>
3
+ <desc id="desc">Five-lane process flow with department ownership, decisions, and handoff arrows.</desc>
4
+ <defs>
5
+ <marker id="arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto-start-reverse">
6
+ <path d="M 0 0 L 10 5 L 0 10 z" fill="#7384b7"/>
7
+ </marker>
8
+ <style>
9
+ .font{font-family:Arial,Helvetica,sans-serif}.h{fill:#fff;font-size:24px;font-weight:700}.icon{fill:#fff;font-size:32px;font-weight:700}.laneText{fill:#17213a;font-size:14px}.node{fill:#fff;stroke:#8ea0d4;stroke-width:2}.start{fill:#28208b;stroke:#8ea0d4;stroke-width:2}.process{fill:#6876e8;stroke:#8ea0d4;stroke-width:2}.process2{fill:#5b9df0;stroke:#8ea0d4;stroke-width:2}.end{fill:#0966d8;stroke:#7fb3ff;stroke-width:2}.txt{fill:#fff;font-size:14px}.small{fill:#2b3556;font-size:12px}.edge{fill:none;stroke:#9aabd8;stroke-width:2;marker-end:url(#arrow)}.lbl{fill:#8c9ccb;font-size:16px}
10
+ </style>
11
+ </defs>
12
+ <rect x="34" y="34" width="1112" height="650" fill="#eaf0fb"/>
13
+ <g class="font">
14
+ <g>
15
+ <rect x="34" y="34" width="222" height="126" fill="#28208b"/>
16
+ <rect x="256" y="34" width="222" height="126" fill="#3e45bd"/>
17
+ <rect x="478" y="34" width="222" height="126" fill="#787ee8"/>
18
+ <rect x="700" y="34" width="222" height="126" fill="#62a2ef"/>
19
+ <rect x="922" y="34" width="224" height="126" fill="#0966d8"/>
20
+ <path d="M256 34V684M478 34V684M700 34V684M922 34V684" stroke="#fff" stroke-width="3"/>
21
+ <text class="icon" x="120" y="83" text-anchor="middle">+</text><text class="h" x="145" y="124" text-anchor="middle">Client</text>
22
+ <text class="icon" x="367" y="83" text-anchor="middle">$</text><text class="h" x="367" y="124" text-anchor="middle">Sales</text>
23
+ <text class="icon" x="589" y="83" text-anchor="middle">#</text><text class="h" x="589" y="124" text-anchor="middle">Contracts</text>
24
+ <text class="icon" x="811" y="83" text-anchor="middle">*</text><text class="h" x="811" y="124" text-anchor="middle">Construction</text>
25
+ <text class="icon" x="1034" y="83" text-anchor="middle">✓</text><text class="h" x="1034" y="124" text-anchor="middle">Handover</text>
26
+ </g>
27
+ <g>
28
+ <rect class="start" x="72" y="184" width="142" height="68" rx="28"/>
29
+ <text class="txt" x="143" y="213" text-anchor="middle">Client</text><text class="txt" x="143" y="231" text-anchor="middle">submits PO</text>
30
+ <rect class="process" x="294" y="184" width="148" height="68"/>
31
+ <text class="txt" x="368" y="209" text-anchor="middle">Sales reviews</text><text class="txt" x="368" y="227" text-anchor="middle">costing</text>
32
+ <rect class="process" x="516" y="184" width="148" height="68"/>
33
+ <text class="txt" x="590" y="209" text-anchor="middle">Contracts</text><text class="txt" x="590" y="227" text-anchor="middle">review</text>
34
+ <path class="process" d="M590 288 L662 328 L590 368 L518 328 z"/>
35
+ <text class="txt" x="590" y="324" text-anchor="middle">Contract</text><text class="txt" x="590" y="342" text-anchor="middle">okay?</text>
36
+ <rect class="process" x="516" y="414" width="148" height="68"/>
37
+ <text class="txt" x="590" y="441" text-anchor="middle">Set mobilization</text><text class="txt" x="590" y="459" text-anchor="middle">date</text>
38
+ <rect class="process2" x="738" y="414" width="148" height="68"/>
39
+ <text class="txt" x="812" y="441" text-anchor="middle">Construction</text><text class="txt" x="812" y="459" text-anchor="middle">starts</text>
40
+ <path class="process2" d="M812 526 L884 566 L812 606 L740 566 z"/>
41
+ <text class="txt" x="812" y="562" text-anchor="middle">Terms</text><text class="txt" x="812" y="580" text-anchor="middle">accepted?</text>
42
+ <rect class="process2" x="738" y="636" width="148" height="68"/>
43
+ <text class="txt" x="812" y="663" text-anchor="middle">Return files to</text><text class="txt" x="812" y="681" text-anchor="middle">contractor</text>
44
+ <rect class="process" x="516" y="636" width="148" height="68"/>
45
+ <text class="txt" x="590" y="663" text-anchor="middle">Completion date</text><text class="txt" x="590" y="681" text-anchor="middle">delayed</text>
46
+ <rect class="process" x="516" y="526" width="148" height="68"/>
47
+ <text class="txt" x="590" y="553" text-anchor="middle">Complete</text><text class="txt" x="590" y="571" text-anchor="middle">requirements</text>
48
+ <rect class="process2" x="960" y="414" width="148" height="68"/>
49
+ <text class="txt" x="1034" y="441" text-anchor="middle">Construction</text><text class="txt" x="1034" y="459" text-anchor="middle">finished</text>
50
+ <rect class="end" x="960" y="540" width="148" height="68" rx="28"/>
51
+ <text class="txt" x="1034" y="567" text-anchor="middle">Project handed</text><text class="txt" x="1034" y="585" text-anchor="middle">over</text>
52
+ </g>
53
+ <path class="edge" d="M214 218H294"/>
54
+ <path class="edge" d="M442 218H516"/>
55
+ <path class="edge" d="M590 252V288"/>
56
+ <path class="edge" d="M590 368V414"/>
57
+ <text class="lbl" x="606" y="393">Yes</text>
58
+ <path class="edge" d="M518 328H494V560H516"/>
59
+ <text class="lbl" x="486" y="394">No</text>
60
+ <path class="edge" d="M664 448H738"/>
61
+ <path class="edge" d="M812 482V526"/>
62
+ <path class="edge" d="M884 566H922V670H886"/>
63
+ <text class="lbl" x="902" y="618">No</text>
64
+ <path class="edge" d="M740 566H664"/>
65
+ <path class="edge" d="M738 670H664"/>
66
+ <path class="edge" d="M886 448H960"/>
67
+ <path class="edge" d="M1034 482V540"/>
68
+ <text class="small" x="70" y="730" font-size="22" font-weight="700">Swimlane Activity Diagram</text>
69
+ </g>
70
+ </svg>