Skip to main content

Overview

The dex entry command provides subcommands for auditing entry runtime health, validating inventory, and linking entries to catalog records.

Subcommands

  • dex entry audit - Audit entry runtime and inventory
  • dex entry link - Link entry to catalog record

dex entry audit

Scans entries for runtime health, download tree integrity, and inventory coverage.

Usage

dex entry audit [flags]

Flags

--slug
string
Audit a specific entry by slug
--all
boolean
Audit all entries (default behavior)
--inventory-only
boolean
Run inventory check only, skip runtime validationUseful for verifying asset coverage without full audit
--entries-dir
string
default:"./entries"
Path to entries directory
--include-legacy
boolean
Include legacy entries in audit (normally skipped)
--catalog-entries-file
string
default:"data/catalog.entries.json"
Path to catalog entries file
--catalog-file
string
default:"data/catalog.editorial.json"
Path to catalog editorial file
--assets-file
string
default:"data/protected.assets.json"
Path to protected assets file

What Entry Audit Checks

Runtime Validation

  • Entry schema compliance
  • Sidebar config validity
  • Manifest structure
  • Lookup token format
  • Recording index references
  • Video URL/embed validity

Inventory Validation

  • Download tree coverage model
  • Protected asset mappings
  • Bucket file availability
  • Recording index PDF/bundle refs
  • Asset token correlation

Critical Issues

  • Invalid lookup tokens
  • Missing recording index references
  • Download tree mismatches
  • Unresolved token mappings

Modes

Interactive Mode (TTY)

Displays interactive audit screen:
  • List of inventory rows
  • Download tree visualization
  • Coverage model for selected entry
  • Real-time filtering
  • Audit rerun capability
Keybindings:
  • Up/Down - Select inventory row
  • r - Rerun audit
  • Esc - Back to dashboard
  • Type to filter slugs

Non-Interactive Mode

Prints audit report to stdout:
  • Per-entry PASS/FAIL status
  • Inventory summary
  • Error details
  • Exits with non-zero code on failures

Output Example

Single Entry Audit

$ dex entry audit --slug tim-feeney

 tim-feeney
  Runtime: PASS
  Inventory: 4/4 assets mapped
  Download tree: complete
  Recording index: PDF + bundle refs valid

Failed Audit

$ dex entry audit --slug john-cage

 john-cage
  Runtime: FAIL
  Error: invalid token format in lookup number
  Missing recording index PDF reference
  Download tree: 2 critical issues

Inventory-Only Check

$ dex entry audit --all --inventory-only

Inventory Report:
  Total entries: 42
  Active lookups: 38
  Mapped assets: 152/152
  Missing coverage: 0

Examples

Audit Single Entry

dex entry audit --slug tim-feeney

Audit All Entries

dex entry audit --all

Inventory Coverage Check

dex entry audit --all --inventory-only

Interactive Audit

dex entry audit

dex entry link

Links an entry to a catalog record with metadata.

Usage

dex entry link --entry <slug> [flags]

Required Flags

--entry
string
required
Entry slug to link

Catalog Identifier Flags

--catalog
string
Catalog entry identifier (ID, href, or slug)

Status Flag

--status
string
Catalog entry statusOptions: draft, active, archived

Metadata Flags

--lookup
string
Lookup number (e.g., “LOOKUP-0042”)
--season
string
Season identifier (e.g., “S2”, “S3”)
--performer
string
Performer name
--instrument
string
Instrument name
--title
string
Entry title override

File Path Flags

--catalog-file
string
default:"data/catalog.editorial.json"
Path to catalog file
--catalog-entries-file
string
default:"data/catalog.entries.json"
Path to catalog entries file

Control Flags

--dry-run
boolean
Preview link operation without writing changes

Examples

Link Entry to Catalog

dex entry link --entry tim-feeney --catalog LOOKUP-0042 --status active
dex entry link \
  --entry tim-feeney \
  --lookup LOOKUP-0042 \
  --season S2 \
  --performer "Tim Feeney" \
  --instrument "Percussion" \
  --status active

Dry Run

dex entry link --entry tim-feeney --catalog LOOKUP-0042 --dry-run

Canonical Workflows

Workflow 1: Create and Validate New Entry

# 1. Create entry
dex init

# 2. Run audit
dex entry audit --slug <slug>

# 3. Check inventory
dex entry audit --slug <slug> --inventory-only
Stop Conditions:
  • Any FAIL in runtime audit
  • Download tree critical issues
  • Unresolved token/lookup mismatches

Workflow 2: Batch Inventory Validation

# Check all entries for asset coverage
dex entry audit --all --inventory-only

Workflow 3: Link and Publish Entry

# 1. Link entry to catalog
dex entry link --entry <slug> --catalog <id> --status draft

# 2. Validate
dex entry audit --slug <slug>

# 3. Update status
dex catalog manifest edit --entry <slug> --status active

dex init

Create a new entry

dex update

Edit an existing entry

dex doctor

Scan entries for health issues

dex catalog

Catalog operations

Notes

  • Entry audit is included in preflight checks before deployment
  • Interactive audit mode requires a TTY
  • Inventory checks validate protected asset coverage
  • Runtime audit validates entry schema and references
  • The audit command supports both single-entry and batch operations
  • Use --inventory-only for faster coverage validation without full runtime checks

Build docs developers (and LLMs) love