# Default Master Deliverables List spec, served by zddc-server when no
# operator-supplied table.yaml exists at archive/<party>/mdl/.
#
# Columns mirror the tracking-number component model documented at
# zddc.varasys.io/reference.html#tracking-numbers — every column from
# `originator` through `suffix` is one slot of a deliverable's
# permanent identifier. Optional components ([phase], [area], [suffix])
# render in the table even when blank so the layout stays consistent
# across rows; users on schemas that don't use them can hide the
# columns by overriding this spec (see customization note below).
#
# Beyond the tracking-number fields, the table tracks the deliverable's
# title, planned revision and date, current status, owner, and notes —
# the standard MDL columns operators expect for planning and status
# tracking.
#
# To customize: drop your own table.yaml + form.yaml into the same
# directory (archive/<party>/mdl/). The whole directory IS the table —
# spec, row-edit form, and rows are siblings. Override examples:
#   - Hide a column: omit it from the columns: list here.
#   - Rename a column header: change `title:`.
#   - Add a custom column: append a {field, title} entry AND add a
#     matching property in form.yaml's schema.properties so the row
#     form lets users fill it in.
#   - Tighten column widths: set `width:` (CSS length, e.g. "8em").
#   - Pre-filter rows on load: defaults.filter[<field>] = "<text>".
#
# The whole directory is self-contained — copying mdl/ to a new
# project takes the spec, the form, and every row YAML with it.

title: Master Deliverables List
description: Planned and actual deliverables for this party. Columns mirror the tracking-number components plus standard MDL metadata.

columns:
  # --- Tracking-number components (in the order they appear in the
  # canonical filename: originator-[phase-]project-[area-]discipline-
  # type-sequence[-suffix]). Optional components are kept narrow so
  # they don't clutter the layout when unused.
  - field: originator
    title: Originator
    width: 8em
  - field: phase
    title: Phase
    width: 5em
  - field: project
    title: Project
    width: 8em
  - field: area
    title: Area
    width: 5em
  - field: discipline
    title: Disc.
    width: 5em
  - field: type
    title: Type
    width: 6em
  - field: sequence
    title: Seq.
    width: 5em
  - field: suffix
    title: Suffix
    width: 5em

  # --- Deliverable metadata.
  - field: title
    title: Deliverable
  - field: plannedRevision
    title: Rev.
    width: 5em
  - field: plannedDate
    title: Planned
    format: date
    width: 8em
  - field: status
    title: Status
    width: 6em
    enum: [DFT, IFR, IFA, IFC, AFC, AB]
  - field: owner
    title: Owner
    width: 12em

defaults:
  sort:
    - { field: plannedDate, dir: asc }
