DriftSys Schema Contracts

Validation schemas and agent contracts for DriftSys projects. Each schema is published to GitHub Pages and available as HTML for humans and raw markdown for agents.

Discovery Protocol

  1. Identify the schema domain (project or markspec).
  2. Navigate to the domain contract page.
  3. Use the schema index to find the matching v1.json.
  4. Validate payload against the schema before processing.
  5. Parse required fields first, optional fields second.

Contracts

ContractDescription
project/Minimal flat project manifest
markspec/MarkSpec site API artifacts (12 schemas)

Schema Index

ContractJSON SchemaDescription
projectv1Project manifest
markspec/lockv1Frozen sidecar metadata (.markspec.lock)
markspec/link-targetv1Shared resolved-link target object
markspec/entryv1Typed entry detail payload
markspec/componentv1BOM component detail payload
markspec/referencev1Reference entry payload
markspec/indexv1Entry listing payload
markspec/bomv1BOM index (component summaries)
markspec/searchv1Search records for client indexing
markspec/traceability-matrixv1Full traceability matrix rows
markspec/traceability-graphv1Graph nodes and edges
markspec/coveragev1Coverage summary and gaps
markspec/diagnosticsv1Validation and build diagnostics

Usage

Reference a schema from your project file to get autocompletion and validation in your editor.

YAML

Uses the $schema key — supported by the Red Hat YAML extension (VS Code) and IntelliJ.

# project.yaml
$schema: https://driftsys.github.io/schemas/project/v1.json

name: com.company.dash
description: Cross-platform SDK for the Dash service
category: library
version: 1.4.2

TOML

Uses the #:schema comment directive — supported by taplo and the Even Better TOML extension (VS Code).

# project.toml
#:schema https://driftsys.github.io/schemas/project/v1.json

name = "com.company.dash"
description = "Cross-platform SDK for the Dash service"
category = "library"
version = "1.4.2"

JSON

Uses the $schema property — supported natively by VS Code and IntelliJ.

{
  "$schema": "https://driftsys.github.io/schemas/project/v1.json",
  "name": "com.company.dash",
  "description": "Cross-platform SDK for the Dash service",
  "category": "library",
  "version": "1.4.2"
}

Failure Modes

Version Policy

Post-clone setup

Run ./bootstrap after git clone or git worktree add.