| name | fedramp-poam-quality-check |
| title | Input: poam_tsv = "fedramp_poam_2025.tsv" |
| description | Validates FedRAMP Plan of Action and Milestones (POAM) files for structural integrity, naming conventions, deduplication, and cross-sheet consistency |
| author | williamzujkowski |
| author_url | https://github.com/williamzujkowski/cognitive-toolworks/tree/main/skills/compliance-fedramp-validator |
| license | Apache-2.0 |
| version | 0.1.0 |
| execution_mode | open |
| jurisdiction | us |
| practice | regulatory |
| language | en |
Purpose & When-To-Use
Use this skill when you need to validate a FedRAMP Plan of Action and Milestones (POAM) file before submission or continuous monitoring updates. The POAM tracks system weaknesses and deficiencies with corrective actions and timelines according to FedRAMP requirements (accessed 2025-10-25T21:04:34-04:00: https://www.fedramp.gov/assets/resources/documents/CSP_POAM_Template_Completion_Guide.pdf).
Trigger conditions:
- Pre-submission quality gates for FedRAMP POAM deliverables
- Continuous monitoring validation before AO submission
- Post-assessment cleanup to ensure data integrity
- Integration checks for OSCAL-to-TSV conversions
- Duplicate entry detection across Open/Closed sheets
Pre-Checks
Required validations before proceeding:
-
Input availability:
poam_tsv file exists and is readable
- File size < 10 MB (sanity check)
- At least one header row present
-
Time context:
- Compute
NOW_ET using NIST time.gov semantics (America/New_York, ISO-8601)
- Current timestamp: 2025-10-25T21:04:34-04:00
-
Schema availability:
- If
naming_convention provided, validate JSON schema structure
- Required keys:
required_fields, date_format, severity_levels
- Default to FedRAMP standard if not provided
-
Encoding check:
- Verify UTF-8 or ASCII encoding
- Tab-delimited structure (not comma/pipe/other)
Abort conditions:
- File unreadable or corrupted
- No recognizable header row
- Encoding errors preventing parse
Procedure
Tier 1: Header & Format Sanity (≤2k tokens)
Goal: Fast validation for 80% of common issues
-
Parse header row:
- Extract column names
- Verify presence of core required fields: