JJijibora Docs
docs.jijibora.online
On this page (28 sections)

Sovereign Agent BFF — Configuration Fragments UI Soft — OpenAPI 0.1.0-soft

<!-- GENERATED by scripts/render-platform-map-api-docs.mjs — do not hand-edit; edit apps/agent-bff/openapi/<spec>.json and re-run. --> Scope: The published reference for Sovereign Agent BFF — Configuration Fragments UI Soft. 21 paths — the measured spec-vs-implementation coverage lives in the complete API inventory. Status: rendered 2026-11-09 from the OpenAPI source for Sovereign Agent BFF — Configuration Fragments UI Soft — regenerate with node scripts/render-platform-map-api-docs.mjs. See also: the OpenAPI spec index.

Servers

URLNotes
http://127.0.0.1:3030Local agent-bff

Tags

TagSummary
cfg-catalogBases / integrations Soft catalogs
cfg-fragmentsFragment GET + propose Soft
cfg-cellsCell lifecycle Soft desks
cfg-sessionEffective session + mission readiness

Paths — 21 paths / 22 operations

MethodPathOperation IDSummary
GET/v1/configuration-fragments/catalog/basescfgListCatalogBasesSoftList base journeys Soft (filter→sort→page)
GET/v1/configuration-fragments/catalog/integrationscfgListCatalogIntegrationsSoftList integration facets Soft (cell_id/jurisdiction/compatible_with)
POST/v1/configuration-fragments/studio/hydratecfgStudioHydrateSoftStudio hydrate Soft — invent-refuse LIVE play (CFG-MC-114)
POST/v1/configuration-fragments/nodes/bootstrapcfgNodesBootstrapSoftNode bootstrap Soft dry-run (CFG-MC-121) — invent-refuse DO/OpenBao LIVE
GET/v1/configuration-fragments/session/effectivecfgSessionEffectiveSoftEffective CFG permissions Soft (not LIVE APF invent)
GET/v1/configuration-fragments/fragments/{fragmentId}cfgGetFragmentSoftFragment Soft GET (secrets redacted; access.yaml Soft)
GET/v1/configuration-fragments/fragments/{fragmentId}/presentationcfgGetFragmentPresentationSoftPresentation Soft (CFG-MC-110/154)
GET/v1/configuration-fragments/fragments/{fragmentId}/metacfgGetFragmentMetaSoftMeta Soft aggregate with override path_class fences
POST/v1/configuration-fragments/documents/materializecfgDocumentMaterializeSoftDocument HTML materialize Soft (CFG-MC-112)
POST/v1/configuration-fragments/pins/proposecfgPinsProposeSoftPath-class aware pin propose Soft (CFG-MC-157)
POST/v1/configuration-fragments/pins/{digest}/applycfgPinsApplySoftPin apply Soft dry-run; invent-refuse LIVE PoCE (CFG-MC-71/81)
POST/v1/configuration-fragments/git/merge-propose-pincfgMergeProposePinSoftMerge→pin.propose Soft saga; never auto-apply (CFG-MC-72)
POST/v1/configuration-fragments/dual-readcfgDualReadSoftScript seed vs pin seed dual-read Soft (CFG-MC-91)
POST/v1/configuration-fragments/journal/anchorcfgJournalAnchorSoftpoce.journal Soft invent-refuse journal_anchored (CFG-MC-83)
POST/v1/configuration-fragments/composecfgComposeSoftCompose base + facets Soft preview
GET/v1/configuration-fragments/cellscfgListCellsSoftList cells Soft paged
POST/v1/configuration-fragments/cellscfgProvisionCellSoftProvision cell Soft dry-run
POST/v1/configuration-fragments/cells/{cellId}/features:preview-removecfgPreviewRemoveFeatureSoftTeardown preview Soft (CFG-MC-135)
POST/v1/configuration-fragments/cells/{cellId}/destroycfgDestroyCellSoftDestroy Soft — requires confirm_destroy === cellId
GET/v1/configuration-fragments/ops/mission-readinesscfgMissionReadinessSoftHonest Soft checklist — never invents ready
GET/v1/configuration-fragments/entitlements/hubcfgEntitlementHubSoftCFG-ENT-15 Soft entitlement hub — Git fragment ids; meters null
POST/v1/configuration-fragments/entitlements/soft/{op}cfgEntitlementRuntimeSoftCFG-ENT Soft runtime desks (adapter, billing_ref, inheritance, APF, DSS-43, journal)

Operations

GET /v1/configuration-fragments/catalog/bases

Summary: List base journeys Soft (filter→sort→page)

Tags: cfg-catalog Operation ID: cfgListCatalogBasesSoft

Parameters:

NameInRequiredTypeNotes
limitquerynoint
cursorquerynostring
sortquerynostring
qquerynostring

Responses:

StatusMeaning
200Soft list envelope with allowed_actions / ui_hints
403CFG-E015 missing read

GET /v1/configuration-fragments/catalog/integrations

Summary: List integration facets Soft (cell_id/jurisdiction/compatible_with)

Tags: cfg-catalog Operation ID: cfgListCatalogIntegrationsSoft

Parameters:

NameInRequiredTypeNotes
cell_idquerynostring
jurisdictionquerynostring
compatible_withquerynostringbase journey id Soft compose filter

Responses:

StatusMeaning
200Soft list envelope

POST /v1/configuration-fragments/studio/hydrate

Summary: Studio hydrate Soft — invent-refuse LIVE play (CFG-MC-114)

Tags: cfg-session Operation ID: cfgStudioHydrateSoft Responses:

StatusMeaning
200runtime_blank instance Soft
422LIVE play / ingest invent-refuse

POST /v1/configuration-fragments/nodes/bootstrap

Summary: Node bootstrap Soft dry-run (CFG-MC-121) — invent-refuse DO/OpenBao LIVE

Tags: cfg-cells Operation ID: cfgNodesBootstrapSoft Responses:

StatusMeaning
200Soft dry-run
422LIVE invent-refuse

GET /v1/configuration-fragments/session/effective

Summary: Effective CFG permissions Soft (not LIVE APF invent)

Tags: cfg-session Operation ID: cfgSessionEffectiveSoft Responses:

StatusMeaning
200allowed_actions + ui_hints

GET /v1/configuration-fragments/fragments/{fragmentId}

Summary: Fragment Soft GET (secrets redacted; access.yaml Soft)

Tags: cfg-fragments Operation ID: cfgGetFragmentSoft

Parameters:

NameInRequiredTypeNotes
fragmentIdpathyesstring

Responses:

StatusMeaning
200Fragment summary Soft
404CFG-E018

GET /v1/configuration-fragments/fragments/{fragmentId}/presentation

Summary: Presentation Soft (CFG-MC-110/154)

Tags: cfg-fragments Operation ID: cfgGetFragmentPresentationSoft

Parameters:

NameInRequiredTypeNotes
fragmentIdpathyesstring

Responses:

StatusMeaning
200descriptions + diagrams; requires_law_quorum false

GET /v1/configuration-fragments/fragments/{fragmentId}/meta

Summary: Meta Soft aggregate with override path_class fences

Tags: cfg-fragments Operation ID: cfgGetFragmentMetaSoft

Parameters:

NameInRequiredTypeNotes
fragmentIdpathyesstring

Responses:

StatusMeaning
200allowed_actions + override_paths

POST /v1/configuration-fragments/documents/materialize

Summary: Document HTML materialize Soft (CFG-MC-112)

Tags: cfg-fragments Operation ID: cfgDocumentMaterializeSoft Responses:

StatusMeaning
200Allow-listed HTML Soft
400Allow-list / locked span fail
422LIVE send invent-refuse

POST /v1/configuration-fragments/pins/propose

Summary: Path-class aware pin propose Soft (CFG-MC-157)

Tags: cfg-fragments Operation ID: cfgPinsProposeSoft Request body:

Content type: application/json

FieldTypeNotes
fragment_idstring
changesobject[]
changes.pathstring
changes.claimed_path_classstring
livebooleanIf true → invent_refuse CFG-E014

Responses:

StatusMeaning
200Soft propose accepted; pin not applied
400CFG-E007 / CFG-E026 path fence
403CFG-E015
422CFG-E014 LIVE invent-refuse

POST /v1/configuration-fragments/pins/{digest}/apply

Summary: Pin apply Soft dry-run; invent-refuse LIVE PoCE (CFG-MC-71/81)

Tags: cfg-fragments Operation ID: cfgPinsApplySoft

Parameters:

NameInRequiredTypeNotes
digestpathyesstring

Responses:

StatusMeaning
200Soft dry-run; applied=false
422LIVE PoCE invent-refuse

POST /v1/configuration-fragments/git/merge-propose-pin

Summary: Merge→pin.propose Soft saga; never auto-apply (CFG-MC-72)

Tags: cfg-fragments Operation ID: cfgMergeProposePinSoft Responses:

StatusMeaning
200Soft propose shape; auto_apply=false
422auto_apply invent-refuse

POST /v1/configuration-fragments/dual-read

Summary: Script seed vs pin seed dual-read Soft (CFG-MC-91)

Tags: cfg-fragments Operation ID: cfgDualReadSoft Responses:

StatusMeaning
200pin_is_sole_sot always false on Soft

POST /v1/configuration-fragments/journal/anchor

Summary: poce.journal Soft invent-refuse journal_anchored (CFG-MC-83)

Tags: cfg-fragments Operation ID: cfgJournalAnchorSoft Responses:

StatusMeaning
200journal_anchored=false Soft dry-run
400cfg.journal forbidden
422LIVE Fabric invent-refuse

POST /v1/configuration-fragments/compose

Summary: Compose base + facets Soft preview

Tags: cfg-catalog Operation ID: cfgComposeSoft Responses:

StatusMeaning
200Compose digest Soft

GET /v1/configuration-fragments/cells

Summary: List cells Soft paged

Tags: cfg-cells Operation ID: cfgListCellsSoft Responses:

StatusMeaning
200Empty Soft list until provision pin

POST /v1/configuration-fragments/cells

Summary: Provision cell Soft dry-run

Tags: cfg-cells Operation ID: cfgProvisionCellSoft Responses:

StatusMeaning
200Soft dry-run
422LIVE invent-refuse

POST /v1/configuration-fragments/cells/{cellId}/features:preview-remove

Summary: Teardown preview Soft (CFG-MC-135)

Tags: cfg-cells Operation ID: cfgPreviewRemoveFeatureSoft

Parameters:

NameInRequiredTypeNotes
cellIdpathyesstring

Responses:

StatusMeaning
200teardown_hooks listed; LIVE not executed

POST /v1/configuration-fragments/cells/{cellId}/destroy

Summary: Destroy Soft — requires confirm_destroy === cellId

Tags: cfg-cells Operation ID: cfgDestroyCellSoft

Parameters:

NameInRequiredTypeNotes
cellIdpathyesstring
X-Confirm-DestroyheadernostringMust equal cellId

Responses:

StatusMeaning
200Soft dry-run
400Missing confirm

GET /v1/configuration-fragments/ops/mission-readiness

Summary: Honest Soft checklist — never invents ready

Tags: cfg-session Operation ID: cfgMissionReadinessSoft Responses:

StatusMeaning
200mission_critical_ready always false Soft

GET /v1/configuration-fragments/entitlements/hub

Summary: CFG-ENT-15 Soft entitlement hub — Git fragment ids; meters null

Tags: cfg-catalog Operation ID: cfgEntitlementHubSoft Responses:

StatusMeaning
200packages from disk; meters/health_percent always null; entitlement_met false
422LIVE / invented meters invent-refuse

POST /v1/configuration-fragments/entitlements/soft/{op}

Summary: CFG-ENT Soft runtime desks (adapter, billing_ref, inheritance, APF, DSS-43, journal)

Tags: cfg-catalog Operation ID: cfgEntitlementRuntimeSoft

Parameters:

NameInRequiredTypeNotes
oppathyesstring enum: adapter.resolve, billing_ref.normalize, deploy.compose, inheritance.resolve, feature.remove.plan, apf.check, path_spec.lint, journal.plan,…

Responses:

StatusMeaning
200Soft dry-run plan
422LIVE invent-refuse

Full specification — verbatim source of truth

{
  "openapi": "3.1.0",
  "info": {
    "title": "Sovereign Agent BFF — Configuration Fragments UI Soft",
    "version": "0.1.0-soft",
    "description": "CFG-MC-158 Soft OpenAPI stub for UI list/session/compose/cells/pins. Soft Soft≠LIVE: invent_refuse_live on LIVE cloud/PoCE apply. Plan: docs/plans/configuration-fragments/07_MISSION_CRITICAL_UPLIFT_PLAN.md §18."
  },
  "servers": [
    {
      "url": "http://127.0.0.1:3030",
      "description": "Local agent-bff"
    }
  ],
  "tags": [
    {
      "name": "cfg-catalog",
      "description": "Bases / integrations Soft catalogs"
    },
    {
      "name": "cfg-fragments",
      "description": "Fragment GET + propose Soft"
    },
    {
      "name": "cfg-cells",
      "description": "Cell lifecycle Soft desks"
    },
    {
      "name": "cfg-session",
      "description": "Effective session + mission readiness"
    }
  ],
  "paths": {
    "/v1/configuration-fragments/catalog/bases": {
      "get": {
        "tags": [
          "cfg-catalog"
        ],
        "summary": "List base journeys Soft (filter→sort→page)",
        "operationId": "cfgListCatalogBasesSoft",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "fragment_id:asc"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 2
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Soft list envelope with allowed_actions / ui_hints"
          },
          "403": {
            "description": "CFG-E015 missing read"
          }
        }
      }
    },
    "/v1/configuration-fragments/catalog/integrations": {
      "get": {
        "tags": [
          "cfg-catalog"
        ],
        "summary": "List integration facets Soft (cell_id/jurisdiction/compatible_with)",
        "operationId": "cfgListCatalogIntegrationsSoft",
        "parameters": [
          {
            "name": "cell_id",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "jurisdiction",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "compatible_with",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "base journey id Soft compose filter"
          }
        ],
        "responses": {
          "200": {
            "description": "Soft list envelope"
          }
        }
      }
    },
    "/v1/configuration-fragments/studio/hydrate": {
      "post": {
        "tags": [
          "cfg-session"
        ],
        "summary": "Studio hydrate Soft — invent-refuse LIVE play (CFG-MC-114)",
        "operationId": "cfgStudioHydrateSoft",
        "responses": {
          "200": {
            "description": "runtime_blank instance Soft"
          },
          "422": {
            "description": "LIVE play / ingest invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/nodes/bootstrap": {
      "post": {
        "tags": [
          "cfg-cells"
        ],
        "summary": "Node bootstrap Soft dry-run (CFG-MC-121) — invent-refuse DO/OpenBao LIVE",
        "operationId": "cfgNodesBootstrapSoft",
        "responses": {
          "200": {
            "description": "Soft dry-run"
          },
          "422": {
            "description": "LIVE invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/session/effective": {
      "get": {
        "tags": [
          "cfg-session"
        ],
        "summary": "Effective CFG permissions Soft (not LIVE APF invent)",
        "operationId": "cfgSessionEffectiveSoft",
        "responses": {
          "200": {
            "description": "allowed_actions + ui_hints"
          }
        }
      }
    },
    "/v1/configuration-fragments/fragments/{fragmentId}": {
      "get": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Fragment Soft GET (secrets redacted; access.yaml Soft)",
        "operationId": "cfgGetFragmentSoft",
        "parameters": [
          {
            "name": "fragmentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Fragment summary Soft"
          },
          "404": {
            "description": "CFG-E018"
          }
        }
      }
    },
    "/v1/configuration-fragments/fragments/{fragmentId}/presentation": {
      "get": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Presentation Soft (CFG-MC-110/154)",
        "operationId": "cfgGetFragmentPresentationSoft",
        "parameters": [
          {
            "name": "fragmentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "descriptions + diagrams; requires_law_quorum false"
          }
        }
      }
    },
    "/v1/configuration-fragments/fragments/{fragmentId}/meta": {
      "get": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Meta Soft aggregate with override path_class fences",
        "operationId": "cfgGetFragmentMetaSoft",
        "parameters": [
          {
            "name": "fragmentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "allowed_actions + override_paths"
          }
        }
      }
    },
    "/v1/configuration-fragments/documents/materialize": {
      "post": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Document HTML materialize Soft (CFG-MC-112)",
        "operationId": "cfgDocumentMaterializeSoft",
        "responses": {
          "200": {
            "description": "Allow-listed HTML Soft"
          },
          "400": {
            "description": "Allow-list / locked span fail"
          },
          "422": {
            "description": "LIVE send invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/pins/propose": {
      "post": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Path-class aware pin propose Soft (CFG-MC-157)",
        "operationId": "cfgPinsProposeSoft",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "fragment_id",
                  "changes"
                ],
                "properties": {
                  "fragment_id": {
                    "type": "string"
                  },
                  "changes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "path"
                      ],
                      "properties": {
                        "path": {
                          "type": "string"
                        },
                        "claimed_path_class": {
                          "type": "string"
                        }
                      }
                    }
                  },
                  "live": {
                    "type": "boolean",
                    "description": "If true → invent_refuse CFG-E014"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Soft propose accepted; pin not applied"
          },
          "400": {
            "description": "CFG-E007 / CFG-E026 path fence"
          },
          "403": {
            "description": "CFG-E015"
          },
          "422": {
            "description": "CFG-E014 LIVE invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/pins/{digest}/apply": {
      "post": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Pin apply Soft dry-run; invent-refuse LIVE PoCE (CFG-MC-71/81)",
        "operationId": "cfgPinsApplySoft",
        "parameters": [
          {
            "name": "digest",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Soft dry-run; applied=false"
          },
          "422": {
            "description": "LIVE PoCE invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/git/merge-propose-pin": {
      "post": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Merge→pin.propose Soft saga; never auto-apply (CFG-MC-72)",
        "operationId": "cfgMergeProposePinSoft",
        "responses": {
          "200": {
            "description": "Soft propose shape; auto_apply=false"
          },
          "422": {
            "description": "auto_apply invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/dual-read": {
      "post": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "Script seed vs pin seed dual-read Soft (CFG-MC-91)",
        "operationId": "cfgDualReadSoft",
        "responses": {
          "200": {
            "description": "pin_is_sole_sot always false on Soft"
          }
        }
      }
    },
    "/v1/configuration-fragments/journal/anchor": {
      "post": {
        "tags": [
          "cfg-fragments"
        ],
        "summary": "poce.journal Soft invent-refuse journal_anchored (CFG-MC-83)",
        "operationId": "cfgJournalAnchorSoft",
        "responses": {
          "200": {
            "description": "journal_anchored=false Soft dry-run"
          },
          "400": {
            "description": "cfg.journal forbidden"
          },
          "422": {
            "description": "LIVE Fabric invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/compose": {
      "post": {
        "tags": [
          "cfg-catalog"
        ],
        "summary": "Compose base + facets Soft preview",
        "operationId": "cfgComposeSoft",
        "responses": {
          "200": {
            "description": "Compose digest Soft"
          }
        }
      }
    },
    "/v1/configuration-fragments/cells": {
      "get": {
        "tags": [
          "cfg-cells"
        ],
        "summary": "List cells Soft paged",
        "operationId": "cfgListCellsSoft",
        "responses": {
          "200": {
            "description": "Empty Soft list until provision pin"
          }
        }
      },
      "post": {
        "tags": [
          "cfg-cells"
        ],
        "summary": "Provision cell Soft dry-run",
        "operationId": "cfgProvisionCellSoft",
        "responses": {
          "200": {
            "description": "Soft dry-run"
          },
          "422": {
            "description": "LIVE invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/cells/{cellId}/features:preview-remove": {
      "post": {
        "tags": [
          "cfg-cells"
        ],
        "summary": "Teardown preview Soft (CFG-MC-135)",
        "operationId": "cfgPreviewRemoveFeatureSoft",
        "parameters": [
          {
            "name": "cellId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "teardown_hooks listed; LIVE not executed"
          }
        }
      }
    },
    "/v1/configuration-fragments/cells/{cellId}/destroy": {
      "post": {
        "tags": [
          "cfg-cells"
        ],
        "summary": "Destroy Soft — requires confirm_destroy === cellId",
        "operationId": "cfgDestroyCellSoft",
        "parameters": [
          {
            "name": "cellId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Confirm-Destroy",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "description": "Must equal cellId"
          }
        ],
        "responses": {
          "200": {
            "description": "Soft dry-run"
          },
          "400": {
            "description": "Missing confirm"
          }
        }
      }
    },
    "/v1/configuration-fragments/ops/mission-readiness": {
      "get": {
        "tags": [
          "cfg-session"
        ],
        "summary": "Honest Soft checklist — never invents ready",
        "operationId": "cfgMissionReadinessSoft",
        "responses": {
          "200": {
            "description": "mission_critical_ready always false Soft"
          }
        }
      }
    },
    "/v1/configuration-fragments/entitlements/hub": {
      "get": {
        "tags": [
          "cfg-catalog"
        ],
        "summary": "CFG-ENT-15 Soft entitlement hub — Git fragment ids; meters null",
        "operationId": "cfgEntitlementHubSoft",
        "responses": {
          "200": {
            "description": "packages from disk; meters/health_percent always null; entitlement_met false"
          },
          "422": {
            "description": "LIVE / invented meters invent-refuse"
          }
        }
      }
    },
    "/v1/configuration-fragments/entitlements/soft/{op}": {
      "post": {
        "tags": [
          "cfg-catalog"
        ],
        "summary": "CFG-ENT Soft runtime desks (adapter, billing_ref, inheritance, APF, DSS-43, journal)",
        "operationId": "cfgEntitlementRuntimeSoft",
        "parameters": [
          {
            "name": "op",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "adapter.resolve",
                "billing_ref.normalize",
                "deploy.compose",
                "inheritance.resolve",
                "feature.remove.plan",
                "apf.check",
                "path_spec.lint",
                "journal.plan",
                "dss43.check"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Soft dry-run plan"
          },
          "422": {
            "description": "LIVE invent-refuse"
          }
        }
      }
    }
  }
}