Skip to content

Establish release-candidate platform foundation - #4

Merged
Llewellynvdm merged 4 commits into
masterfrom
agent/release-candidate-foundation
Jul 22, 2026
Merged

Establish release-candidate platform foundation#4
Llewellynvdm merged 4 commits into
masterfrom
agent/release-candidate-foundation

Conversation

@Llewellynvdm

Copy link
Copy Markdown
Contributor

Outcome

Establishes the 0.3.0-rc.1 platform definition and makes the repository ready for its first controlled real-image build campaign.

What changed

  • makes manifest/images.yaml schema 2 the authority for version, images, composable language/capability components, policies, sizes, architectures, profiles and both CI matrices;
  • retains the six practical release images while cataloguing Android, GPU, containers, GUI, audio and security tooling as non-release planned capabilities;
  • removes Java and splits browser/database provisioning into reusable components;
  • adds restricted Incus projects, public-only connected egress, offline/fail-closed policy tiers, resource profiles and an interactive launch questionnaire;
  • replaces secret-bearing Incus environment arguments with validated root-owned systemd credentials;
  • enforces session TTL with systemd cgroups and adds a host VM expiry reaper;
  • enables all language specialists in the OpenCode orchestrator and defines structured handoffs;
  • adds OpenAI, Claude, Gemini, Grok and local gateway routes plus documented GitHub App, Gitea MCP and short-lived VPS/SSH paths;
  • adds architecture-specific image/package identities;
  • adds SBOM, Grype, in-toto/SLSA provenance, OpenBao-backed Cosign and tamper-verification hooks;
  • makes Gitea publication idempotent and atomic at artifact level through read-back verification and an upload-last completion marker;
  • establishes GPL-3.0-only licensing and Vast Development Method copyright ownership;
  • replaces the optimistic roadmap with explicit real-build and independent-host RC gates.

Static and mocked evidence

Passed locally:

  • repository validation;
  • schema and generated-file drift checks;
  • GitHub/Gitea matrix parity;
  • YAML and JSON parsing;
  • Bash syntax;
  • policy and Incus restriction assertions;
  • provider route assertions;
  • secret-not-in-Incus-argv test;
  • TTL reaper expired/unexpired/malformed/idempotent cases;
  • mocked Incus export/import round trip;
  • architecture-safe artifact assertions;
  • checksum verification and tampered payload rejection.

The CI runner installs and runs ShellCheck/yamllint. They were unavailable in this execution container, so the PR workflow is the authoritative lint result.

Deliberate release gates

This PR does not pretend static tests prove a VM image. Promotion requires:

  1. all six native amd64 builds;
  2. signed SBOM and vulnerability evidence;
  3. export/import/boot on a second clean host;
  4. positive and negative network policy tests;
  5. TTL/cgroup caller-loss tests;
  6. broker, provider, repository and SSH-certificate scope tests.

ARM64 is collision-safe in the schema but remains non-promotable until native evidence exists. Brokered/restricted/release policies remain blocked until the external gateway/proxy is deployed and tested.

Copy link
Copy Markdown
Contributor Author

Final source-level validation status:

  • Head 7c95acfca1c5d579ba506b6028ae693e96ee2e1f
  • GitHub Actions validation run #27 (29953282833) succeeded
  • Manifest generation/drift checks, ShellCheck, yamllint, security static checks, session transport checks, reaper checks, Python manifest tests, and mocked package tamper/round-trip tests are green

This PR intentionally remains a draft. Promotion still requires evidence from a real Incus environment: clean-host bootstrap, all six image builds, cross-host import, network negative/positive tests, abnormal-session TTL cleanup, broker/OpenBao scope and revocation tests, and SBOM/scan/signature verification on real artifacts. GitHub draft-release atomic publication, snapshot mirrors, the tokenless guest relay, and OpenFGA-backed fleet authorization remain follow-on promotion gates rather than completed claims.

@Llewellynvdm
Llewellynvdm marked this pull request as ready for review July 22, 2026 21:04
@Llewellynvdm
Llewellynvdm merged commit ecaaf8c into master Jul 22, 2026
1 check passed
@Llewellynvdm
Llewellynvdm deleted the agent/release-candidate-foundation branch July 22, 2026 21:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant