Runs

Validate Workflow Manifest

Changed on

Validates runtime readiness for a workflow manifest without creating a run. 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. The checks then probe the sandbox, repository access and GitHub credentials.

post/api/v1/preflight

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

Preflight report

okboolean required

Whether preflight passed using the CLI-compatible success rule.

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 /