Skip to content
Closed

Main #8346

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
37d266a
docs: add SECURITY.md (RSR compliance)
hyperpolymath Mar 15, 2026
acf3d2b
docs: add 0-AI-MANIFEST.a2ml (RSR compliance)
hyperpolymath Mar 15, 2026
b03e2ac
fix: correct AI manifest — respect multi-license model (LGPL-3.0 + MIT)
hyperpolymath Mar 15, 2026
0290797
Replace RSR template placeholders with actual values
hyperpolymath Mar 16, 2026
54ebdb1
SHA-pin GitHub Actions and upgrade deprecated checkout versions
hyperpolymath Mar 16, 2026
d52d306
ci: deploy missing standard workflows (10 added)
hyperpolymath Mar 16, 2026
0ef04a9
ci: update SHA pins for codeql-action and trufflehog
hyperpolymath Mar 16, 2026
b4bbaa6
ci: migrate CodeQL Action v3 → v4
hyperpolymath Mar 16, 2026
b520899
chore: add CODE_OF_CONDUCT.md (RSR compliance)
hyperpolymath Mar 16, 2026
df2dbf4
feat: add CLADE.a2ml — clade taxonomy declaration
hyperpolymath Mar 16, 2026
43bd4a1
chore: add #![forbid(unsafe_code)] to safe Rust crates
hyperpolymath Mar 16, 2026
d34baa2
chore: RSR sync and mass repository update
hyperpolymath Mar 17, 2026
f132b4c
chore: Big Unification — attach to BoJ Server / Casket architecture
hyperpolymath Mar 17, 2026
af988bc
chore: Big Unification — attach to BoJ Server / Casket architecture
hyperpolymath Mar 17, 2026
a6feb15
chore(ci): maximize ci/cd values via dependabot and permissions
hyperpolymath Mar 18, 2026
28061c6
fix(ci): Resolve workflow-linter self-matching and metadata issues
hyperpolymath Mar 18, 2026
aee4835
fix(scorecard): enforce granular permissions and add fuzzing placeholder
hyperpolymath Mar 18, 2026
e67eca6
chore(floor-raise): add foundational tool integrations
hyperpolymath Mar 21, 2026
4fd0a5d
chore: batch RSR compliance — SPDX headers, SHA-pin actions, forbid(u…
hyperpolymath Mar 22, 2026
2f7090b
Merge branch 'chore/cicd-optimizations'
hyperpolymath Mar 22, 2026
4d84f5f
docs: add EXPLAINME.adoc — prove-it file backing README claims
hyperpolymath Mar 22, 2026
6db477e
chore: add agent_instructions methodology layer
hyperpolymath Mar 24, 2026
b7d13c3
docs: restore README.md lost in Floor Raise campaign
hyperpolymath Mar 28, 2026
458e615
feat: deploy UX Manifesto infrastructure
hyperpolymath Mar 28, 2026
5fa9433
chore: add UX infrastructure (quickstart, doctor, setup)
hyperpolymath Mar 28, 2026
b254aee
feat: add UX Justfile with doctor, tour, help-me, assail recipes
hyperpolymath Mar 28, 2026
f8e8f23
chore: deploy UX infrastructure (contractile.just, .well-known, manif…
hyperpolymath Mar 28, 2026
4de684b
feat: add stapeln.toml container definition
hyperpolymath Mar 29, 2026
3441bf5
Add .editorconfig from RSR template
hyperpolymath Mar 29, 2026
38e5da8
Add casket pages workflow
hyperpolymath Apr 2, 2026
e61a12e
fix: remove tracked node_modules, update gitignore
hyperpolymath Apr 3, 2026
4ff88e7
docs: substantive CRG C annotation (EXPLAINME.adoc)
hyperpolymath Apr 4, 2026
81bb19d
ci: update wellknown-enforcement, add TEST-NEEDS.md
hyperpolymath Apr 4, 2026
b957b34
docs: add TOPOLOGY.md
hyperpolymath Apr 4, 2026
45c2612
feat(crg): add crg-grade and crg-badge justfile recipes
hyperpolymath Apr 4, 2026
db52fac
chore: automated sync of local changes
hyperpolymath Apr 8, 2026
1f8a742
chore: M5 CI/Workflow Sweep - add blockers and contractile.just
hyperpolymath Apr 15, 2026
9d3803a
chore: M5 CI/Workflow Sweep - final synchronisation
hyperpolymath Apr 16, 2026
f1fbe07
Merge branch 'master' into main
hyperpolymath Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# RSR-template-repo - Editor Configuration
# https://editorconfig.org

root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
trim_trailing_whitespace = false

[*.adoc]
trim_trailing_whitespace = false

[*.rs]
indent_size = 4

[*.ex]
indent_size = 2

[*.exs]
indent_size = 2

[*.zig]
indent_size = 4

[*.ada]
indent_size = 3

[*.adb]
indent_size = 3

[*.ads]
indent_size = 3

[*.hs]
indent_size = 2

[*.res]
indent_size = 2

[*.resi]
indent_size = 2

[*.ncl]
indent_size = 2

[*.rkt]
indent_size = 2

[*.scm]
indent_size = 2

[*.nix]
indent_size = 2

[Justfile]
indent_style = space
indent_size = 4

62 changes: 62 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# RSR-compliant .gitattributes
* text=auto eol=lf

*.ml linguist-language=OCaml
Expand All @@ -6,3 +7,64 @@
*.resi linguist-language=ReScript

.yarn/releases/* binary linguist-vendored


# Source
*.rs text eol=lf diff=rust
*.ex text eol=lf diff=elixir
*.exs text eol=lf diff=elixir
*.jl text eol=lf
*.res text eol=lf
*.resi text eol=lf
*.ada text eol=lf diff=ada
*.adb text eol=lf diff=ada
*.ads text eol=lf diff=ada
*.hs text eol=lf
*.chpl text eol=lf
*.scm text eol=lf
*.a2ml text eol=lf linguist-language=TOML
*.ncl text eol=lf
*.nix text eol=lf
*.zig text eol=lf


# Docs
*.md text eol=lf diff=markdown
*.adoc text eol=lf
*.txt text eol=lf


# Data
*.json text eol=lf
*.yaml text eol=lf
*.yml text eol=lf
*.toml text eol=lf


# Config
.gitignore text eol=lf
.gitattributes text eol=lf
.editorconfig text eol=lf
.tool-versions text eol=lf
justfile text eol=lf
Makefile text eol=lf
Containerfile text eol=lf


# Scripts
*.sh text eol=lf


# Binary
*.png binary
*.jpg binary
*.gif binary
*.pdf binary
*.woff2 binary
*.zip binary
*.gz binary


# Lock files
Cargo.lock text eol=lf -diff
flake.lock text eol=lf -diff
48 changes: 48 additions & 0 deletions .github/workflows/boj-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
name: BoJ Server Build Trigger
on:
push:
branches: [main, master]
workflow_dispatch:
jobs:
trigger-boj:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Trigger BoJ Server (Casket/ssg-mcp)
run: |
# Send a secure trigger to boj-server to build this repository
curl -X POST "http://boj-server.local:7700/cartridges/ssg-mcp/invoke" -H "Content-Type: application/json" -d "{\"repo\": \"${{ github.repository }}\", \"branch\": \"${{ github.ref_name }}\", \"engine\": \"casket\\"}"}
continue-on-error: true
permissions:
contents: read

- name: K9-SVC Validation
run: |
echo "Running K9-SVC contractile validation..."
if [ -f .machine_readable/contractiles/must/Mustfile.a2ml ]; then
echo "✅ Mustfile found - running validation"
# Placeholder for actual K9 validation
echo "K9 validation would run here"
else
echo "❌ Mustfile not found"
exit 1
fi

- name: Contractile Check
run: |
echo "Checking contractile completeness..."
contractiles=("must" "trust" "dust" "lust" "adjust" "intend")
missing=0
for c in "${contractiles[@]}"; do
if [ ! -f ".machine_readable/contractiles/$c/${c^}file.a2ml" ]; then
echo "❌ Missing: $c"
missing=$((missing + 1))
fi
done
if [ $missing -gt 0 ]; then
echo "❌ $missing contractiles missing"
exit 1
fi
echo "✅ All contractiles present"
9 changes: 5 additions & 4 deletions .github/workflows/branch_cleanup.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,22 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
name: Cleanup Stale Branches

on:
workflow_dispatch:
schedule:
- cron: '0 0 * * *' # This schedule runs the workflow at midnight every day

jobs:
cleanup-stale-branches:
runs-on: ubuntu-latest
steps:
- name: Cleanup Stale Branches
uses: cbrgm/cleanup-stale-branches-action@v1
uses: cbrgm/cleanup-stale-branches-action@65a84e3b4dd2e168c499c206237fdd4bb071a6da # v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
repository: ${{ github.repository }}
# ignore-branches: ""
ignored-prefixes: "maintenance/"
last-commit-age-days: 90
dry-run: false
rate-limit: true
rate-limit: true
permissions:
contents: read
116 changes: 116 additions & 0 deletions .github/workflows/casket-pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
name: GitHub Pages

on:
push:
branches: [main, master]
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: "pages"
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4

- name: Checkout casket-ssg
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
with:
repository: hyperpolymath/casket-ssg
path: .casket-ssg

- name: Setup GHCup
uses: haskell-actions/setup@ec49483bfc012387b227434aba94f59a6ecd0900 # v2
with:
ghc-version: '9.8.2'
cabal-version: '3.10'

- name: Cache Cabal
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
path: |
~/.cabal/packages
~/.cabal/store
.casket-ssg/dist-newstyle
key: ${{ runner.os }}-casket-${{ hashFiles('.casket-ssg/casket-ssg.cabal') }}

- name: Build casket-ssg
working-directory: .casket-ssg
run: cabal build

- name: Prepare site source
shell: bash
run: |
set -euo pipefail
rm -rf .site-src _site

if [ -d site ]; then
cp -R site .site-src
else
mkdir -p .site-src
TODAY="$(date +%Y-%m-%d)"
REPO_NAME="${{ github.event.repository.name }}"
REPO_URL="https://github.com/${{ github.repository }}"
README_URL=""

if [ -f README.md ]; then
README_URL="${REPO_URL}/blob/${{ github.ref_name }}/README.md"
elif [ -f README.adoc ]; then
README_URL="${REPO_URL}/blob/${{ github.ref_name }}/README.adoc"
fi

{
echo "---"
echo "title: ${REPO_NAME}"
echo "date: ${TODAY}"
echo "---"
echo
echo "# ${REPO_NAME}"
echo
echo "Static documentation site for ${REPO_NAME}."
echo
echo "- Source repository: [${{ github.repository }}](${REPO_URL})"
if [ -n "${README_URL}" ]; then
echo "- README: [project README](${README_URL})"
fi
if [ -d docs ]; then
echo "- Docs directory: [docs/](${REPO_URL}/tree/${{ github.ref_name }}/docs)"
fi
echo
echo "Project-specific site content can be added later under site/."
} > .site-src/index.md
fi

- name: Build site
run: |
mkdir -p _site
cd .casket-ssg && cabal run casket-ssg -- build ../.site-src ../_site
touch ../_site/.nojekyll

- name: Setup Pages
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5

- name: Upload artifact
uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3
with:
path: '_site'

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4
Loading