Skip to content

Conversation

@jpower432
Copy link
Contributor

@jpower432 jpower432 commented Dec 5, 2025

Description

This PR updates the OSCAL generation logic post-move. The Layer 1 and Layer 2 approaches were somewhat divergent. Now that they are in the same package, we can reuse the functional options approach from Layer 1. Adds OSCAL-CLI validation CI to ensure there are no validation failures.

Schema Changes

Schema Changes Made

  • No schema changes
  • Layer 1 schema (schemas/layer-1.cue) changes
  • Layer 2 schema (schemas/layer-2.cue) changes
  • Layer 3 schema (schemas/layer-3.cue) changes
  • Layer 4 schema (schemas/layer-4.cue) changes

Schema Change Details

<!-- If applicable, provide a brief summary or example of schema changes -->

Testing

  • Unit tests added/updated
  • Manual testing performed
  • Test data updated (if applicable)

Related Issues

Closes #142

Reviewer Hints

The code is primarily reorganized, but CatalogFromCatalog was also updated and uses the GenerateOptions now.

@jpower432 jpower432 force-pushed the cleanup/oscal-logic branch from 02c0b2b to ae74d5d Compare December 5, 2025 21:11
@jpower432 jpower432 changed the title chore: cleanup OSCAL export logic for consistency feat!: add options pattern to OSCAL catalog generation Dec 5, 2025
@jpower432 jpower432 force-pushed the cleanup/oscal-logic branch from ae74d5d to 9a11829 Compare December 5, 2025 21:18
This updates the Layer 1 and Layer 2 implementations of OSCAL
generation for a more cohesive approach. The API now uses an options
pattern instead of positional parameters, providing more flexibility
and consistency across OSCAL generation functions.

Breaking change: FromCatalog renamed to CatalogFromCatalog and now
uses WithControlHref option instead of positional controlHREF parameter.

Assisted by: Composer(Cursor AI)
Signed-off-by: Jennifer Power <barnabei.jennifer@gmail.com>
@jpower432 jpower432 force-pushed the cleanup/oscal-logic branch from 9a11829 to dbbc5eb Compare December 5, 2025 21:19
This also makes the good-aigf.yaml test OSCAL-compliant

Signed-off-by: Jennifer Power <barnabei.jennifer@gmail.com>
@jpower432 jpower432 force-pushed the cleanup/oscal-logic branch from dbbc5eb to ff3896f Compare December 5, 2025 21:27
Signed-off-by: Jennifer Power <barnabei.jennifer@gmail.com>
Signed-off-by: Jennifer Power <barnabei.jennifer@gmail.com>
@jpower432 jpower432 marked this pull request as ready for review December 5, 2025 21:59
@jpower432 jpower432 requested a review from a team as a code owner December 5, 2025 21:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feat: Document and automate how to use CCC examples and oscal-cli for validation

1 participant