Identities for entities did.bot
agent llm did
didbot plan deploy.md
16 kB


id: deploy title: A named version runs somewhere that is not a laptop status: open crates: [didbot-serve, didbot-pds] dependsOn: [agent-accounts] exitCriterion: > A tagged release runs on a host nobody develops on, serving agents over real DNS and TLS, and a documented upgrade replaces it without losing a record. #

deploy #

Everything here runs from a checkout. Nothing says what ships, where it puts its state, how it is upgraded, or what happens when a certificate expires.

The security shape is settled and is a constraint on this epic rather than a question for it: the server runs on a host that is not an agent host, the zone credential is scoped to exactly the one hosted zone this deployment holds and sits on the same host as the signing keys — the server writes its own DNS, so it holds its own Route53 credential — and policy is read from the operator's repository. Deployment states those; this is what it takes to satisfy them.

The marketing site is a separate deployment target from the server this epic ships: site is a static build behind S3 and CloudFront, with its own bucket and distribution to provision — see that epic's open items.

What ships #

Staying up #

Reloading, per component #

Knowing it is alive #

TLS and DNS, mid-revision #

The project owner corrected the original design here: ALB-terminated TLS put plaintext on the wire between the load balancer and the instance, and a Terraform-managed wildcard DNS record meant the server never wrote DNS at all — removing a capability agent-accounts required from the start. infra/pds/ has been reworked to match (the ALB and its ACM certificates are gone; infra/pds/route53.tf now creates only the hosted zone; infra/pds/iam.tf grants the instance write on it; the instance takes an Elastic IP and is reached on 443 directly). The three items below are what is left, and all three depend on work sibling agents are doing in parallel that had not landed as this revision was written.

Done #