Commit graph

19 commits

Author SHA1 Message Date
b67d04a0d4 Add llms.txt export for public docs
---
Build: pass | Tests: pass — 2382 passed (708 files)
2026-05-11 00:49:01 +02:00
ec77d9e179 Automate skills artifact refresh
---
Build: pass | Tests: pass — 2247 passed (666 files)

---
Build: FAIL | Tests: pass — 2249 passed (666 files)
2026-05-09 13:29:45 +02:00
c4239b2b11 Align jail policy and add system update path
---
Build: pass | Tests: pass — 51 passed (3 files)

---
Build: pass | Tests: pass — 2189 passed (648 files)
2026-05-06 09:43:08 +02:00
bef38d218a Add maintainer skills artifact builder
---
Build: pass | Tests: pass — Tests  2075 passed (2075)

---
Build: pass | Tests: pass — Tests  2075 passed (2075)
2026-04-29 13:12:30 +02:00
1425aa08eb feat(setup): add first-boot install modes and storage contract
---
Build: pass | Tests: pass — Tests  1990 passed (1990)

# Conflicts:
#	docs/internal/ISO-FIRST-BOOT-IMPLEMENTATION.md
#	docs/public/install/first-boot.md

# Conflicts:
#	docs/internal/ISO-FIRST-BOOT-IMPLEMENTATION.md
#	docs/internal/ISO-FIRST-BOOT-SECRETS-HANDOFF.md
2026-04-27 08:02:27 +02:00
0d9ad52922 fix(controlplane): stop git push token burn in jail
---
Build: FAIL | Tests: FAIL
2026-04-25 19:37:54 +02:00
36827ab478 Add dry-run tenant apply planning
Introduce a separate tenant-apply contract that describes what a future live apply would be allowed to touch, what prerequisites it would require, and what stays explicitly manual or out of scope.

---
Build: pass | Tests: pass — 28 passed (1 file)
2026-04-24 09:14:37 +02:00
e040f5cfcc Add tenant lifecycle removal planning
Keep tenants as logical platform identities, preserve human display names while normalizing system ids, and add a dry-run removal path plus stronger registry validation.

---
Build: pass | Tests: pass — 28 passed (3 files)
2026-04-24 08:32:45 +02:00
b8fd655f02 Refactor V2 identity and platform ownership model
Make the multitenant branch use a clean PLATFORM_*/TENANT_* model, remove active AGENT_NAME runtime usage, collapse hostd ownership into the shared platform, add operator audit surfaces, and add read-only tenant lifecycle commands.

---
Build: pass | Tests: pass — 151 passed (14 files)
2026-04-24 07:49:09 +02:00
5a052718f5 fix(controlplane): repair agent-task scripts
- Add required Authorization header (CONTROLPLANE_SHARED_SECRET)
- Support selecting assigned role via `just agent-task "..." db-admin`
- Update agent-task-status to understand `task_id` and list recent tasks
- Update harness handoff Phase 7e example

---
Build: pass | Tests: pass — 103 files, 1680 tests
2026-04-21 22:23:02 +02:00
bab87435d7 Add just pi-config and direct runner
Allow running setup/pi-config.ts directly (prints status summary) and add a just recipe for it.

---
Build: pass | Tests: not run
2026-04-18 19:10:39 +00:00
7c269c7ffb docs(just): normalize all docs to use 'just' as primary CLI, add groups + missing recipes (Sam & Claude)
- justfile: add [group] attributes (9 groups), 6 new recipes (migrate,
  skill-validate, skill-validate-all, verify-agent-jails, pull, post-update)
- README.md: add 'just' to prerequisites and pkg install lines
- CONTRIBUTING.md: rewrite dev setup around 'just', add prerequisite
- AGENTS.md: replace all npm run references with just equivalents
- Handoff docs: use just commands for all deploy steps
- Public/internal docs: normalize remaining npm run → just

---
Build: pass | Tests: not run (Linux)
2026-04-16 18:42:50 +02:00
e96e25e76f feat(phase7a): per-specialist agent jail isolation — registry, provisioner, exec runner
Phase 7 of the Agent Harness Evolution Plan. Each non-sysadmin specialist
(db-admin, git-admin, coordinator) gets its own Bastille jail with scoped
secrets and network isolation. Sysadmin stays on host (needs bastille/PF/ZFS).

New files:
- setup/agent-jails.ts — provisions 3 agent jails from infra/jails.yaml
- src/jail-exec-runner.ts — runs pi/aider inside named jails via bastille exec
- infra/packages/agent-worker-jail.txt — shared package list
- infra/pf-agent-jails.conf — PF network isolation rules
- doc/PHASE7-AGENT-JAILS-HANDOFF.md — FreeBSD agent handoff tasks

Modified:
- infra/jails.yaml — db-worker (211), git-worker (212), ctrl-worker (213)
- src/jail-schema.ts — AgentJailSchema, parseMountSpec, parseNetworkAllow
- src/config.ts — DB_WORKER_IP, GIT_WORKER_IP, CTRL_WORKER_IP
- setup/install.ts — agent-jails step after controlplane
- setup/packages.ts — agent-worker-jail package list type
- .agent/identities/*.md — jail boundary docs

Jail topology:
- db-worker (10.0.0.211) → db jail :5432, host :3100
- git-worker (10.0.0.212) → git jail :22/:3000, internet :443
- ctrl-worker (10.0.0.213) → host :3100 only

Sub-phases 7b-7e (routing, secret verification, tests) are in the handoff doc.

Co-Authored-By: Claude (Linux) <noreply@anthropic.com>

---
Build: pass | Tests: 1019 passed (Linux — 4 FreeBSD-only tests skipped)
---
2026-04-14 08:23:51 +02:00
af659e7c56 feat(phase4): just front door — 55 recipes + 10 CLI helper scripts
Adds justfile with 8 grouped recipe sections covering build, jail
management, skill catalog, agent ops, and system admin. Adds scripts for
skill-list/add/sync, jail-status, system-health, agent-task/status/logs,
harness-check, and hostd-cli. Fixes project root derivation to use
import.meta.url instead of process.cwd() so scripts work regardless of
invocation directory.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---
Build: pass | Tests: FAIL — Tests  40 failed | 766 passed (806)
2026-04-13 23:26:22 +00:00
34bba9084d Tighten aider runner timeouts and tests
---
Build: FAIL | Tests: pass — 942 passed (58 files)
2026-04-12 16:54:33 +00:00
6d6cbdd61f Standardize just command shortcuts in docs
---
Build: pass | Tests: FAIL — Tests  10 failed | 928 passed (938)
2026-04-12 16:38:52 +00:00
5e2269bcf9 fix: add npx prefix to all tsx commands in justfile
All TypeScript commands (tsx, tsc, prettier, vitest) need npx prefix
on FreeBSD since npm packages aren't in PATH. This completes the JUST-COMMAND-RUNNER handoff.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>

---
Build: pass | Tests: FAIL — Tests  7 failed | 926 passed (933)
2026-04-12 09:17:11 +00:00
81d65e0409 fix: add npx prefix to justfile npm commands and fix aider-runner stream handling
- Updated justfile to use npx for tsc, prettier, and vitest commands (they're not in PATH)
- Fixed race condition in controlplane-aider-runner.ts where logStream could receive writes after end()
- Added 'ended' flag to ensure final markers are written exactly once
- Wait for 'finish' event before resolving promise to ensure logs are flushed
- Fixed test timeout configuration syntax for Vitest 4

This fixes the JUST-COMMAND-RUNNER handoff validation on FreeBSD.
Pre-existing: timeout test still fails due to slow process termination on FreeBSD.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>

---
Build: pass | Tests: FAIL — Tests  7 failed | 926 passed (933)
2026-04-12 09:16:05 +00:00
f63efab986 feat: add justfile command runner (Sam & Claude)
Add a justfile that mirrors all npm scripts as discoverable recipes.
Just is additive — npm scripts remain untouched. Includes convenience
combos (check, pre-commit) and variadic args for setup/install.

Also adds 'just' to host baseline package list and README.

---
Build: pass | Tests: not run (Linux)
2026-04-12 10:09:20 +02:00