Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
catalog-import
command
Command catalog-import is issue #83's operational path for populating or refreshing this project's controls catalog post-boot, without a redeploy: it reads the full NIST SP 800-53 OSCAL catalog JSON document (from a local path or a URL), projects it down to this project's flat Control list and slim, sub-1MB wire format (internal/catalog.
|
Command catalog-import is issue #83's operational path for populating or refreshing this project's controls catalog post-boot, without a redeploy: it reads the full NIST SP 800-53 OSCAL catalog JSON document (from a local path or a URL), projects it down to this project's flat Control list and slim, sub-1MB wire format (internal/catalog. |
|
migrate-ids
command
Command migrate-ids is Run Stage deliverable 6's combined migration tool (issue #39): a one-time, standalone CLI that assigns generated IDs (internal/idgen) to existing test-case files and moves them from the pre-Run-Stage slug-based path scheme onto the new ID-keyed one (internal/testcase.NewTestCasePath), rewriting both path and frontmatter content together in one pass.
|
Command migrate-ids is Run Stage deliverable 6's combined migration tool (issue #39): a one-time, standalone CLI that assigns generated IDs (internal/idgen) to existing test-case files and moves them from the pre-Run-Stage slug-based path scheme onto the new ID-keyed one (internal/testcase.NewTestCasePath), rewriting both path and frontmatter content together in one pass. |
|
server
command
Command server is the entry point for the veckl HTTP server.
|
Command server is the entry point for the veckl HTTP server. |
|
testcase-import
command
Command testcase-import is issue #83's operational path for seeding a batch of test-case Markdown files into the repository, so this app's targeted 50-200 test cases can be committed in one pass rather than hand-authored one at a time through the create-test-case screen.
|
Command testcase-import is issue #83's operational path for seeding a batch of test-case Markdown files into the repository, so this app's targeted 50-200 test cases can be committed in one pass rather than hand-authored one at a time through the create-test-case screen. |
|
internal
|
|
|
auth
Package auth implements "Sign in with GitHub" user login for veckl: the OAuth 2.0 user-to-server authorization code flow for a GitHub App, plus a small stateless session mechanism built on top of it.
|
Package auth implements "Sign in with GitHub" user login for veckl: the OAuth 2.0 user-to-server authorization code flow for a GitHub App, plus a small stateless session mechanism built on top of it. |
|
catalog
Package catalog provides read-only lookups against two pieces of reference data a test case can be scoped against: a user-editable component registry (config/components.yaml - see LoadComponents) and the vendored NIST SP 800-53 Rev 5 OSCAL control catalog (see LoadCatalog).
|
Package catalog provides read-only lookups against two pieces of reference data a test case can be scoped against: a user-editable component registry (config/components.yaml - see LoadComponents) and the vendored NIST SP 800-53 Rev 5 OSCAL control catalog (see LoadCatalog). |
|
githubclient
Package githubclient is the sole layer through which veckl reads and writes security-control test-case files stored under /controls in a GitHub (or GitHub Enterprise Server) repository.
|
Package githubclient is the sole layer through which veckl reads and writes security-control test-case files stored under /controls in a GitHub (or GitHub Enterprise Server) repository. |
|
idgen
Package idgen composes and parses the generated test-case identifiers that give each test case its stable, human-readable name: strings of the form "RHEL9-AC-02.03-001" - {COMPONENT}-{FAMILY}-{NUMBER}[.{ENHANCEMENT}]-{SEQUENCE} - built from a validated component code (internal/catalog), a resolved control (internal/catalog), and the next sequence number for that component+control pairing (internal/sequence).
|
Package idgen composes and parses the generated test-case identifiers that give each test case its stable, human-readable name: strings of the form "RHEL9-AC-02.03-001" - {COMPONENT}-{FAMILY}-{NUMBER}[.{ENHANCEMENT}]-{SEQUENCE} - built from a validated component code (internal/catalog), a resolved control (internal/catalog), and the next sequence number for that component+control pairing (internal/sequence). |
|
migrate
Package migrate implements the pure transformation logic the combined migration tool (issue #39) applies to a single old-format test-case file: reparenting it onto the new ID-keyed path scheme (internal/testcase.NewTestCasePath) and populating its frontmatter's new id field (internal/idgen.GenerateID), in one pass, per file.
|
Package migrate implements the pure transformation logic the combined migration tool (issue #39) applies to a single old-format test-case file: reparenting it onto the new ID-keyed path scheme (internal/testcase.NewTestCasePath) and populating its frontmatter's new id field (internal/idgen.GenerateID), in one pass, per file. |
|
sequence
Package sequence parses and renders the YAML sequence-counter file that tracks the next available test-case number for each {COMPONENT}-{FAMILY}-{CONTROL}[.{ENHANCEMENT}] key, so IDs generated for the same component+control pairing never collide.
|
Package sequence parses and renders the YAML sequence-counter file that tracks the next available test-case number for each {COMPONENT}-{FAMILY}-{CONTROL}[.{ENHANCEMENT}] key, so IDs generated for the same component+control pairing never collide. |
|
server
This file establishes the /api/v1 namespace (issue #95): the foundation for a JSON API alongside this app's existing server-rendered HTML/htmx screens (see server.go's own package doc comment).
|
This file establishes the /api/v1 namespace (issue #95): the foundation for a JSON API alongside this app's existing server-rendered HTML/htmx screens (see server.go's own package doc comment). |
|
testcase
Package testcase parses and renders the YAML frontmatter block and Markdown body of a test-case file.
|
Package testcase parses and renders the YAML frontmatter block and Markdown body of a test-case file. |
|
validation
Package validation provides centralized validation logic for test case frontmatter, paths, and related data structures.
|
Package validation provides centralized validation logic for test case frontmatter, paths, and related data structures. |
Click to show internal directories.
Click to hide internal directories.