Skip to content

g8e v1.5.9

Choose a tag to compare

@Badoot Badoot released this 20 Jul 00:16
Immutable release. Only release title and notes can be modified.
167d094

[1.5.9] - 2026-07-19

Overview

Documentation, protocol conformance, and generated protobuf API reference release. Expands the encryption architecture with certificate management and TLS standards documentation, consolidates the release workflow into a single make release target, adds troubleshooting coverage for CORS, Cloudflare tunnels, Docker demos, and live-swarm builds, generates protobuf Go stubs and API documentation for the common, operator, and pubsub protocol packages, and strengthens Python conformance tests with auth.json multi-wrapper validation and improved model schema field detection. Also updates the MCP tool template with conventions and operational error guidance, refines L3 Notary and governance descriptions across protocol docs, and adds g8e demos CLI commands to the finance demo.

Added

  • Encryption architecture: certificate management documentationdocs/architecture/encryption.md expanded with Certificate Types and Validity table (gateway serving cert 90 days, operator/CLI leaf cert 7 days, app enrollment 7 days, delegated app credential 1 hour), mTLS Enforcement section (RequireAndVerifyClientCert, TLS 1.3 minimum), SPIFFE Workload Identity section (operator, CLI, app, gateway peer, hub, user formats under g8e.local trust domain), Trust Bundles section (gateway bundle, operator bundle, root CA mirror), Certificate Management section (CSR signing, app enrollment with delegated credentials, certificate revocation via CRL, auto-renewal within 30 days of expiry), TLS Standards section, and Certificate Expired troubleshooting.
  • Developer troubleshooting expansiondocs/devs/troubleshooting.md added sections for: CORS and cross-origin session issues (cookie SameSite=None requirements, SSE withCredentials), WebAuthn passkey RP ID mismatch, stale trust bundle after PKI regeneration, Cloudflare tunnel issues (502 Bad Gateway, DNS record conflict, tunnel version outdated), receipt signature verification (out-of-band public key distribution), Docker demo issues (port conflicts between frontend and secure-data demos, drone simulator not running, high memory with 20 operators, Metabase startup failure, RabbitMQ management UI port mapping), live-swarm build issues (protoc version conflict with PX4, L1 doctrine compiled into binary, passkey RP origin for non-default origins), and known platform limitations (no RBAC, no Cloud SaaS, no external audits, receipt signature distribution).
  • Protobuf generated Go stubs and API documentation — Generated Go code for g8e/common/v1 (common.pb.go, 881 lines), g8e/operator/v1 (operator.pb.go 9048 lines, operator_grpc.pb.go 296 lines), and g8e/pubsub/v1 (pubsub.pb.go 231 lines). Generated API reference documentation for all three packages under protocol/proto/protocol/docs/reference/api/.
  • Anduril Lattice SDK vendored protos READMEthird_party/anduril/anduril/README.md documents the vendored protobuf definitions, BSR source, pinned commit, directory structure, code generation workflow, and update procedure.
  • auth.json conformance testsprotocol/conformance/test_constants.py added TestAuthJsonConstants class with parametrized tests for all 7 auth wrapper keys (passkey_purposes, webauthn_types, webauthn_algorithms, webauthn_attestation, webauthn_requirements, pki_leaf_types, context_keys): wrapper key existence, _go_const presence, value presence and non-emptiness, value uniqueness within wrapper (excluding webauthn_requirements which intentionally shares "required"), and _go_const PascalCase naming validation.
  • Agent model schema conformanceprotocol/conformance/test_models.py added 6 agent model files to MODEL_FILES: agents/agent_harness.json, agents/assistant.json, agents/lite.json, agents/primary.json, agents/title_generator.json, agents/triage.json.
  • Lovable verification checklist and See Alsodocs/guides/lovable.md moved the Verification Checklist and See Also sections to before the Lovable AI Agent Prompt, so the AI agent can see the full requirements including verification steps.
  • Finance demo CLI commandsdemos/finance/README.md added g8e demos start/status/stop/clean finance CLI command alternatives, g8e demos run auto-start note with -v and --tui flags, and L4/L5 always-active note.
  • --interactive / -i flag documentation — Added to README.md and protocol/docs/spec.md CLI flags list.

Changed

  • Release workflow consolidationdocs/devs/release_process.md and docs/architecture/protocol.md updated: the two-step release process (make release + manual commit + make release-tag) is now a single make release target that syncs Python versions, verifies clean working tree, checks release notes file existence, verifies tags don't exist, verifies GitHub CLI availability, builds binaries, creates and pushes tags, and creates a GitHub release with notes.
  • Python protocol package CIdocs/devs/release_process.md and docs/devs/tests.md updated: release-python-protocol.yml now includes a step to copy protocol constants into g8e/_data/ before building.
  • Python constants loader resolutiondocs/architecture/protocol.md updated: _get_protocol_dir() lookup order now includes bundled data (g8e/_data/) as second priority, before dev-mode relative path and container fallback.
  • Python enums moduledocs/architecture/protocol.md and docs/devs/codemap.md updated: g8e.enums now generates from STATUS, EVENTS, CHANNELS, INTENTS, PROMPTS, COLLECTIONS, and KV (previously only STATUS and EVENTS).
  • Python models moduledocs/architecture/protocol.md updated: added g8e.models.governance (GovernanceEnvelope, GovernanceMetadata, GovernanceL1, GovernanceL2, GovernanceL2Vote, GovernanceL3, compute_transaction_hash) and LLMOverrides in g8e.models.internal_api.
  • L3 Notary descriptionprotocol/docs/mcp.md updated: L3 Notary now described as a layered model where passkey authorization is required for all proofs (browser and CLI), with CLI callers additionally presenting mTLS fields for transport-layer authentication. Removed "Reputation staking" from L2 Consensus and "Auto-approval" from L3 Notary.
  • MCP tool templateprotocol/docs/mcp_tool_template.go updated: removed old +build ignore syntax, added conventions section (import block ordering, error wrapping, Go error vs CallToolResult{IsError: true} distinction, context.Context cancellation), moved request/result structs to tool file (not models.go), added mode enum example in schema, added operational error example in Execute().
  • Storage architecture vault descriptiondocs/architecture/storage.md updated: clarified that Audit Store, Execution Vault, and Token Store fail closed when vault is locked; Ledger encrypts file copies when vault is unlocked and fails closed for retrieval/restoration. Removed "shared SQLite connection pool" language. Updated Replay Store cleanup description.
  • Gateway architecture descriptionsdocs/architecture/gateway.md updated: onboarding wizard description generalized (removed specific struct/function names), RouteAuthRegistry and PrivilegedRouteRegistry descriptions generalized, auth middleware description generalized.
  • Network architecturedocs/architecture/network.md added heartbeat:<operator_id>:<operator_session_id> channel naming convention for operator heartbeats.
  • SSE architecturedocs/architecture/sse.md changed "mTLS-authenticated admin endpoints" to "authenticated admin endpoints".
  • Compliance alignmentdocs/reference/compliance-alignment.md updated current strengths list: separated Python protocol test suite (151 tests) and conformance suite (330 tests), added interactive onboarding wizard, Lattice adapter, MCP tool interception verification, MCP gateway output scrubbing, agent support consolidation, governance interface extraction, and protocol wire-format documentation. Added receipt signature verification known limitation. Added v1.5.9 to version history table.
  • Glossarydocs/reference/glossary.md expanded database collections list with account_locks, login_audit, auth_admin_audit, console_audit, operator_usage, passkey_challenges, and settings.
  • GUI enrollmentdocs/guides/gui_enrollment.md added gid and sid fields to local_os_user TypeScript type.
  • Governance envelope exampleprotocol/examples/README.md updated: added transaction hash computation step via governance.GenerateMessageID, updated workload identity example to extract CLI session IDs, user IDs from both CLI and User SAN SPIFFE IDs, and operator session IDs.
  • Finance demodemos/finance/README.md added "pump and dump" to market manipulation detection doctrine rules.
  • Version stamps — Updated across all documentation files to v1.5.9 (architecture, guides, reference, protocol docs).

Removed

  • --vault-require-unlock flag — Removed from README.md and protocol/docs/spec.md CLI flags and environment variable lists (G8E_VAULT_REQUIRE_UNLOCK).

Tests

  • protocol/conformance/test_constants.pyTestAuthJsonConstants class: test_auth_wrapper_key_exists (7 parametrized), test_auth_entries_have_go_const (7), test_auth_entries_have_value (7), test_auth_values_unique_within_wrapper (7, with webauthn_requirements skip), test_auth_go_consts_are_pascalcase (1)
  • protocol/conformance/test_models.py_is_field_definition() helper for schema field detection (checks type, description, required, items, default, _ref), 6 agent model files added to MODEL_FILES, list traversal in TestSchemaCrossReference._find_refs()