Skip to content

Commit b27f064

Browse files
committed
Merge main into git-reticulator standardization PR
2 parents fe8266f + 85f5831 commit b27f064

60 files changed

Lines changed: 3939 additions & 1628 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
30+
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
36+
37+
**Additional context**
38+
Add any other context about the problem here.

.github/ISSUE_TEMPLATE/custom.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
name: Custom issue template
3+
about: Describe this issue template's purpose here.
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/workflows/casket-pages.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ concurrency:
1818
jobs:
1919
build:
2020
runs-on: ubuntu-latest
21-
timeout-minutes: 15
21+
timeout-minutes: 10
2222
steps:
2323
- name: Checkout
24-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
24+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v4
2525

2626
- name: Setup Pages
2727
uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0
@@ -36,8 +36,8 @@ jobs:
3636
name: github-pages
3737
url: ${{ steps.deployment.outputs.page_url }}
3838
runs-on: ubuntu-latest
39-
timeout-minutes: 15
4039
needs: build
40+
timeout-minutes: 10
4141
steps:
4242
- name: Deploy to GitHub Pages
4343
id: deployment

.github/workflows/hypatia-scan.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,5 @@ permissions:
2525

2626
jobs:
2727
hypatia:
28-
uses: hyperpolymath/standards/.github/workflows/hypatia-scan-reusable.yml@6cd3772824e59c8c9affeab66061e25383544242
29-
timeout-minutes: 10
28+
uses: hyperpolymath/standards/.github/workflows/hypatia-scan-reusable.yml@915139d73560e65a8240b8fc7768698658502c89
3029
secrets: inherit

.github/workflows/mirror.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
name: Mirror to Git Forges
3+
4+
on:
5+
push:
6+
branches: [main]
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
mirror:
14+
uses: hyperpolymath/standards/.github/workflows/mirror-reusable.yml@e6b2884722350515934d443daf23442f2195796f
15+
secrets: inherit

.github/workflows/proof-corpus.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
3+
#
4+
# proof-corpus.yml — machine-checks the git-reticulator Idris2 proof corpus.
5+
#
6+
# First mechanized proofs for the lattice core (see PROOF-NEEDS.md): elementary
7+
# order theory (P1a witnessed, P2a essence). The gate fails if the corpus stops
8+
# typechecking under idris2 0.8.0, or if a proof-escape symbol is introduced.
9+
# Mirrors the canonical vcl-ut `proof-corpus.yml`, plus `libgmp-dev` (required by
10+
# the Idris2 RefC support lib and missing from the vcl-ut recipe).
11+
12+
name: Proof Corpus
13+
14+
on:
15+
pull_request:
16+
branches: ['**']
17+
push:
18+
branches: [main, master]
19+
20+
permissions:
21+
contents: read
22+
23+
concurrency:
24+
group: ${{ github.workflow }}-${{ github.ref }}
25+
cancel-in-progress: true
26+
27+
jobs:
28+
machine-check:
29+
name: idris2 0.8.0 --build git-reticulator-proofs
30+
runs-on: ubuntu-latest
31+
timeout-minutes: 30
32+
33+
steps:
34+
- name: Checkout repository
35+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
36+
37+
# Idris2 0.8.0 from PINNED official source (tag v0.8.0 == this commit).
38+
# No maintained setup action exists; a SHA-pinned source build is
39+
# deterministic and depends on no third-party action.
40+
- name: Build & install Idris2 0.8.0 from pinned source
41+
run: |
42+
set -euo pipefail
43+
sudo apt-get update -qq
44+
sudo apt-get install -y --no-install-recommends chezscheme make gcc libgmp-dev
45+
git clone --no-checkout https://github.com/idris-lang/Idris2.git /tmp/Idris2
46+
git -C /tmp/Idris2 checkout 15a3e4e70843f7a34100f6470c04b791330788df
47+
make -C /tmp/Idris2 bootstrap SCHEME=chezscheme
48+
make -C /tmp/Idris2 install PREFIX="$HOME/.idris2"
49+
echo "$HOME/.idris2/bin" >> "$GITHUB_PATH"
50+
echo "IDRIS2_PREFIX=$HOME/.idris2" >> "$GITHUB_ENV"
51+
52+
- name: Proof-escape audit (no believe_me / postulate / assert_* / sorry)
53+
run: |
54+
set -euo pipefail
55+
files="verification/proofs/Lattice/Order.idr"
56+
if grep -nE '\b(believe_me|really_believe_me|assert_total|assert_smaller|idris_crash|postulate|sorry)\b' \
57+
$files | grep -vE ':\s*(--|\|\|\|)' ; then
58+
echo "::error::proof-escape symbol found in the corpus"
59+
exit 1
60+
fi
61+
echo "OK: zero proof-escape symbols outside comments"
62+
63+
- name: Build the proof corpus
64+
run: |
65+
set -euo pipefail
66+
idris2 --version
67+
cd verification/proofs && idris2 --build git-reticulator-proofs.ipkg

.github/workflows/rust-ci.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,4 @@ permissions:
1414

1515
jobs:
1616
rust-ci:
17-
uses: hyperpolymath/standards/.github/workflows/rust-ci-reusable.yml@f5f0506a6ec88e574753eee701a268e0d4b3a7f2
18-
timeout-minutes: 10
17+
uses: hyperpolymath/standards/.github/workflows/rust-ci-reusable.yml@cc5a372af1af1b202c17f1b21efd954e6c038bef

.github/workflows/scorecard.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
name: Scorecards supply-chain security
3+
4+
on:
5+
branch_protection_rule:
6+
schedule:
7+
- cron: '23 4 * * 1'
8+
push:
9+
branches: [main]
10+
11+
# Workflow-level permissions are read-only. The job that calls the reusable
12+
# upgrades to the writes `ossf/scorecard-action` requires. Job-level
13+
# permissions REPLACE workflow-level for that job, so `contents: read` here
14+
# plus the writes below yields the correct effective set and avoids the
15+
# `read-all` startup_failure seen estate-wide. Matches the canonical caller in
16+
# hyperpolymath/standards/.github/workflows/scorecard-reusable.yml.
17+
permissions:
18+
contents: read
19+
20+
jobs:
21+
analysis:
22+
permissions:
23+
security-events: write
24+
id-token: write
25+
uses: hyperpolymath/standards/.github/workflows/scorecard-reusable.yml@e03686486e11b662834d7090dffae54c3e96fd59
26+
secrets: inherit
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
name: Secret Scanner
3+
4+
on:
5+
pull_request:
6+
push:
7+
branches: [main]
8+
9+
concurrency:
10+
group: ${{ github.workflow }}-${{ github.ref }}
11+
cancel-in-progress: true
12+
13+
permissions:
14+
contents: read
15+
16+
jobs:
17+
scan:
18+
uses: hyperpolymath/standards/.github/workflows/secret-scanner-reusable.yml@3e4bd4c93911750727e2e4c66dff859e00079da0
19+
secrets: inherit

0 commit comments

Comments
 (0)