@@ -343,7 +343,7 @@ outside of user control) to indicate what controls _ought_ to be enforced and wh
343343enforcement should start.
344344
345345This is used to prevent users from disabling controls, making changes, and reenabling the
346- controls. Now, if a user wanted to do so they'd also have to update their 'Since' date
346+ controls. Now, if a user wanted to do so they'd also have to update the 'Since' dates
347347in their policy, and have that change submitted to the policy repo. The updated date
348348would then not cover the uncontrolled changes they made.
349349
@@ -355,13 +355,67 @@ This amounts to public declaration of SLSA adoption and allows backsliding to be
355355 "protected_branches" : [
356356 {
357357 "Name" : " main" ,
358- "Since" : " 2025-02-28T15:09:27.845Z" ,
359- "target_slsa_source_level" : " SLSA_SOURCE_LEVEL_2"
358+ "Since" : " 2025-03-28T15:09:27.845Z" ,
359+ "target_slsa_source_level" : " SLSA_SOURCE_LEVEL_3" ,
360+ "org_status_check_controls" : [
361+ {
362+ "check_name" : " test" ,
363+ "property_name" : " ORG_SOURCE_TESTED" ,
364+ "Since" : " 2025-05-31T22:44:18.816Z"
365+ }
366+ ]
360367 }
361368 ]
362369}
363370```
364371
372+ ### Org Specified Properties
373+
374+ Policies also allow users to specify that the GitHub repo must have a rule requiring
375+ certain 'checks' to be run by GitHub Actions. In the above policy example
376+ the organization must have their repo configured to require the 'test' status check
377+ have been run by GitHub Actions. As seen in this example:
378+
379+ ![ required status check example] ( media/require_status_checks.png )
380+
381+ ## Verification Summary Attestations (VSA)
382+
383+ Example VSA
384+
385+ ``` json
386+ {
387+ "_type" : " https://in-toto.io/Statement/v1" ,
388+ "subject" : [
389+ {
390+ "digest" : {
391+ "gitCommit" : " 932eb09d23b8574a5c1c3780afec1a93ebaa3e92"
392+ },
393+ "annotations" : {
394+ "source_refs" : [
395+ " refs/heads/main"
396+ ]
397+ }
398+ }
399+ ],
400+ "predicateType" : " https://slsa.dev/verification_summary/v1" ,
401+ "predicate" : {
402+ "policy" : {
403+ "uri" : " https://github.com/slsa-framework/slsa-source-poc/blob/main/policy/github.com/slsa-framework/slsa-source-poc/source-policy.json"
404+ },
405+ "resourceUri" : " git+https://github.com/slsa-framework/slsa-source-poc" ,
406+ "timeVerified" : " 2025-06-01T15:19:28.226795439Z" ,
407+ "verificationResult" : " PASSED" ,
408+ "verifiedLevels" : [
409+ " SLSA_SOURCE_LEVEL_3" ,
410+ " ORG_SOURCE_TESTED"
411+ ],
412+ "verifier" : {
413+ "id" : " https://github.com/slsa-framework/slsa-source-poc"
414+ }
415+ }
416+ }
417+ ```
418+
365419## Attestation Storage
366420
367421Attestations are stored on commits using [ git notes] ( https://git-scm.com/docs/git-notes )
0 commit comments