Skip to content

Add compliance annotations docs and example NetworkAssertions#314

Open
hardbyte wants to merge 5 commits intomainfrom
feat/compliance-annotations-and-docs
Open

Add compliance annotations docs and example NetworkAssertions#314
hardbyte wants to merge 5 commits intomainfrom
feat/compliance-annotations-and-docs

Conversation

@hardbyte
Copy link
Owner

@hardbyte hardbyte commented Mar 3, 2026

Summary

  • Adds documentation for compliance annotations (netchecks.io/controls, netchecks.io/description, netchecks.io/severity) that enable mapping active network tests to compliance framework controls
  • Adds three example NetworkAssertions demonstrating compliance mappings for PCI-DSS v4.0, SOC 2, and CIS Kubernetes Benchmark
  • Updates architecture guide with compliance reporting section
  • Adds Compliance Annotations page to docs navigation sidebar

Changes

  • docs/src/pages/docs/compliance-annotations.md — new docs page covering annotation usage, supported frameworks/controls, mapping logic, and report generation
  • operator/examples/compliance/pci-dss-cde-isolation.yaml — PCI-DSS v4.0 CDE isolation (egress + ingress assertions)
  • operator/examples/compliance/soc2-boundary-protection.yaml — SOC 2 boundary protection (web-to-db tier)
  • operator/examples/compliance/cis-default-deny.yaml — CIS Benchmark default-deny enforcement
  • docs/src/pages/docs/architecture-guide.md — added compliance reporting section
  • docs/src/components/Layout.jsx — added nav link

Test plan

  • Verify docs build successfully
  • Verify compliance-annotations page renders correctly
  • Verify example YAML files are valid NetworkAssertion manifests

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Mar 3, 2026

Deploying netchecks-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 4d85a97
Status: ✅  Deploy successful!
Preview URL: https://0d18956e.netchecks-docs.pages.dev
Branch Preview URL: https://feat-compliance-annotations.netchecks-docs.pages.dev

View logs

@coveralls
Copy link

coveralls commented Mar 3, 2026

Pull Request Test Coverage Report for Build 22732410469

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 91.26%

Totals Coverage Status
Change from base Build 22692871318: 0.0%
Covered Lines: 355
Relevant Lines: 389

💛 - Coveralls

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: baf13c40c3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +18 to +20
type: http
url: http://postgres.database:5432
expected: fail

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Use a protocol-valid probe for PostgreSQL isolation

This rule uses type: http against postgres.database:5432 with expected: fail, but PostgreSQL is not an HTTP service, so the HTTP check will error regardless of network policy and be counted as a pass after the expected: fail inversion. Given the default HTTP validation requires a 200/201 response, this probe cannot distinguish "blocked" from "reachable but non-HTTP," which can produce false compliance evidence for DB isolation.

Useful? React with 👍 / 👎.

Comment on lines +24 to +26
type: http
url: http://redis.cache:6379
expected: pass

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Avoid expecting pass from Redis over HTTP

The web-to-cache-allowed rule expects success but probes redis.cache:6379 with type: http; Redis does not speak HTTP, so this request will fail protocol validation instead of returning a 200/201 and the rule will report fail even when connectivity is correct. As written, this creates a built-in false negative in the example assertion.

Useful? React with 👍 / 👎.

hardbyte added 4 commits March 5, 2026 23:29
- New docs page: compliance-annotations.md covering netchecks.io/controls,
  netchecks.io/description, and netchecks.io/severity annotations
- Three example NetworkAssertions in operator/examples/compliance/:
  - PCI-DSS v4.0 CDE isolation (egress + ingress)
  - SOC 2 boundary protection (web-to-db tier)
  - CIS K8s Benchmark default-deny enforcement
- Architecture guide updated with compliance reporting section
- Navigation sidebar updated to include Compliance Annotations page
Add a product/landing page for netchecks-compliance at
/docs/compliance-reporting with pricing, frameworks, and quick start.
Link from annotations and architecture docs to docs site pages
instead of private GitHub repo.
@hardbyte hardbyte force-pushed the feat/compliance-annotations-and-docs branch from aa6890e to 60f5826 Compare March 5, 2026 19:05
Covers TCP probe type, compliance annotations, Cilium TCP test,
and compliance reporting documentation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants