Commit graph

2 commits

Author SHA256 Message Date
Tyler J King
5f7f9c0ff7 feat: configurable corpus base dir + Bascule dev config
- corpus_check_with_base(): accepts explicit base directory
- corpus_check(): still defaults to /opt/substrate/corpus
- Improved corpus test with actual Allowed/Denied assertions
- Updated bascule-dev.toml with [gsap] section and shell_command

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 18:46:27 -04:00
Tyler J King
0adcf12e78 feat: Phase 4 — Bascule dual-cluster connectivity
Hetzner Bascule: already deployed (pod 756dccc486-wwg78, 5d uptime).
  Exposed via NodePort 30222 on all worker nodes.
  SSH responds: russh_0.46.0, session created, DID resolved.

Connectivity verified from WSL2:
  ssh stg.gsh '!whoami'
  → session: 019d4fd5-..., did: did:web:guildhouse.dev/user/tyler
  → tier: ReadOnly, roles: ["operator"]

Config files:
  config/bascule-dev.toml    — permissive auth, localhost:2223
  config/bascule-hetzner.toml — reference for Hetzner NodePort endpoints

bascule-proxy built and installed (~/.local/bin/).
  Config at ~/.config/bascule/config.toml
  Hosts: dev (localhost:2223), stg/prod (178.104.110.197:30222)

SSH config: stg.gsh and prod.gsh aliases configured.

The full chain: WSL2 → SSH → Bascule (Hetzner) → session + DID.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 16:14:51 -04:00