Define evidence-first table schemas for a survey: what each table must answer, row unit, columns, and which evidence-pack fields are required to fill it. **Trigger**: table schema, schema-first tables, table design, 表格 schema, 先 schema 后填充. **Use when**: you want survey tables that are verifiable and fillable before LaTeX (typically Stage C4, after evidence packs exist). **Skip if**: `outline/table_schema.md` already exists and is refined (covers both index tables and Appendix tables; no placeholders; evidence mapping is explicit). **Network**: none. **Guardrail**: no invented facts; schema must be checkable and map each column to an evidence source.
Tables are not decorations; they are compression.
A common failure mode in this pipeline: the first table that gets generated looks like an internal index. So we separate tables into two layers:
outline/tables_index.md (internal)outline/tables_appendix.md (reader-facing)This skill designs both layers before filling.
Treat this as a design task, not running a script.
If a column cannot be filled from existing evidence packs without guessing, the schema is wrong.
Mission: choose tables that answer reader questions, not pipeline questions.
Do:
Avoid:
Mission: refuse schemas that require invented facts.
Do:
Avoid:
GOAL.md to keep the reader question and scope stable.outline/outline.yml to align table row units with the paper structure.outline/subsection_briefs.jsonl to ground table dimensions/axes in the approved structure.outline/evidence_drafts.jsonl to ensure every planned column is fillable without guessing.outline/outline.ymloutline/subsection_briefs.jsonloutline/evidence_drafts.jsonlGOAL.mdoutline/table_schema.mdtable-filler -> outline/tables_index.md)I1) Subsection map (axes + representative works)
subsection_briefs.axes + citations from evidence_draftsI2) Concrete anchors (benchmarks / numbers / caveats)
anchor_sheet.anchorsappendix-table-writer -> outline/tables_appendix.md)A1) Method/architecture map (representative works)
evidence_drafts (comparisons + definitions) + anchor_sheetA2) Evaluation protocol / benchmark map
anchor_sheet + evidence_drafts.evaluation_protocolGood (publishable question + fillable columns):
evidence_drafts.evaluation_protocol + anchor_sheetBad (internal/pipeline voice):
If you want internal diagnostics, put them in an audit report, not in reader-facing tables.
python .codex/skills/table-schema/scripts/run.py --helppython .codex/skills/table-schema/scripts/run.py --workspace workspaces/<ws>--workspace <workspace_dir> (required)--unit-id <id> (optional; used only for runner bookkeeping)--inputs <outline;briefs;packs;goal> (optional; override inputs)--outputs <relpath> (optional; defaults to outline/table_schema.md)--checkpoint <C#> (optional; ignored by the bootstrapper)Bootstrap a two-layer schema (index + Appendix):
python .codex/skills/table-schema/scripts/run.py --workspace workspaces/<ws>
Write to a custom schema path (rare):
python .codex/skills/table-schema/scripts/run.py --workspace workspaces/<ws> --outputs outline/table_schema.md
Notes: