Expand lab seed tiers, OpenAPI PARAMS, and console DATA/Params UX.
This commit is contained in:
@@ -17,6 +17,8 @@ def _section_rest(summary: dict[str, Any]) -> str:
|
||||
majors = rest.get("majors") or []
|
||||
by_verb = rest.get("by_verb") or {}
|
||||
failures = rest.get("failures") or []
|
||||
coverage = rest.get("coverage_line") or f"{(rest.get('probed') or 0) - (rest.get('critical') or 0)}/{rest.get('declared') or rest.get('total') or 0}"
|
||||
critical = rest.get("critical", rest.get("failed", 0))
|
||||
|
||||
major_rows = []
|
||||
for m in majors:
|
||||
@@ -26,8 +28,10 @@ def _section_rest(summary: dict[str, Any]) -> str:
|
||||
"<tr>"
|
||||
f"<td>{_esc(m.get('major'))}</td>"
|
||||
f"<td>{_esc(m.get('version'))}</td>"
|
||||
f"<td>{_esc(m.get('declared'))}</td>"
|
||||
f"<td>{_esc(m.get('probed'))}</td>"
|
||||
f"<td>{_esc(m.get('failed'))}</td>"
|
||||
f"<td>{_esc(m.get('coverage_line') or '—')}</td>"
|
||||
f"<td>{_esc(m.get('critical', m.get('failed')))}</td>"
|
||||
f"<td>{_esc(buckets.get('success_2xx', 0))}</td>"
|
||||
f"<td>{_esc(buckets.get('client_4xx', 0))}</td>"
|
||||
f"<td>{_esc(buckets.get('server_5xx', 0))}</td>"
|
||||
@@ -50,22 +54,25 @@ def _section_rest(summary: dict[str, Any]) -> str:
|
||||
)
|
||||
|
||||
return f"""
|
||||
<h2>REST matrix</h2>
|
||||
<p class="meta">total={_esc(rest.get("total"))} · failed={_esc(rest.get("failed"))}
|
||||
· verbs: {verb_bits or "—"}</p>
|
||||
<h2>REST HTTP contract matrix (Layer A)</h2>
|
||||
<p class="meta"><strong>coverage {_esc(coverage)}</strong>
|
||||
· critical={_esc(critical)}
|
||||
· probed={_esc(rest.get("probed") or rest.get("total"))}
|
||||
· declared={_esc(rest.get("declared"))}
|
||||
· verbs: {verb_bits or "—"}
|
||||
<br/>100% = HTTP matrix (IMPLEMENTED × majors + HEAD), not pulumi-vsphere resource count.</p>
|
||||
<table>
|
||||
<thead><tr><th>Major</th><th>Version</th><th>Probed</th><th>Failed</th>
|
||||
<th>2xx</th><th>4xx</th><th>5xx</th><th>deep/stub</th></tr></thead>
|
||||
<tbody>{"".join(major_rows) or '<tr><td colspan="8">—</td></tr>'}</tbody>
|
||||
<thead><tr><th>Major</th><th>Version</th><th>Declared</th><th>Probed</th><th>Coverage</th>
|
||||
<th>Critical</th><th>2xx</th><th>4xx</th><th>5xx</th><th>deep/stub</th></tr></thead>
|
||||
<tbody>{"".join(major_rows) or '<tr><td colspan="10">—</td></tr>'}</tbody>
|
||||
</table>
|
||||
<h3>REST failures (sample)</h3>
|
||||
<h3>REST critical failures (sample)</h3>
|
||||
<table>
|
||||
<thead><tr><th>Major</th><th>Verb</th><th>Path</th><th>Kind</th><th>Status</th><th>Detail</th></tr></thead>
|
||||
<tbody>{"".join(fail_rows) or '<tr><td colspan="6">none</td></tr>'}</tbody>
|
||||
</table>
|
||||
"""
|
||||
|
||||
|
||||
def _section_crud(summary: dict[str, Any]) -> str:
|
||||
crud = summary.get("crud") or {}
|
||||
flows = crud.get("flows") or []
|
||||
|
||||
Reference in New Issue
Block a user