carlos / platform Public

Merge remote-tracking branch 'origin/main' into worktree-route-records

# Conflicts:
#	internal/registry/registry_test.go
Paul Campbell 4dea961b277e758d63ebe0798265f2e2227c1bf0 parent bd75edeparent a73539f
170 files changed, +36738 −504
  • .github/workflows/ci.yml +70 −0
  • .gitignore +2 −0
  • .impeccable/critique/2026-08-09T15-36-14Z__internal-console-templates.md +75 −0
  • README.md +43 −13
  • apimode.go +474 −15
  • apimode_test.go +87 −4
  • apps.go +160 −6
  • apps_test.go +27 −0
  • cli.go +12 −18
  • cmd/console/main.go +96 −10
  • deploy.go +42 −4
  • deploy_test.go +51 −7
  • docs/superpowers/plans/2026-08-05-customer-fleets.md +299 −0
  • docs/superpowers/plans/2026-08-10-fleets-console.md +489 −0
  • docs/superpowers/plans/2026-08-10-object-storage-primitive.md +883 −0
  • docs/superpowers/plans/2026-08-10-releases-retention.md +1901 −0
  • docs/superpowers/plans/2026-08-11-dashboard-truth-and-scale.md +1328 −0
  • docs/superpowers/plans/2026-08-11-fleet-api-surface.md +97 −0
  • docs/superpowers/specs/2026-08-05-customer-fleets-design.md +208 −0
  • docs/superpowers/specs/2026-08-10-carlos-logs-design.md +215 −0
  • docs/superpowers/specs/2026-08-10-dashboard-truth-and-scale-design.md +145 −0
  • docs/superpowers/specs/2026-08-10-fleets-console-design.md +162 −0
  • docs/superpowers/specs/2026-08-10-object-storage-primitive-design.md +404 −0
  • docs/superpowers/specs/2026-08-10-releases-retention-design.md +268 −0
  • docs/superpowers/specs/2026-08-11-fleet-api-surface-design.md +115 −0
  • fleets.go +381 −0
  • fleets_cli_test.go +791 −0
  • go.mod +5 −4
  • go.sum +113 −8
  • infra/dev/region-pi.md +55 −29
  • infra/eleven-fleet.md +160 −0
  • infra/modules/README.md +10 −7
  • infra/modules/region-remote-host/README.md +23 −7
  • infra/modules/region-remote-host/main.tf +33 −13
  • infra/modules/region-remote-host/variables.tf +2 −1
  • infra/remote-host.md +9 −0
  • instances_cli.go +25 −4
  • internal/activator/activator.go +48 −0
  • internal/activator/activator_test.go +53 −0
  • internal/activator/backend_exec.go +59 −8
  • internal/activator/logsink.go +72 −0
  • internal/activator/logsink_test.go +122 −0
  • internal/applog/chunk.go +124 −0
  • internal/applog/chunk_test.go +120 −0
  • internal/applog/cursor.go +49 −0
  • internal/applog/cursor_test.go +35 −0
  • internal/applog/filter.go +108 −0
  • internal/applog/filter_test.go +91 −0
  • internal/applog/read.go +97 −0
  • internal/applog/read_test.go +106 −0
  • internal/applog/record.go +215 −0
  • internal/applog/record_test.go +133 −0
  • internal/applog/sink.go +195 −0
  • internal/applog/sink_test.go +136 −0
  • internal/console/accountfleet.go +223 −0
  • internal/console/accountfleet_test.go +401 −0
  • internal/console/apicli.go +50 −3
  • internal/console/apicli_test.go +122 −0
  • internal/console/apiinstances.go +191 −6
  • internal/console/apiinstances_test.go +374 −0
  • internal/console/apilogs.go +153 −0
  • internal/console/apilogs_test.go +183 −0
  • internal/console/apiretention.go +164 −0
  • internal/console/apiretention_test.go +161 −0
  • internal/console/apistore.go +686 −0
  • internal/console/apistore_test.go +1139 −0
  • internal/console/appsettings.go +261 −11
  • internal/console/appsettings_test.go +314 −0
  • internal/console/authcli.go +38 −0
  • internal/console/bakecontrols_test.go +3 −3
  • internal/console/confirm.go +4 −4
  • internal/console/deletion_test.go +294 −0
  • internal/console/fleets.go +1240 −0
  • internal/console/fleets_test.go +1510 −0
  • internal/console/flow.go +290 −0
  • internal/console/flow_test.go +308 −0
  • internal/console/ladder.go +1 −1
  • internal/console/listquery.go +151 −0
  • internal/console/listquery_test.go +72 −0
  • internal/console/metricsview.go +16 −5
  • internal/console/metricsview_test.go +61 −6
  • internal/console/overview.go +47 −17
  • internal/console/overview_test.go +197 −18
  • internal/console/ownership.go +75 −0
  • internal/console/server.go +281 −28
  • internal/console/server_test.go +17 −13
  • internal/console/store.go +48 −5
  • internal/console/store_test.go +34 −0
  • internal/console/templates/account_fleet.html +46 −0
  • internal/console/templates/app_instances.html +39 −3
  • internal/console/templates/app_logs.html +50 −0
  • internal/console/templates/app_overview.html +26 −8
  • internal/console/templates/app_releases.html +23 −6
  • internal/console/templates/app_settings.html +56 −0
  • internal/console/templates/appnav.html +1 −0
  • internal/console/templates/fleet_byo.html +78 −0
  • internal/console/templates/fleetdetail.html +102 −0
  • internal/console/templates/flow.html +55 −0
  • internal/console/templates/ladder.html +3 −3
  • internal/console/templates/layout.html +72 −1
  • internal/console/view.go +62 −30
  • internal/console/view_test.go +284 −0
  • internal/domains/reconcile.go +15 −0
  • internal/domains/reconcile_internal_test.go +45 −0
  • internal/edge/edge.go +234 −17
  • internal/edge/fleet_e2e_test.go +612 −0
  • internal/edge/fleet_route_test.go +298 −0
  • internal/edge/fleetapi_e2e_test.go +544 −0
  • internal/edge/storedoor.go +505 −0
  • internal/edge/storedoor_test.go +701 −0
  • internal/edge/tunnel.go +184 −7
  • internal/edge/tunnel_test.go +455 −3
  • internal/fleetapi/fleetapi.go +254 −0
  • internal/fleetapi/fleetapi_internal_test.go +39 −0
  • internal/fleetapi/fleetapi_test.go +366 −0
  • internal/host/agent.go +480 −45
  • internal/host/agent_test.go +467 −0
  • internal/host/fleetbind.go +316 −0
  • internal/host/fleetbind_test.go +593 −0
  • internal/host/fleetidentity.go +95 −0
  • internal/host/fleetidentity_test.go +134 −0
  • internal/host/host_test.go +103 −3
  • internal/host/logship.go +226 −0
  • internal/host/logship_test.go +142 −0
  • internal/host/metrics_loop.go +94 −26
  • internal/host/metrics_loop_test.go +120 −0
  • internal/host/metrics_probes.go +60 −1
  • internal/host/metrics_probes_test.go +50 −0
  • internal/host/retention.go +77 −0
  • internal/host/retention_test.go +173 −0
  • internal/objstore/aws.go +377 −0
  • internal/objstore/aws_test.go +574 −0
  • internal/objstore/contract_test.go +177 −0
  • internal/objstore/memprovisioner.go +174 −0
  • internal/objstore/memprovisioner_test.go +72 −0
  • internal/objstore/objstore.go +116 −0
  • internal/objstore/objstore_test.go +72 −0
  • internal/objstore/provisioner.go +29 −0
  • internal/objstore/walk.go +590 −0
  • internal/objstore/walk_test.go +1410 −0
  • internal/provision/provision.go +48 −0
  • internal/provision/provision_test.go +48 −0
  • internal/provision/reconcile_test.go +41 −0
  • internal/registry/fleets.go +479 −0
  • internal/registry/fleets_test.go +700 −0
  • internal/registry/registry.go +177 −32
  • internal/registry/registry_test.go +195 −0
  • internal/release/candidates.go +124 −0
  • internal/release/prune.go +141 −0
  • internal/release/prune_test.go +287 −0
  • internal/release/release.go +6 −0
  • internal/release/retention.go +125 −0
  • internal/release/retention_test.go +88 −0
  • internal/release/store.go +161 −7
  • internal/release/store_test.go +115 −0
  • internal/release/trash.go +95 −18
  • internal/release/trash_test.go +124 −0
  • internal/release/versions_test.go +95 −0
  • internal/status/contract_test.go +49 −0
  • internal/status/fleet.go +24 −0
  • internal/status/status_test.go +52 −0
  • logs.go +177 −0
  • logs_e2e_test.go +159 −0
  • main.go +25 −1
  • releases_local_test.go +77 −0
  • retention.go +129 −0
  • retention_cli_test.go +57 −0
  • scripts/seed-pi-demo.sh +14 −15
  • store.go +358 −0
  • store_test.go +566 −0
.github/workflows/ci.yml

Loading diff…

.gitignore

Loading diff…

.impeccable/critique/2026-08-09T15-36-14Z__internal-console-templates.md

Loading diff…

README.md

Loading diff…

apimode.go

Loading diff…

apimode_test.go

Loading diff…

apps.go

Loading diff…

apps_test.go

Loading diff…

cli.go

Loading diff…

cmd/console/main.go

Loading diff…

deploy.go

Loading diff…

deploy_test.go

Loading diff…

docs/superpowers/plans/2026-08-05-customer-fleets.md

Loading diff…

docs/superpowers/plans/2026-08-10-fleets-console.md

Loading diff…

docs/superpowers/plans/2026-08-10-object-storage-primitive.md

Loading diff…

docs/superpowers/plans/2026-08-10-releases-retention.md

Loading diff…

docs/superpowers/plans/2026-08-11-dashboard-truth-and-scale.md

Loading diff…

docs/superpowers/plans/2026-08-11-fleet-api-surface.md

Loading diff…

docs/superpowers/specs/2026-08-05-customer-fleets-design.md

Loading diff…

docs/superpowers/specs/2026-08-10-carlos-logs-design.md

Loading diff…

docs/superpowers/specs/2026-08-10-dashboard-truth-and-scale-design.md

Loading diff…

docs/superpowers/specs/2026-08-10-fleets-console-design.md

Loading diff…

docs/superpowers/specs/2026-08-10-object-storage-primitive-design.md

Loading diff…

docs/superpowers/specs/2026-08-10-releases-retention-design.md

Loading diff…

docs/superpowers/specs/2026-08-11-fleet-api-surface-design.md

Loading diff…

fleets.go

Loading diff…

fleets_cli_test.go

Loading diff…

go.mod

Loading diff…

go.sum

Loading diff…

infra/dev/region-pi.md

Loading diff…

infra/eleven-fleet.md

Loading diff…

infra/modules/README.md

Loading diff…

infra/modules/region-remote-host/README.md

Loading diff…

infra/modules/region-remote-host/main.tf

Loading diff…

infra/modules/region-remote-host/variables.tf

Loading diff…

infra/remote-host.md

Loading diff…

instances_cli.go

Loading diff…

internal/activator/activator.go

Loading diff…

internal/activator/activator_test.go

Loading diff…

internal/activator/backend_exec.go

Loading diff…

internal/activator/logsink.go

Loading diff…

internal/activator/logsink_test.go

Loading diff…

internal/applog/chunk.go

Loading diff…

internal/applog/chunk_test.go

Loading diff…

internal/applog/cursor.go

Loading diff…

internal/applog/cursor_test.go

Loading diff…

internal/applog/filter.go

Loading diff…

internal/applog/filter_test.go

Loading diff…

internal/applog/read.go

Loading diff…

internal/applog/read_test.go

Loading diff…

internal/applog/record.go

Loading diff…

internal/applog/record_test.go

Loading diff…

internal/applog/sink.go

Loading diff…

internal/applog/sink_test.go

Loading diff…

internal/console/accountfleet.go

Loading diff…

internal/console/accountfleet_test.go

Loading diff…

internal/console/apicli.go

Loading diff…

internal/console/apicli_test.go

Loading diff…

internal/console/apiinstances.go

Loading diff…

internal/console/apiinstances_test.go

Loading diff…

internal/console/apilogs.go

Loading diff…

internal/console/apilogs_test.go

Loading diff…

internal/console/apiretention.go

Loading diff…

internal/console/apiretention_test.go

Loading diff…

internal/console/apistore.go

Loading diff…

internal/console/apistore_test.go

Loading diff…

internal/console/appsettings.go

Loading diff…

internal/console/appsettings_test.go

Loading diff…

internal/console/authcli.go

Loading diff…

internal/console/bakecontrols_test.go

Loading diff…

internal/console/confirm.go

Loading diff…

internal/console/deletion_test.go

Loading diff…

internal/console/fleets.go

Loading diff…

internal/console/fleets_test.go

Loading diff…

internal/console/flow.go

Loading diff…

internal/console/flow_test.go

Loading diff…

internal/console/ladder.go

Loading diff…

internal/console/listquery.go

Loading diff…

internal/console/listquery_test.go

Loading diff…

internal/console/metricsview.go

Loading diff…

internal/console/metricsview_test.go

Loading diff…

internal/console/overview.go

Loading diff…

internal/console/overview_test.go

Loading diff…

internal/console/ownership.go

Loading diff…

internal/console/server.go

Loading diff…

internal/console/server_test.go

Loading diff…

internal/console/store.go

Loading diff…

internal/console/store_test.go

Loading diff…

internal/console/templates/account_fleet.html

Loading diff…

internal/console/templates/app_instances.html

Loading diff…

internal/console/templates/app_logs.html

Loading diff…

internal/console/templates/app_overview.html

Loading diff…

internal/console/templates/app_releases.html

Loading diff…

internal/console/templates/app_settings.html

Loading diff…

internal/console/templates/appnav.html

Loading diff…

internal/console/templates/fleet_byo.html

Loading diff…

internal/console/templates/fleetdetail.html

Loading diff…

internal/console/templates/flow.html

Loading diff…

internal/console/templates/ladder.html

Loading diff…

internal/console/templates/layout.html

Loading diff…

internal/console/view.go

Loading diff…

internal/console/view_test.go

Loading diff…

internal/domains/reconcile.go

Loading diff…

internal/domains/reconcile_internal_test.go

Loading diff…

internal/edge/edge.go

Loading diff…

internal/edge/fleet_e2e_test.go

Loading diff…

internal/edge/fleet_route_test.go

Loading diff…

internal/edge/fleetapi_e2e_test.go

Loading diff…

internal/edge/storedoor.go

Loading diff…

internal/edge/storedoor_test.go

Loading diff…

internal/edge/tunnel.go

Loading diff…

internal/edge/tunnel_test.go

Loading diff…

internal/fleetapi/fleetapi.go

Loading diff…

internal/fleetapi/fleetapi_internal_test.go

Loading diff…

internal/fleetapi/fleetapi_test.go

Loading diff…

internal/host/agent.go

Loading diff…

internal/host/agent_test.go

Loading diff…

internal/host/fleetbind.go

Loading diff…

internal/host/fleetbind_test.go

Loading diff…

internal/host/fleetidentity.go

Loading diff…

internal/host/fleetidentity_test.go

Loading diff…

internal/host/host_test.go

Loading diff…

internal/host/logship.go

Loading diff…

internal/host/logship_test.go

Loading diff…

internal/host/metrics_loop.go

Loading diff…

internal/host/metrics_loop_test.go

Loading diff…

internal/host/metrics_probes.go

Loading diff…

internal/host/metrics_probes_test.go

Loading diff…

internal/host/retention.go

Loading diff…

internal/host/retention_test.go

Loading diff…

internal/objstore/aws.go

Loading diff…

internal/objstore/aws_test.go

Loading diff…

internal/objstore/contract_test.go

Loading diff…

internal/objstore/memprovisioner.go

Loading diff…

internal/objstore/memprovisioner_test.go

Loading diff…

internal/objstore/objstore.go

Loading diff…

internal/objstore/objstore_test.go

Loading diff…

internal/objstore/provisioner.go

Loading diff…

internal/objstore/walk.go

Loading diff…

internal/objstore/walk_test.go

Loading diff…

internal/provision/provision.go

Loading diff…

internal/provision/provision_test.go

Loading diff…

internal/provision/reconcile_test.go

Loading diff…

internal/registry/fleets.go

Loading diff…

internal/registry/fleets_test.go

Loading diff…

internal/registry/registry.go

Loading diff…

internal/registry/registry_test.go

Loading diff…

internal/release/candidates.go

Loading diff…

internal/release/prune.go

Loading diff…

internal/release/prune_test.go

Loading diff…

internal/release/release.go

Loading diff…

internal/release/retention.go

Loading diff…

internal/release/retention_test.go

Loading diff…

internal/release/store.go

Loading diff…

internal/release/store_test.go

Loading diff…

internal/release/trash.go

Loading diff…

internal/release/trash_test.go

Loading diff…

internal/release/versions_test.go

Loading diff…

internal/status/contract_test.go

Loading diff…

internal/status/fleet.go

Loading diff…

internal/status/status_test.go

Loading diff…

logs.go

Loading diff…

logs_e2e_test.go

Loading diff…

main.go

Loading diff…

releases_local_test.go

Loading diff…

retention.go

Loading diff…

retention_cli_test.go

Loading diff…

scripts/seed-pi-demo.sh

Loading diff…

store.go

Loading diff…

store_test.go

Loading diff…