Skip to content

Commit bbdf6a8

Browse files
committed
security: standardize secret scanning on TruffleHog
1 parent 213de10 commit bbdf6a8

57 files changed

Lines changed: 880 additions & 389 deletions

Some content is hidden

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

.github/CODEOWNERS

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
# CODEOWNERS - Define code review assignments for GitHub
3+
# See: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
4+
5+
# Default: sole maintainer for all files
6+
* @hyperpolymath
7+
8+
# Security-sensitive files require explicit ownership
9+
SECURITY.md @hyperpolymath
10+
.github/workflows/ @hyperpolymath
11+
.machine_readable/ @hyperpolymath
12+
contractiles/ @hyperpolymath
13+
14+
# License files
15+
LICENSE @hyperpolymath
16+
LICENSES/ @hyperpolymath
17+
18+
# Configuration
19+
.gitignore @hyperpolymath
20+
.github/ @hyperpolymath
21+
22+
# Documentation
23+
README* @hyperpolymath
24+
CONTRIBUTING* @hyperpolymath
25+
CODE_OF_CONDUCT* @hyperpolymath
26+
GOVERNANCE* @hyperpolymath
27+
MAINTAINERS* @hyperpolymath
28+
CHANGELOG* @hyperpolymath
29+
ROADMAP* @hyperpolymath
30+
31+
# Build and CI
32+
Justfile @hyperpolymath
33+
Makefile @hyperpolymath
34+
*.sh @hyperpolymath

.github/workflows/checker-scaling.yml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
# On Linux it also produces a dhat per-call-site heap profile and uploads it
99
# as an artifact for hotspot localisation (the step the issue asked for).
1010
name: Checker Scaling (#14)
11-
1211
on:
1312
push:
1413
paths:
@@ -18,9 +17,7 @@ on:
1817
paths:
1918
- 'crates/my-lang/**'
2019
- '.github/workflows/checker-scaling.yml'
21-
2220
permissions: read-all
23-
2421
jobs:
2522
scaling:
2623
name: scaling (${{ matrix.os }})
@@ -34,19 +31,15 @@ jobs:
3431
contents: read
3532
steps:
3633
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
37-
3834
- name: Setup Rust
3935
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable
4036
with:
4137
toolchain: stable
42-
4338
- name: Run allocation-scaling harness
4439
run: cargo test -p my-lang --test checker_alloc_scaling --release -- --nocapture
45-
4640
- name: Run dhat heap profile (Linux only)
4741
if: matrix.os == 'ubuntu-latest'
4842
run: cargo run -p my-lang --example dhat_checker_profile --features dhat-heap --release
49-
5043
- name: Upload dhat heap profile
5144
if: matrix.os == 'ubuntu-latest'
5245
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2

.github/workflows/codeql.yml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,20 @@
11
# SPDX-License-Identifier: MPL-2.0
22
name: CodeQL Security Analysis
3-
43
on:
54
push:
65
branches: [main, master]
76
pull_request:
87
branches: [main, master]
98
schedule:
109
- cron: '0 6 * * 1'
11-
1210
# Estate guardrail: cancel superseded runs so re-pushes / rebased PR
1311
# updates do not pile up queued runs against the shared account-wide
1412
# Actions concurrency pool. Applied only to read-only check workflows
1513
# (no publish/mutation), so cancelling a superseded run is always safe.
1614
concurrency:
1715
group: ${{ github.workflow }}-${{ github.ref }}
1816
cancel-in-progress: true
19-
20-
2117
permissions: read-all
22-
2318
jobs:
2419
analyze:
2520
runs-on: ubuntu-latest
@@ -33,17 +28,14 @@ jobs:
3328
include:
3429
- language: actions
3530
build-mode: none
36-
3731
steps:
3832
- name: Checkout
3933
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
40-
4134
- name: Initialize CodeQL
4235
uses: github/codeql-action/init@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v3.28.1
4336
with:
4437
languages: ${{ matrix.language }}
4538
build-mode: ${{ matrix.build-mode }}
46-
4739
- name: Perform CodeQL Analysis
4840
uses: github/codeql-action/analyze@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v3.28.1
4941
with:

.github/workflows/governance.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,20 @@
1111
# (rust-ci, codeql, dependabot, release, scan/mirror/pages plumbing).
1212

1313
name: Governance
14-
1514
on:
1615
push:
1716
branches: [main, master]
1817
pull_request:
1918
workflow_dispatch:
20-
2119
# Estate guardrail: cancel superseded runs so re-pushes / rebased PR
2220
# updates do not pile up queued runs against the shared account-wide
2321
# Actions concurrency pool. Applied only to read-only check workflows
2422
# (no publish/mutation), so cancelling a superseded run is always safe.
2523
concurrency:
2624
group: ${{ github.workflow }}-${{ github.ref }}
2725
cancel-in-progress: true
28-
2926
permissions:
3027
contents: read
31-
3228
jobs:
3329
governance:
3430
uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@861b5e911d9e5dcfb3c0ab3dd2a9a3c8fd0a1613

.github/workflows/hypatia-scan.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
# See standards#191 for the reusable's purpose and design.
44

55
name: Hypatia Security Scan
6-
76
on:
87
push:
98
branches: [main, master, develop]
@@ -12,17 +11,14 @@ on:
1211
schedule:
1312
- cron: '0 0 * * 0'
1413
workflow_dispatch:
15-
1614
# Estate guardrail: cancel superseded runs so re-pushes don't pile up.
1715
concurrency:
1816
group: ${{ github.workflow }}-${{ github.ref }}
1917
cancel-in-progress: true
20-
2118
permissions:
2219
contents: read
2320
security-events: write
2421
pull-requests: write
25-
2622
jobs:
2723
hypatia:
2824
uses: hyperpolymath/standards/.github/workflows/hypatia-scan-reusable.yml@6cd3772824e59c8c9affeab66061e25383544242

.github/workflows/mirror.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
# SPDX-License-Identifier: MPL-2.0
22
name: Mirror to Git Forges
3-
43
on:
54
push:
65
branches: [main]
76
workflow_dispatch:
8-
97
permissions:
108
contents: read
11-
129
jobs:
1310
mirror:
1411
uses: hyperpolymath/standards/.github/workflows/mirror-reusable.yml@e6b2884722350515934d443daf23442f2195796f

.github/workflows/scorecard.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
# SPDX-License-Identifier: MPL-2.0
22
name: Scorecards supply-chain security
3-
43
on:
54
branch_protection_rule:
65
schedule:
76
- cron: '23 4 * * 1'
87
push:
98
branches: [main]
10-
119
permissions: read-all
12-
1310
jobs:
1411
analysis:
1512
uses: hyperpolymath/standards/.github/workflows/scorecard-reusable.yml@e0caf11508a3989574713c78f5f444f2ce5e33ef
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,26 @@
11
# SPDX-License-Identifier: MPL-2.0
22
name: Secret Scanner
3-
43
on:
54
pull_request:
65
push:
76
branches: [main]
8-
97
concurrency:
108
group: ${{ github.workflow }}-${{ github.ref }}
119
cancel-in-progress: true
12-
1310
permissions:
1411
contents: read
15-
1612
jobs:
1713
scan:
1814
uses: hyperpolymath/standards/.github/workflows/secret-scanner-reusable.yml@3e4bd4c93911750727e2e4c66dff859e00079da0
1915
timeout-minutes: 10
2016
secrets: inherit
17+
trufflehog:
18+
runs-on: ubuntu-latest
19+
steps:
20+
- uses: actions/checkout@v4
21+
with:
22+
fetch-depth: 0
23+
- name: TruffleHog Secret Scan
24+
uses: trufflesecurity/trufflehog@main
25+
with:
26+
extra_args: --only-verified --fail

.github/workflows/spark-theatre-gate.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,12 @@
44
# estate action-pinning policy. Regenerate the pin only when the reusable
55
# workflow is intentionally bumped.
66
name: SPARK Theatre Gate
7-
87
on:
98
pull_request:
109
push:
1110
branches: [main, master]
12-
1311
permissions:
1412
contents: read
15-
1613
jobs:
1714
spark-theatre-gate:
1815
uses: hyperpolymath/standards/.github/workflows/spark-theatre-gate.yml@462003782f3ebb93ea763e81d0d199ce13ef7d73

.github/workflows/stack-depth.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
# the 1 MiB floor with headroom — so the Windows datapoint is produced *and*
1515
# locked in on every change instead of relying on a manual run.
1616
name: Stack Depth (#37)
17-
1817
on:
1918
push:
2019
paths:
@@ -24,9 +23,7 @@ on:
2423
paths:
2524
- 'crates/my-lang/**'
2625
- '.github/workflows/stack-depth.yml'
27-
2826
permissions: read-all
29-
3027
jobs:
3128
measure:
3229
name: measure (${{ matrix.os }})
@@ -40,14 +37,11 @@ jobs:
4037
contents: read
4138
steps:
4239
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
43-
4440
- name: Setup Rust
4541
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable
4642
with:
4743
toolchain: stable
48-
4944
- name: Stack-depth regression test (#37 subtleties 1 & 3)
5045
run: cargo test -p my-lang --test stack_depth_37 --release -- --nocapture
51-
5246
- name: Measure stack budget and assert MAX_EXPR_DEPTH fits the 1 MiB floor
5347
run: cargo run -p my-lang --example measure_depth --release

0 commit comments

Comments
 (0)