working-with-attestations

Read, interpret, and submit Fianu attestation results via the notes and entities API endpoints.

1|Updated Jun 11, 2026
One-click install
npx skills add https://github.com/fianulabs/fianu-skills --skill working-with-attestations-fianulabs
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: working-with-attestations
Source: https://github.com/fianulabs/fianu-skills/tree/main/skills/working-with-attestations
Command: npx skills add https://github.com/fianulabs/fianu-skills --skill working-with-attestations-fianulabs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When a Fianu control fails, engineers struggle to find the measured value, the policy threshold it was compared against, and the failed items behind the verdict. This Skill maps the attestation data model and read endpoints so an agent can answer "why did this control fail" without guessing at the wrong endpoint. ## Core Features & Use Cases - Result vocabulary: Interprets the six attestation results (pass, fail, warn, in progress, not required, not found) and the separate execution status values, including annotation-based excusal. - Failure diagnosis: Reads measured values from $.detail.*, thresholds from $.policy.data.*, comparison logs from $.policy.evaluation.logs[], and violation rows from $.display.violations.rows via GET /notes/:uuid?format=raw. - Manual attestation upload: Submits manual evidence through POST /internal/upload/:control_entity_key/attestations/manual with a multipart payload. - Use Case: A release gate fails on a Code Coverage control. The agent fetches the raw attestation note, reports "measured 0.5, policy minimum 0.8", and explains that threshold controls record no violation rows. ## Quick Start Ask the agent to fetch the latest attestation for a control entity and explain why it failed, including the measured value and policy threshold.

Frequently Asked Questions about working-with-attestations

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find out why a Fianu control failed?▼

Fetch the attestation with GET /notes/:uuid?format=raw and compare $.detail.* (the measured value) against $.policy.data.* (the threshold). The comparison is narrated in $.policy.evaluation.logs[], and item-based controls list offenders in $.display.violations.rows.

What are the possible attestation result values in Fianu?▼

There are exactly six results: pass, fail, warn, in progress, not required, and not found, spelled with spaces. There is no unknown result; camelCase forms like notRequired may appear in rule output and should be normalized before comparing.

Why does the attestation meta endpoint not show the result or measured value?▼

GET /notes/attestations/:uuid/meta returns only policy provenance: the asset, policy hierarchy, and computedPolicy.sections. It has no result, detail, or display fields, so use GET /notes/:uuid?format=raw for measurements and failure detail.

How do I submit a manual attestation to Fianu?▼

POST multipart/form-data to /internal/upload/:control_entity_key/attestations/manual with a payload part containing the attestation result, series point, asset uuid, and user identity, plus one part per evidence file.

Why does a failing threshold control show no violation rows?▼

Threshold controls compare a single number, so the failure detail lives in $.detail.* versus $.policy.data.* and the evaluation logs. No shipped threshold rule records violation rows, so an empty violations.rows is expected, not missing data.

What should I do when an attestation note returns 404 or is missing?▼

Treat a missing attestation as not found (no evidence), not as a failure, and do not retry tightly. A 404 means the note was deleted or never existed; surface the missing reference and skip it.