Skip to content

Commit 4128d44

Browse files
authored
Repository rename tasks (#284)
* Rename main go module to source-tool Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * Update module name in linter config Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * Rename package names to new import path Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * Update generated package names in protos Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * Update buf config to new import path Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * buf generate Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * Update repository URLs in docs Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> * Add missing boilerplates in workflows Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]> --------- Signed-off-by: Adolfo García Veytia (Puerco) <[email protected]>
1 parent 170d721 commit 4128d44

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+188
-180
lines changed

.github/workflows/go-test.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# SPDX-FileCopyrightText: Copyright 2025 The SLSA Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
---
14
name: Go Tests (sourcetool)
25

36
on:

.github/workflows/local_attest.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# SPDX-FileCopyrightText: Copyright 2025 The SLSA Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
---
14
name: SLSA Source
25
on:
36
push:

.github/workflows/release.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# SPDX-FileCopyrightText: Copyright 2025 The SLSA Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
---
14
name: release
25

36
on:

.golangci.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ formatters:
2727
sections:
2828
- standard
2929
- default
30-
- prefix(github.com/slsa-framework/slsa-source-poc)
30+
- prefix(github.com/slsa-framework/source-tool)
3131
linters:
3232
enable:
3333
- asasalint

buf.gen.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ plugins:
1010
out: ./pkg
1111
opt:
1212
- paths=import
13-
- module=github.com/slsa-framework/slsa-source-poc/pkg
13+
- module=github.com/slsa-framework/source-tool/pkg

docs/DESIGN.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ field in the policy then needs to be enabled too.
181181
TODO: In the future this tool could be updated to allow some subset of tags
182182
to be updated (e.g. `latest`, `nightly`), but that feature is not yet
183183
supported. Tracked
184-
[here](https://github.com/slsa-framework/slsa-source-poc/issues/129).
184+
[here](https://github.com/slsa-framework/source-tool/issues/129).
185185

186186
The tag hygiene control is evaluated for _both_ branch updates and tag updates.
187187

@@ -243,7 +243,7 @@ Source provenance covers changes to a branch. It indicates:
243243
}
244244
}
245245
],
246-
"predicateType": "https://github.com/slsa-framework/slsa-source-poc/source-provenance/v1-draft",
246+
"predicateType": "https://github.com/slsa-framework/source-tool/source-provenance/v1-draft",
247247
"predicate": {
248248
"activity_type": "pr_merge",
249249
"actor": "TomHennen",
@@ -268,7 +268,7 @@ Source provenance covers changes to a branch. It indicates:
268268
],
269269
"created_on": "2025-05-31T21:52:36.665624162Z",
270270
"prev_commit": "a224aa2d55884ef0cef78ccb498c3561ca240808",
271-
"repo_uri": "https://github.com/slsa-framework/slsa-source-poc"
271+
"repo_uri": "https://github.com/slsa-framework/source-tool"
272272
}
273273
}
274274
```
@@ -306,7 +306,7 @@ Tag provenance records a tag creation event. It indicates:
306306
}
307307
],
308308
"created_on": "2025-06-01T21:46:21.698144672Z",
309-
"repo_uri": "https://github.com/slsa-framework/slsa-source-poc",
309+
"repo_uri": "https://github.com/slsa-framework/source-tool",
310310
"tag": "refs/tags/sourcetool/v0.5.1",
311311
"vsa_summaries": [
312312
{
@@ -326,8 +326,8 @@ Tag provenance records a tag creation event. It indicates:
326326

327327
## Policy
328328

329-
This PoC uses user supplied 'policy' files (stored in
330-
[a public git repo](https://github.com/slsa-framework/slsa-source-poc/tree/main/policy/github.com)
329+
This PoC uses user-supplied 'policy' files (stored in
330+
[a public git repo](https://github.com/slsa-framework/source-policies/tree/main/policy/github.com)
331331
outside of user control) to indicate what controls _ought_ to be enforced and when that
332332
enforcement should start.
333333

@@ -340,7 +340,7 @@ This amounts to public declaration of SLSA adoption and allows backsliding to be
340340

341341
```json
342342
{
343-
"canonical_repo": "https://github.com/slsa-framework/slsa-source-poc",
343+
"canonical_repo": "https://github.com/slsa-framework/source-tool",
344344
"protected_branches": [
345345
{
346346
"Name": "main",
@@ -370,7 +370,7 @@ declaration by the org that all tags are protected.
370370

371371
The tool does not yet support protecting only some tags. Adding support is
372372
tracked in
373-
[this issue](https://github.com/slsa-framework/slsa-source-poc/issues/129).
373+
[this issue](https://github.com/slsa-framework/source-tool/issues/129).
374374

375375
### Org Specified Properties
376376

@@ -403,9 +403,9 @@ Example VSA
403403
"predicateType": "https://slsa.dev/verification_summary/v1",
404404
"predicate": {
405405
"policy": {
406-
"uri": "https://github.com/slsa-framework/slsa-source-poc/blob/main/policy/github.com/slsa-framework/slsa-source-poc/source-policy.json"
406+
"uri": "https://github.com/slsa-framework/source-policies/blob/main/policy/github.com/slsa-framework/source-tool/source-policy.json"
407407
},
408-
"resourceUri": "git+https://github.com/slsa-framework/slsa-source-poc",
408+
"resourceUri": "git+https://github.com/slsa-framework/source-tool",
409409
"timeVerified": "2025-06-01T21:51:51.451207508Z",
410410
"verificationResult": "PASSED",
411411
"verifiedLevels": [
@@ -414,7 +414,7 @@ Example VSA
414414
"ORG_SOURCE_TESTED"
415415
],
416416
"verifier": {
417-
"id": "https://github.com/slsa-framework/slsa-source-poc"
417+
"id": "https://github.com/slsa-framework/source-tool"
418418
}
419419
}
420420
}

docs/REQUIREMENTS_MAPPING.md

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -10,33 +10,33 @@ as of June 21, 2025.
1010
## Organization Requirements
1111

1212
These requirements are primarily for the organization that is producing the
13-
source code. The `slsa-source-poc` tool helps organizations meet these
13+
source code. `source-tool` helps organizations meet these
1414
requirements when using GitHub as their Source Control System (SCS).
1515

1616
### [Choose an appropriate source control system](https://slsa.dev/spec/v1.2-rc1/source-requirements#choose-scs)
1717

1818
**Required for: SLSA Source Level 1+**
1919

2020
This requirement is for the organization to select an SCS that can meet their
21-
desired SLSA Source Level. The `slsa-source-poc` tool is designed specifically
21+
desired SLSA Source Level. `source-tool` is designed specifically
2222
for organizations using **GitHub**.
2323

2424
### [Protect consumable branches and tags](https://slsa.dev/spec/v1.2-rc1/source-requirements#protect-consumable-branches-and-tags)
2525

2626
**Required for: SLSA Source Level 2+**
2727

28-
The `slsa-source-poc` tool is designed around this principle.
28+
The SLSA source tool is designed around this principle.
2929

3030
- **Policy:** Users define a
31-
[policy file](https://github.com/slsa-framework/slsa-source-poc/blob/main/DESIGN.md#policy)
31+
[policy file](DESIGN.md#policy)
3232
to specify which branches are protected and what their target SLSA level is.
3333
The policy also allows for specifying which tags should be protected.
3434
- **Identity Management:** The tool relies on GitHub's built-in
3535
[identity management](https://docs.github.com/en/get-started/learning-about-github/types-of-github-accounts#user-accounts)
3636
to configure which actors can perform sensitive actions.
3737
- **Technical Controls:** The tool enforces technical controls via GitHub's
3838
[rulesets](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository).
39-
[DESIGN.md](https://github.com/slsa-framework/slsa-source-poc/blob/main/DESIGN.md)
39+
[DESIGN.md](DESIGN.md)
4040
outlines several controls such as `CONTINUITY_ENFORCED`, `REVIEW_ENFORCED`,
4141
`TAG_HYGIENE`, and custom `GH_REQUIRED_CHECK_*` controls that map to
4242
organization-defined checks. These are included in the generated VSAs as
@@ -46,7 +46,7 @@ The `slsa-source-poc` tool is designed around this principle.
4646

4747
**Required for: SLSA Source Level 2+**
4848

49-
The `slsa-source-poc` tool does not provide a technical enforcement mechanism
49+
The SLSA source tool does not provide a technical enforcement mechanism
5050
for a safe expunging process. However, it recommends a process based on GitHub's
5151
features:
5252

@@ -62,16 +62,15 @@ used only for safe expunging. This relies on organizational process.
6262

6363
## Source Control System Requirements
6464

65-
These requirements are for the Source Control System itself. The
66-
`slsa-source-poc` tool leverages GitHub's capabilities to meet these
67-
requirements.
65+
These requirements are for the Source Control System itself. `source-tool`
66+
leverages GitHub's capabilities to meet these requirements.
6867

6968
### [Repositories are uniquely identifiable](https://slsa.dev/spec/v1.2-rc1/source-requirements#repository-ids)
7069

7170
**Required for: SLSA Source Level 1+**
7271

7372
The tool works with **GitHub repositories**, which are uniquely identified by
74-
their URL (e.g., `https://github.com/slsa-framework/slsa-source-poc`).
73+
their URL (e.g., `https://github.com/slsa-framework/source-tool`).
7574

7675
### [Revisions are immutable and uniquely identifiable](https://slsa.dev/spec/v1.2-rc1/source-requirements#revision-ids)
7776

@@ -84,8 +83,8 @@ identified by their commit hash.
8483

8584
**Required for: SLSA Source Level 1+**
8685

87-
The `slsa-source-poc` tool generates
88-
[Verification Summary Attestations (VSAs)](https://github.com/slsa-framework/slsa-source-poc/blob/main/DESIGN.md#verification-summary-attestations-vsa)
86+
The SLSA Source tool generates
87+
[Verification Summary Attestations (VSAs)](DESIGN.md#verification-summary-attestations-vsa)
8988
for each commit on a protected branch. These VSAs indicate the SLSA Source Level
9089
of the revision. The tool uses its generated
9190
[source provenance](#source-provenance) to issue these VSAs for Level 3 and
@@ -97,7 +96,7 @@ can access the revision.
9796
**Required for: SLSA Source Level 2+**
9897

9998
The tool requires users to specify protected branches in the
100-
[policy file](https://github.com/slsa-framework/slsa-source-poc/blob/main/DESIGN.md#policy).
99+
[policy file](DESIGN.md#policy).
101100
The tool's logic for determining SLSA levels is then applied to these branches.
102101

103102
### [History](https://slsa.dev/spec/v1.2-rc1/source-requirements#history)
@@ -113,7 +112,7 @@ tampering with the history of protected branches.
113112

114113
**Required for: SLSA Source Level 2+**
115114

116-
The `slsa-source-poc` tool enforces the change management process through a
115+
`source-tool` tool enforces the change management process through a
117116
combination of its policy file and GitHub's rulesets.
118117

119118
- The tool checks for the enforcement of specific rules on protected branches.
@@ -128,12 +127,12 @@ combination of its policy file and GitHub's rulesets.
128127

129128
**Required for: SLSA Source Level 2+**
130129

131-
Continuity is a core concept in the `slsa-source-poc` design.
130+
Continuity is a core concept in the `source-tool` design.
132131

133132
- The `CONTINUITY_ENFORCED` control ensures that history protection rules are
134133
continuously enforced.
135134
- The
136-
[provenance-based approach](https://github.com/slsa-framework/slsa-source-poc/blob/main/DESIGN.md#provenance-based)
135+
[provenance-based approach](DESIGN.md#provenance-based)
137136
is designed to track continuity of controls from one commit to the next. If a
138137
prior commit's provenance shows the same level of control, the start time of
139138
that control is carried forward. This ensures that there are no gaps in
@@ -149,7 +148,7 @@ require this for a given SLSA level.
149148

150149
**Gap:** The tool does not yet support protecting only a subset of tags; the
151150
`tag_hygiene` setting applies to all tags. This is tracked in
152-
[issue #129](https://github.com/slsa-framework/slsa-source-poc/issues/129).
151+
[issue #129](https://github.com/slsa-framework/source-tool/issues/129).
153152

154153
### [Identity Management](https://slsa.dev/spec/v1.2-rc1/source-requirements#identity-management)
155154

@@ -163,9 +162,9 @@ their GitHub user accounts.
163162

164163
**Required for: SLSA Source Level 3+**
165164

166-
For Level 3, the `slsa-source-poc` tool creates **source provenance
167-
attestations** for each push to a protected branch. The
168-
[design document](https://github.com/slsa-framework/slsa-source-poc/blob/main/DESIGN.md#source-provenance)
165+
For Level 3, `source-tool` creates **source provenance attestations** for each
166+
push to a protected branch. The
167+
[design document](DESIGN.md#source-provenance)
169168
specifies the format of these attestations, which include the actor, the current
170169
and previous commits, the controls in place, and timestamps.
171170

@@ -179,8 +178,8 @@ anyone who can access the revision.
179178

180179
**Required for: SLSA Source Level 4**
181180

182-
For Level 4, the `slsa-source-poc` tool has a `REVIEW_ENFORCED` control. This
183-
control checks that the repository is configured to:
181+
For Level 4, `source-tool` has a `REVIEW_ENFORCED` control. This control checks
182+
that the repository is configured to:
184183

185184
- Require Pull Requests.
186185
- Require at least one approval.

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
module github.com/slsa-framework/slsa-source-poc
1+
module github.com/slsa-framework/source-tool
22

33
go 1.24.5
44

internal/cmd/audit.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ import (
1010

1111
"github.com/spf13/cobra"
1212

13-
"github.com/slsa-framework/slsa-source-poc/pkg/attest"
14-
"github.com/slsa-framework/slsa-source-poc/pkg/audit"
15-
"github.com/slsa-framework/slsa-source-poc/pkg/ghcontrol"
13+
"github.com/slsa-framework/source-tool/pkg/attest"
14+
"github.com/slsa-framework/source-tool/pkg/audit"
15+
"github.com/slsa-framework/source-tool/pkg/ghcontrol"
1616
)
1717

1818
type AuditMode int

internal/cmd/auth.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import (
1111
"github.com/fatih/color"
1212
"github.com/spf13/cobra"
1313

14-
"github.com/slsa-framework/slsa-source-poc/pkg/auth"
14+
"github.com/slsa-framework/source-tool/pkg/auth"
1515
)
1616

1717
var colorHiRed = color.New(color.FgHiRed).SprintFunc()

0 commit comments

Comments
 (0)