Full Release Validation
This page is a release checklist around scripts that exist in this repository. It does not define new product behavior. Run the required checks before a public release branch is pushed. Run optional lanes when the release touches that subsystem or when release hardware/secrets are available.Required Local Gate
Start from the Fased repository root:| Command | Coverage |
|---|---|
pnpm check | Formatting, lint, docs temp guards, auth/channel boundary guards, Swift env-policy generation check. |
pnpm build | TypeScript bundle, plugin SDK d.ts, protocol/build metadata, canvas/export template copies. |
pnpm ui:build | Control UI production build. |
pnpm test:fast | Unit suite through vitest.unit.config.ts. |
pnpm test:ui | Control UI test suite plus raw-window-open guard. |
pnpm test:smoke:agent-flow | Composite Provider -> Agent -> Skill -> Chat -> Task -> Memory -> Channel delivery smoke lane. |
pnpm check:docs | Docs formatting, markdown lint, and internal link audit. |
pnpm exec tsc --noEmit | Repository TypeScript gate without emitting files. |
Gateway and Runtime Smoke
Run this when Gateway routing, websocket/http behavior, node pairing, sessions, or operator pages changed:test:browser-cdp requires a loopback/CDP-capable environment.
Task Run History Smoke
Run this focused browser smoke when Agent > Tasks, webhook triggers, workflow templates, workflow graph review, or approval resume behavior changes:- a webhook trigger can receive a test payload
- the payload creates a task run-history record
- Agent > Tasks opens the source task
- a run-history-backed workflow can be reviewed from that source
- approval/resume continues the same workflow record
- domain authority stays outside the workflow layer
Docker and Install Smoke
Docker checks are slower and require Docker/Podman-compatible host support. Use them for install, onboarding, plugin, gateway-network, and cleanup changes. Focused lanes:Live Provider Checks
Live checks require credentials and should not run in normal local development:MINIMAX_API_KEY, ZAI_API_KEY, or other keys documented by the test itself.
Before treating a live failure as a code regression, separate:
- provider outage or quota/rate limits
- bad release secrets
- model catalog changes
- network/DNS failure on the runner
- actual runtime regression
Mobile and Desktop App Checks
Run only on hosts with the required SDK/toolchain:Docs Release Gate
For docs-only release work:- install paths: local, Docker/Podman, VPS, Tailscale
- Agent-first setup: Models, Channels, Skills, Tools, Memory, Tasks, Services
- wallet funding and Wallet > Skill Grants
- SAT mining start/stop/readiness
- Dashboard, Usage, Logs, Advanced > Debug/Nodes
- screenshots for beginner-critical flows
Manual Product Smoke
Use a fresh temporary Agent and verify:- Onboarding creates or reuses a gateway token and opens an auth-ready Control UI URL.
- Agent > Models signs in or accepts a provider key and saves primary/fallback model refs.
- Chat sends one model-backed reply and Usage records provider/model tokens.
- Agent > Skills creates a local skill, enables it for the Agent, and Chat shows the skill was loaded.
- Agent > Memory enables session archive,
/newor/resetwrites an archive when there is content, and diagnostics show the selected Agent’s roots. - Agent > Channels routes a test Telegram/Discord/other channel account to the selected Agent.
- Agent > Tasks creates a scheduled task inheriting the Agent model/skills policy, creates a webhook trigger, opens source-specific run-history records, and previews or runs a run-history-backed workflow template.
- Wallet page shows role separation and Wallet > Skill Grants does not grant mining/vault roles to generic skills.
- Mining page reads status without starting mining, then start/stop works only with the configured mining wallet and approvals.
- Advanced > Debug remains operator-only and does not duplicate normal setup flows.
Release Notes
Before tagging:- Update user-facing docs for new setup surfaces.
- Add migration notes for config or auth behavior changes.
- Keep stale fork wording out of public docs unless the behavior exists in Fased code.
- Run
git status --shortand review every staged file.