Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 9 additions & 0 deletions .bot_directives/README.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
;; .bot_directives — per-bot rules and constraints
;; Media-Type: application/vnd.bot-directives+scm

(bot-directives
(version "1.0")
(notes
"Repo-specific bot constraints."
"Bots must follow these directives in addition to global policies."))
7 changes: 7 additions & 0 deletions .bot_directives/echidnabot.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "echidnabot")
(scope "formal verification and fuzzing")
(allow ("analysis" "fuzzing" "proof checks"))
(deny ("write to core modules" "write to bindings"))
(notes "May open findings; code changes require explicit approval"))
7 changes: 7 additions & 0 deletions .bot_directives/finishbot.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "finishbot")
(scope "release readiness")
(allow ("release checklists" "docs updates" "metadata fixes"))
(deny ("code changes without approval"))
(notes "Focus on polish, licensing, and packaging"))
7 changes: 7 additions & 0 deletions .bot_directives/glambot.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "glambot")
(scope "presentation + accessibility")
(allow ("docs" "readme badges" "ui/accessibility suggestions"))
(deny ("logic changes"))
(notes "Edits limited to presentation layers"))
7 changes: 7 additions & 0 deletions .bot_directives/rhodibot.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "rhodibot")
(scope "rsr-compliance")
(allow ("metadata" "docs" "repo-structure checks"))
(deny ("destructive edits without approval"))
(notes "Auto-fix allowed only for formatting in docs and metadata"))
7 changes: 7 additions & 0 deletions .bot_directives/robot-repo-automaton.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "robot-repo-automaton")
(scope "automated fixes")
(allow ("low-risk automated edits"))
(deny ("core logic changes without approval"))
(notes "Only apply fixes backed by explicit rule approval"))
7 changes: 7 additions & 0 deletions .bot_directives/seambot.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "seambot")
(scope "integration health")
(allow ("analysis" "contract checks" "docs updates"))
(deny ("code changes without approval"))
(notes "May add integration test suggestions"))
7 changes: 7 additions & 0 deletions .bot_directives/sustainabot.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
(bot-directive
(bot "sustainabot")
(scope "eco/economic standards")
(allow ("analysis" "reporting" "docs updates"))
(deny ("code changes without approval"))
(notes "Focus on measurement and recommendations"))
2 changes: 1 addition & 1 deletion .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Initialize CodeQL
uses: github/codeql-action/init@662472033e021d55d94146f66f6058822b0b39fd # v3.28.1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/guix-nix-policy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Enforce Guix primary / Nix fallback
run: |
# Check for package manager files
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/hypatia-scan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0 # Full history for better pattern analysis

Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/mirror.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.GITLAB_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -32,7 +32,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.BITBUCKET_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -50,7 +50,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.CODEBERG_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -68,7 +68,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.SOURCEHUT_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -86,7 +86,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.DISROOT_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -104,7 +104,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.GITEA_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -122,7 +122,7 @@ jobs:
runs-on: ubuntu-latest
if: vars.RADICLE_MIRROR_ENABLED == 'true'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/npm-bun-blocker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Block npm/bun
run: |
if [ -f "package-lock.json" ] || [ -f "bun.lockb" ] || [ -f ".npmrc" ]; then
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Check file permissions
run: |
Expand Down Expand Up @@ -43,7 +43,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Check documentation
run: |
MISSING=""
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rsr-antipattern.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Check for TypeScript
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/scorecard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
security-events: write
id-token: write
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/secret-scanner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
trufflehog:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0 # Full history for scanning

Expand All @@ -25,7 +25,7 @@ jobs:
gitleaks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
fetch-depth: 0

Expand All @@ -39,7 +39,7 @@ jobs:
runs-on: ubuntu-latest
if: hashFiles('**/Cargo.toml') != ''
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4

- name: Check for hardcoded secrets in Rust
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/security-policy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Security checks
run: |
FAILED=false
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ts-blocker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Block new TypeScript/JavaScript
run: |
NEW_TS=$(git diff --name-only --diff-filter=A HEAD~1 2>/dev/null | grep -E '\.(ts|tsx)$' | grep -v '\.gen\.' || true)
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/wellknown-enforcement.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: RFC 9116 security.txt validation
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/workflow-linter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Check SPDX Headers
run: |
Expand Down Expand Up @@ -72,7 +72,7 @@ jobs:
echo "$unpinned"
echo ""
echo "Replace version tags with SHA pins, e.g.:"
echo " uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1"
echo " uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4.1.1"
exit 1
fi
echo "All actions are SHA-pinned"
Expand Down
11 changes: 11 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -77,3 +77,14 @@ htmlcov/
/tmp/
*.tmp
*.bak

# Crash recovery artifacts
ai-cli-crash-capture/
target/
node_modules/
_build/
deps/
.elixir_ls/
.cache/
build/
dist/
26 changes: 7 additions & 19 deletions .machine_readable/ECOSYSTEM.scm
Original file line number Diff line number Diff line change
@@ -1,20 +1,8 @@
;; SPDX-License-Identifier: PMPL-1.0-or-later
;; ECOSYSTEM.scm - Ecosystem position for bgp-backbone-lab
;; Media-Type: application/vnd.ecosystem+scm

(ecosystem
(version "1.0")
(name "bgp-backbone-lab")
(type "")
(purpose "")

(position-in-ecosystem
(category "")
(subcategory "")
(unique-value ()))

(related-projects ())

(what-this-is ())

(what-this-is-not ()))
(ecosystem (metadata (version "0.2.0") (last-updated "2026-02-08"))
(project (name "bgp-backbone-lab") (purpose "eBGP backbone simulation with containerlab") (role network-lab))
(flatracoon-integration
(parent "flatracoon/netstack")
(layer network)
(depended-on-by ())
(depends-on ())))
Loading
Loading