release-api
GitHub负责审查API契约与客户端生成代码,执行CI/CD流程以部署托管服务及数据库变更,并验证线上发布行为。涵盖版本对比、本地测试、配置检查、部署执行及健康验证,确保向后兼容与服务稳定性。
Trigger Scenarios
Install
npx skills add fastrepl/anarlog --skill release-api -g -y
SKILL.md
Frontmatter
{
"name": "release-api",
"metadata": {
"internal": true
},
"description": "Review Anarlog API contracts and generated clients, deploy required hosted services and database changes, and verify live release behavior."
}
Release API
Review every release, including client-only changes. Inherit scope and session authorization from Release a New Version.
-
Compare changed product behavior and each service's live source SHA against
apps/api,apps/stripe,crates/api-cloud, affected auth/sync/proxy crates,supabase/,apps/api/openapi.gen.json, andpackages/api-client/src/generated. Check auth, scopes, payloads/errors, pagination, data compatibility, and existing client behavior. Record required changes, concrete reuse reasons, or explicit deferrals before freezing the candidate. -
Read
api_ci.yaml,api_cd.yaml,db_ci.yaml, anddb_cd.yamlplus the affected component instructions. Run the full locally reproducible affected jobs and consumer checks. For contract changes, run:cargo test -p api gen_openapi_json pnpm -F @anlg/api-client openapi pnpm -F @anlg/api-client typecheckUse owning generators and verify repeated generation is stable. Test hosted migrations/RLS in an isolated local Supabase stack, never against production.
-
Inspect current service choices and live configuration before deploying. Core, AI, Sync, Gateway, and billing have independent deployment decisions. The billing API and
apps/stripeship together viaapi_cd.yamlwithservice=billing. Do not treat a shared API version/tag as proof every service runs that source. Hosted Postgres has its owndb_cd.yamldeployment history. -
Deploy required backward-compatible hosted changes before dependent desktop or mobile clients. Select the exact approved environment, service and merged source. Use
gh workflow run api_cd.yaml --ref main -f service=<service>andgh workflow run db_cd.yaml --ref mainas appropriate, after reading their current inputs. Verify each run'sheadSha; never ship the combined GitButler workspace. Include every dependency in filtered Docker build contexts. -
Follow deployments to terminal success. Confirm actual serving source/digest, version and role-specific readiness, then exercise affected authenticated behavior with an authorized test account.
/health, an unauthenticated401, or one healthy role does not prove other roles or operations work. Coordinate hosted protocol checks with Release MCP. -
For schema changes, record the selected hosted project, applied migrations, source/run and compatibility checks. Keep shipped SQLite migrations append-only, desktop/mobile schemas compatible, and older clients supported. Follow current drain, migration, continuity, and recovery requirements; successful health checks alone do not establish zero downtime.
Return generated-contract decisions, candidate CI, each service/database's deployed revision and run URL, live evidence, or reuse reason and outstanding work. Reuse a live deployment only when its source includes the required changes; no artificial version bumps or no-op redeploys. Website and Mintlify publication belong to Release Docs, not the API deploy.
Version History
- 088f348 Current 2026-09-23 08:29


