Lifecycle documentation is useful only when state boundaries stay visible. Collapsing "it builds" into "it is deployed" is a common failure mode.
Stages
| Stage | What changes | Typical commands | Evidence |
|---|---|---|---|
| Author | Package source | editor, create | Diff in VCS |
| Validate | Nothing durable | dsl validate, blocklet check, dsl lint | Pass/fail + issue list |
| Local instance | Daemon registration / serve | blocklet run, service start --blocklet | Printed URLs + browser |
| Build | dist/ artifact | blocklet build | File count, manifests, instance: line |
| Local daemon register | Extra blocklet dirs on a running daemon | deploy <path> (no flags), service start --blocklet | deploy list |
| Local DID Space publish | Developer space tree under /blocklets/<id>/ | deploy <path> --publish | deploy show / list --published |
| Remote DID Space publish | Remote server write | deploy <path> --server <url> | Auth + remote inspection — often unverified here |
| Pages / fleet deploy | CDN/Pages project | blocklet deploy, blocklet fleet, blocklet instance | Platform-specific verify |
Default path for developers
create → validate → local run → browser accept
↘ build (when you need an artifact)Only after local acceptance, choose a publish path that matches the release goal. Details and honesty markers: Publish and deploy.
Child pages
| Page | Focus |
|---|---|
| Test and diagnose | Failure modes, what each check means |
| Publish and deploy | Local publish vs remote; experimental labels |
Stateful features
If arc blocklet build reports instance: requires /instance DID Space, the package has instance-axis dependencies. Lifecycle for those features includes:
- Package validation (always)
- Local shell/page serve (may succeed without full instance data)
- Bound instance DID Space for real writes (separate proof)
Do not mark stage 3 complete because stage 2 returned HTTP 200.
Stop cleanly
For temporary acceptance:
arc service stopOnly stop the isolated service you started. Persistent developer daemons are an environment choice, not a documentation requirement.