diff --git a/app/pipeline/audit/page.tsx b/app/pipeline/audit/page.tsx
index 00332be..0cfc089 100644
--- a/app/pipeline/audit/page.tsx
+++ b/app/pipeline/audit/page.tsx
@@ -140,9 +140,9 @@ export default function AuditOverviewPage() {
Check
Description
-
Pass
-
Warn
-
Fail
+
Pass
+
Warn
+
Fail
@@ -152,9 +152,9 @@ export default function AuditOverviewPage() {
{sa.description}
-
{sa.pass}
-
{sa.warn}
-
{sa.fail}
+
{sa.pass}
+
{sa.warn}
+
{sa.fail}
))}
diff --git a/app/pipeline/schema/page.tsx b/app/pipeline/schema/page.tsx
index ae98a35..09962aa 100644
--- a/app/pipeline/schema/page.tsx
+++ b/app/pipeline/schema/page.tsx
@@ -63,26 +63,43 @@ type SchemaRow = {
status: string;
};
+// Shared column widths for both the Base schemas and Overlays tables so they
+// align column-by-column regardless of the names/paths they happen to contain.
+// Combined with `table-fixed` on the
, these widths are authoritative.
+const SCHEMA_COL_WIDTHS = [
+ "22%", // Name
+ "16%", // Current version
+ "10%", // Versions
+ "18%", // Last edited
+ "12%", // Status
+ "22%", // Path
+] as const;
+
function Section({ title, rows }: { title: string; rows: SchemaRow[] }) {
return (
{title}
-
+
+
+ {SCHEMA_COL_WIDTHS.map((w, i) => (
+
+ ))}
+
Name
-
Current version
-
Versions
-
Last edited
-
Status
-
Path
+
Current version
+
Versions
+
Last edited
+
Status
+
Path
{rows.map((r) => (
-
+
-
{r.current_version}
-
{r.version_count}
-
+
{r.current_version}
+
{r.version_count}
+
{r.last_edited_at
? new Date(r.last_edited_at).toISOString().slice(0, 16).replace("T", " ")
: "—"}