Runs

Validate Workflow Manifest

Changed on

Validates a workflow manifest without runtime readiness checks. The workflow is checked as a run would be admitted: Petri compiles the bundle with the server's settings, run variables and model catalog, and every diagnostic carries Petri's code as its rule (attractor.no_start, attractor.model.unknown, unsupported.template.unbound_input), with Fabro's own fabro.model.no_ready_provider when a model node has no provider ready to run it. workflow describes the admitted graph, or the DOT as written when Petri refused the workflow.

post/api/v1/validate

Request

  • The document declares no server URL.
  • Auth
    • HTTP bearer
    • or API key in cookie __fabro_session

Request body

versioninteger required

Manifest schema version.

parent_idstring nullable

Optional orchestration parent run ID. Fork and rewind lineage use separate fields and should not set this value.

titlestring nullable

Optional explicit run title. The server trims leading/trailing whitespace, rejects blank values, rejects control characters and newline characters, and requires at most 100 characters.

cwdstring required

CLI working directory at invocation time.

workflowsobject required

Example request

{
  "version": 1,
  "parent_id": "01HV6D7S5YF4Z4B2M7K4N0Q6T8",
  "title": "Add rate limiting to auth endpoints",
  "cwd": "/tmp/project",
  "git": {
    "origin_url": "https://github.com/acme/my-app.git",
    "branch": "feature/foo",
    "sha": "abc123def"
  },
  "target": {
    "path": ".fabro/workflows/smoke/workflow.fabro"
  }
}

Response

Validation result

okboolean required

Whether validation passed with no error diagnostics.

Changes

    • info

      added the optional property // to the response with the status

    • warning

      removed the request property /

    • warning

      removed the request property /

    • warning

      removed the request property

    • warning

      removed the request property /