Skip to content

Commit f8cc1d1

Browse files
committed
chore: updates testdata for new layer4 schema changes
Assisted by: Cursor Agent Signed-off-by: Jennifer Power <[email protected]>
1 parent f7f9fbc commit f8cc1d1

File tree

3 files changed

+778
-358
lines changed

3 files changed

+778
-358
lines changed

layer4/test-data/bad.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
metadata:
2+
id: test-plan
3+
invalid-field: this should cause an error
4+
plans:
5+
- invalid: structure
6+
invalid: yaml structure
Lines changed: 205 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,205 @@
1+
metadata:
2+
id: test-multi-tool-osps-plan
3+
version: "1.0.0"
4+
author:
5+
id: test-plan-generator
6+
name: Test Evaluation Plan Generator
7+
type: Automated
8+
uri: https://example.com/test-plans
9+
version: "1.0.0"
10+
mapping-references:
11+
- id: OSPS-B
12+
title: Open Source Project Security Baseline
13+
version: "2025"
14+
description: The Open Source Project Security (OSPS) Baseline
15+
evaluators:
16+
- id: pvtr-baseline-scanner
17+
name: PVTR Baseline Scanner
18+
type: Automated
19+
description: Automated security baseline scanner for GitHub repositories
20+
uri: https://github.com/revanite-io/pvtr-github-repo
21+
22+
- id: openssf-scorecard
23+
name: OpenSSF Scorecard
24+
type: Automated
25+
description: Security health scorecard for open source projects
26+
uri: https://github.com/ossf/scorecard
27+
28+
- id: manual-review
29+
name: Manual Security Review
30+
type: Manual
31+
description: Human expert review of security controls and documentation
32+
uri: https://example.com/manual-review-guide
33+
34+
- id: ci-test-detector
35+
name: CI Test Suite Detector
36+
type: Automated
37+
description: Automated tool that detects test suites in CI/CD pipeline configurations
38+
uri: https://example.com/ci-test-detector
39+
40+
- id: test-coverage-analyzer
41+
name: Test Coverage Analyzer
42+
type: Automated
43+
description: Analyzes test coverage metrics and identifies gaps in test suites
44+
uri: https://example.com/test-coverage-analyzer
45+
plans:
46+
- control:
47+
reference-id: OSPS-B
48+
entry-id: OSPS-AC-03
49+
assessments:
50+
- requirement:
51+
reference-id: OSPS-B
52+
entry-id: OSPS-AC-03.01
53+
strategy:
54+
conflict-rule-type: Strict
55+
procedures:
56+
- id: check-branch-protection-automated
57+
name: Automated Branch Protection Check
58+
description: |
59+
Verify that branch protection rules prevent direct commits to the primary branch
60+
by querying the version control system API. Multiple automated tools can perform this check.
61+
evaluators:
62+
- id: pvtr-baseline-scanner
63+
authoritative: true
64+
- id: openssf-scorecard
65+
authoritative: true
66+
strategy:
67+
conflict-rule-type: Strict
68+
remarks: |
69+
Any automated tool reporting a failure should cause the procedure to fail.
70+
71+
- id: check-branch-protection-manual
72+
name: Manual Branch Protection Review
73+
description: |
74+
Review repository settings in the GitHub UI to confirm branch protection is configured
75+
and requires pull request reviews before merging.
76+
evaluators:
77+
- id: manual-review
78+
authoritative: true
79+
80+
- control:
81+
reference-id: OSPS-B
82+
entry-id: OSPS-QA-06
83+
assessments:
84+
- requirement:
85+
reference-id: OSPS-B
86+
entry-id: OSPS-QA-06.01
87+
strategy:
88+
conflict-rule-type: Strict
89+
remarks: |
90+
Both automated detection and manual verification are required. Automated tools
91+
check CI/CD configuration, but manual review ensures tests are actually meaningful
92+
and properly configured. Any failure from either procedure should cause the requirement to fail.
93+
procedures:
94+
- id: check-ci-test-automated
95+
name: Automated CI Test Suite Detection
96+
description: |
97+
Automatically detect test suites configured in CI/CD pipelines by analyzing
98+
workflow files, pipeline configurations, and test execution patterns. This checks
99+
that tests are configured to run automatically before commits are accepted.
100+
evaluators:
101+
- id: ci-test-detector
102+
authoritative: true
103+
- id: pvtr-baseline-scanner
104+
authoritative: true
105+
- id: test-coverage-analyzer
106+
authoritative: false
107+
strategy:
108+
conflict-rule-type: AuthoritativeConfirmation
109+
remarks: |
110+
Authoritative evaluators (ci-test-detector, pvtr-baseline-scanner) can independently
111+
confirm test suite presence. Test-coverage-analyzer is non-authoritative and provides
112+
additional insights but requires authoritative confirmation before triggering findings.
113+
114+
- id: check-ci-test-manual
115+
name: Manual CI Test Suite Verification
116+
description: |
117+
Manually review CI/CD pipeline configurations and test execution logs to verify
118+
that automated test suites are properly configured, actually run, and produce
119+
meaningful results. This ensures tests aren't just present but are functional.
120+
evaluators:
121+
- id: manual-review
122+
authoritative: true
123+
strategy:
124+
conflict-rule-type: ManualOverride
125+
remarks: |
126+
Manual review can override automated detection results when human judgment
127+
determines that automated tools have false positives or missed configurations.
128+
129+
- control:
130+
reference-id: OSPS-B
131+
entry-id: OSPS-QA-07
132+
assessments:
133+
- requirement:
134+
reference-id: OSPS-B
135+
entry-id: OSPS-QA-07.01
136+
strategy:
137+
conflict-rule-type: Strict
138+
remarks: |
139+
Both configuration verification and behavior verification are required. Configuration
140+
checks ensure the rules are set up correctly, while behavior checks verify the system
141+
actually enforces them. Any failure from either procedure should cause the requirement to fail.
142+
procedures:
143+
- id: check-approval-configuration
144+
name: Approval Requirement Configuration Verification
145+
description: |
146+
Verify that branch protection rules are configured to require at least one
147+
non-author approval before merging to the primary branch. This checks the actual
148+
configuration settings in the version control system (e.g., GitHub branch protection
149+
rules, GitLab merge request settings) to ensure the requirement is properly configured.
150+
evaluators:
151+
- id: pvtr-baseline-scanner
152+
authoritative: true
153+
- id: openssf-scorecard
154+
authoritative: true
155+
strategy:
156+
conflict-rule-type: Strict
157+
158+
- id: check-approval-enforcement-behavior
159+
name: Approval Requirement Enforcement Behavior Verification
160+
description: |
161+
Verify that the version control system actually enforces the approval requirement
162+
by checking recent merge history, pull request patterns, and attempting to verify
163+
that merges without non-author approval were blocked or prevented. This behavior
164+
check ensures the configuration is not just present but actively enforced.
165+
evaluators:
166+
- id: pvtr-baseline-scanner
167+
authoritative: true
168+
169+
- control:
170+
reference-id: OSPS-B
171+
entry-id: OSPS-QA-05
172+
assessments:
173+
- requirement:
174+
reference-id: OSPS-B
175+
entry-id: OSPS-QA-05.01
176+
procedures:
177+
- id: check-binary-files
178+
name: Binary File Detection
179+
description: |
180+
Scan the repository to detect binary or executable files that should
181+
not be stored in version control.
182+
evaluators:
183+
- id: pvtr-baseline-scanner
184+
authoritative: true
185+
186+
- control:
187+
reference-id: OSPS-B
188+
entry-id: OSPS-GV-03
189+
assessments:
190+
- requirement:
191+
reference-id: OSPS-B
192+
entry-id: OSPS-GV-03.01
193+
procedures:
194+
- id: check-contribution-guide
195+
name: Contribution Guide Detection
196+
description: |
197+
Scan the repository for contribution guide files (CONTRIBUTING.md,
198+
CONTRIBUTING.rst, etc.) and verify their presence.
199+
evaluators:
200+
- id: pvtr-baseline-scanner
201+
authoritative: true
202+
- id: manual-review
203+
authoritative: true
204+
strategy:
205+
conflict-rule-type: ManualOverride

0 commit comments

Comments
 (0)