Skip to Content
veriom

Structural remediation plan

Preview how a structural finding would be remediated, before anything is requested. Names the affected objects and root cause, decides whether the change is automatable, partially automatable or a design decision, and lists the unintended-effect checks and open decisions. Reading the plan generates nothing and calls no model.

GET
/v1/workspaces/{workspace_id}/findings/{finding_id}/remediation-plan

Preview how a structural finding would be remediated, before anything is requested.

Names the affected objects and root cause, decides whether the change is automatable, partially automatable or a design decision, and lists the unintended-effect checks and open decisions. Reading the plan generates nothing and calls no model.

Authorization

workspaceToken
headerAuthorizationBearer <vat_<opaque-token>>

Expiring, hashed workspace token with explicit scopes.

Path Parameters

workspace_id*Workspace Id
Formatuuid
finding_id*Finding Id
Formatuuid

Response Body

Successful Response

application/json
  1. response
affected_objects*array<>
Items1 <= items <= 500
change_kind*Change Kind
Value in"identity_policy""network_rule""pipeline_permissions""runner_credential""authorization_control""data_access_binding""artifact_provenance""architecture_redesign""configuration"
changes*array<>
Items1 <= items <= 200
consequence*Consequence
Length1 <= length <= 2000
decision_record?|null
effect_checks*array<>
Items1 <= items <= 20
evidence_ids*array<>
Items1 <= items
expected_condition*Expected Condition
Length1 <= length <= 2000
finding_id*Finding Id
Formatuuid
invariant_id*Invariant Id
Length1 <= length <= 100
invariant_version*Invariant Version
Length1 <= length <= 50
ledgers?array<>
ledgers_missing?array<>
observed_condition*Observed Condition
Length1 <= length <= 2000
open_decisions?array<>
Itemsitems <= 20
outcome*Outcome
Value in"automatable""partially_automatable""design_decision"
outcome_reasons*array<string>
Items1 <= items <= 20
patch_targets?array<>
Itemsitems <= 50
policy_checks*array<>
Items1 <= items <= 20
root_cause?|null
schema_version?Schema Version
Default"structural-remediation-plan-v1"
title*Title
Length1 <= length <= 500
verification_predicate*Verification Predicate
Length1 <= length <= 4000
violated_rule*Violated Rule
Length1 <= length <= 4000
Example Request
curl -X GET 'https://api.veriom.ai/v1/workspaces/497f6eca-6276-4993-bfeb-53cbbbba6f08/findings/497f6eca-6276-4993-bfeb-53cbbbba6f08/remediation-plan'
Example Response
{  "affected_objects": [    {      "category": "string",      "evidence_ids": [        "973ab5a6-b373-447d-ab9d-bdb660b35afc"      ],      "key": "string",      "kind": "entity",      "name": "string",      "role": "affected",      "zone": "string"    }  ],  "change_kind": "identity_policy",  "changes": [    {      "change": "string",      "object_key": "string"    }  ],  "consequence": "string",  "decision_record": {    "alternatives": [      {        "benefits": [          "string"        ],        "description": "string",        "id": "string",        "title": "string",        "tradeoffs": [          "string"        ]      },      {        "benefits": [          "string"        ],        "description": "string",        "id": "string",        "title": "string",        "tradeoffs": [          "string"        ]      }    ],    "consequences": [      "string"    ],    "context": "string",    "question": "string",    "recommendation_reason": "string",    "recommended_alternative_id": "string",    "success_criteria": [      "string"    ],    "title": "string"  },  "effect_checks": [    {      "blocks_automation": false,      "detail": "string",      "id": "string",      "object_keys": [        "string"      ],      "question": "string",      "status": "clear"    }  ],  "evidence_ids": [    "973ab5a6-b373-447d-ab9d-bdb660b35afc"  ],  "expected_condition": "string",  "finding_id": "feebf65a-2eaa-4fae-aab2-772450efdffe",  "invariant_id": "string",  "invariant_version": "string",  "ledgers": [    "code"  ],  "ledgers_missing": [    "code"  ],  "observed_condition": "string",  "open_decisions": [    {      "id": "string",      "question": "string",      "reason": "string"    }  ],  "outcome": "automatable",  "outcome_reasons": [    "string"  ],  "patch_targets": [    {      "evidence_id": "5360afe2-6320-4611-b2b1-06edeee7fc1e",      "ledger": "code",      "path": "string",      "source": "evidence",      "subject_key": "string",      "summary": "string"    }  ],  "policy_checks": [    {      "description": "string",      "enforced_by": "path_guardrail",      "id": "string"    }  ],  "root_cause": {    "recurrence_scope": 0,    "ref": "d0fad5d6-e996-4437-8fb9-5f40bbcfd7cc",    "statement": "string"  },  "schema_version": "structural-remediation-plan-v1",  "title": "string",  "verification_predicate": "string",  "violated_rule": "string"}