Claude b6bcab794f
Reorg step 1: consolidate repo under core/, drop the mafiabot label
Mechanical structure-only pass (no document/guide content edits):

- Move src/ichor, src/endocrine, and docs/ into core/; the old top-level
  mafiabot_core/ becomes core/. Everything now lives under a single core/ root.
- Drop the "mafiabot" label from the Ada/Alire crate: core.gpr (project Core),
  alire.toml name = "core"; the generated *_config.* regenerate as core_config.*.
- Repoint build-critical wiring only:
  - .claude/skills/run-sica-fondt/smoke.sh (ponyc + Ada + COBOL paths)
  - core/src/endocrine R source()/runner paths and the test glob
  - .github/workflows/ci.yml (working-directory + gpr name)

Verified green: smoke ALL GREEN (Pony Ichor, Ada core crate + tests, COBOL E1
vault); R endocrine 14/0; Octave ETR 26/0/1.

Deferred (reserved for a less-ephemeral doc/guide pass): docmap.yaml, the guide
files and nested AGENTS.md/README prose + now-stale relative links, SOUL.md, and
the deeper ring/storage restructure.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
2026-06-23 07:46:47 +00:00

70 lines
1.9 KiB
YAML

name: Ada CI
# Scheduled only — does NOT run on push or PR. Runs nightly and can be
# triggered by hand from the Actions tab.
on:
schedule:
- cron: "0 6 * * *" # 06:00 UTC daily
workflow_dispatch:
permissions:
contents: read
jobs:
build-and-test:
name: alr build + run tests
runs-on: ubuntu-latest
defaults:
run:
working-directory: core
steps:
- uses: actions/checkout@v4
- name: Set up Alire + GNAT/GPRbuild toolchain
uses: alire-project/setup-alire@v4
with:
toolchain: gnat_native^14 gprbuild
- name: Build (Ada2022 + SPARK + Jorvik)
run: alr --non-interactive build
- name: Run test executables
run: |
set -euo pipefail
fail=0
for t in trust_tests config_tests engine_tests; do
if [ -x "bin/$t" ]; then
echo "=== $t ==="
if ! "bin/$t"; then
echo "::error::$t exited non-zero"
fail=1
fi
else
echo "::warning::bin/$t not found (skipped)"
fi
done
exit $fail
prove:
name: gnatprove (informational)
runs-on: ubuntu-latest
# Proofs are not yet expected to fully discharge; surface results without
# blocking. Flip continue-on-error to false once the proof base is green.
continue-on-error: true
defaults:
run:
working-directory: core
steps:
- uses: actions/checkout@v4
- name: Set up Alire
uses: alire-project/setup-alire@v4
with:
toolchain: gnat_native^14 gprbuild
- name: Install gnatprove
run: alr --non-interactive toolchain --select gnatprove || alr --non-interactive with gnatprove || true
- name: Run gnatprove
run: alr --non-interactive exec -- gnatprove -P core.gpr --level=1 --report=fail || true