feat(docs): add management summary link in evaluation documents

- include link to one-page executive summary in README
- update dashboard section in evaluation HTML to reference summary
- revise report metadata to reflect additional CSV tables generated
This commit is contained in:
administrator
2026-07-13 00:19:02 -04:00
parent 478d4f3201
commit 6d156f98c4
8 changed files with 538 additions and 5 deletions

View File

@@ -3,8 +3,9 @@
Aggregates the measured matrix (task 09), the projections (task 10) and the
process diagrams (task 02) into the final decision document. Writes 14 PNG
charts (150 dpi) under ./out/report/charts/ with the exact names fixed in
README.md, five CSV tables under ./out/report/tables/, and
./out/report/REPORT.md.
README.md, seven CSV tables under ./out/report/tables/ (t6/t7 carry every
projection and hardware row for all three scales - they are the committed
proof artifacts the executive summary links to), and ./out/report/REPORT.md.
Chart readability contract (owner feedback 2026-07-11): linear scales with
actual units everywhere (panels instead of log axes when magnitudes clash),
@@ -636,6 +637,22 @@ def main() -> int:
money(sizing[(fmt, REPORT_SCALE_GB)]["est_cost_usd"])] for fmt in FORMATS],
)
tables["t6_projected_all_scales"] = (
["format", "query", "scale_gb", "projected_wall_s", "projected_wall", "flag"],
[[FMT_NAMES[fmt], f"q{qn}", s, proj[(fmt, qn, s)][0], human_time(proj[(fmt, qn, s)][0]), proj[(fmt, qn, s)][1]]
for fmt in FORMATS for qn in QUERY_NUMBERS for s in SCALES_GB],
)
tables["t7_hardware_all_scales"] = (
["format", "scale_gb", "configuration", "disk_tb", "ram_gb", "cores", "nodes",
"ram_modules", "nvme_drives", "base_usd", "ram_usd", "disk_usd", "extra_nodes_usd", "est_cost_usd"],
[[FMT_NAMES[fmt], s, config_string(sizing[(fmt, s)], prices),
sizing[(fmt, s)]["disk_tb"], sizing[(fmt, s)]["ram_gb"],
sizing[(fmt, s)]["cores"], sizing[(fmt, s)]["nodes"],
sizing[(fmt, s)]["ram_modules"], sizing[(fmt, s)]["nvme_drives"],
round(sizing[(fmt, s)]["base_usd"]), round(sizing[(fmt, s)]["ram_usd"]),
round(sizing[(fmt, s)]["disk_usd"]), round(sizing[(fmt, s)]["extra_nodes_usd"]),
round(sizing[(fmt, s)]["est_cost_usd"])] for fmt in FORMATS for s in SCALES_GB],
)
scoreboards = build_scoreboards(medians, proj, sizes, sizing)
tables["t5_weighted_scores"] = (
["scale", "format", "search_pts", "ram_pts", "disk_pts", "total"],