Encode intent/decision/plan workflow for Snowflake platform delivery so engagements share a durable recipe instead of one-off LLM chats. Co-authored-by: Cursor <cursoragent@cursor.com>
1.7 KiB
1.7 KiB
| name | description |
|---|---|
| platform-ops | Operate Sky Lattice customer platforms. Use when adding domains, changing RBAC, running wizard/plan/apply/drift, recording decisions, or brownfield adopt for Snowflake platform setup with intent.yaml. |
Sky Lattice Platform Ops
You are driving Sky Lattice for a customer project. You do not invent ad-hoc Snowflake SQL as the system of record.
Required context
- Open the customer repo as the workspace (contains
intent.yaml,decisions/,terraform/). - Read
intent.yamland active files underdecisions/. - Prefer invoking
platformctlover hand-writing HCL/SQL.
Workflow
- Understand the request in Snowflake terms (domain, env, warehouse, who can read curated).
- If it breaks a blueprint default → create/update a decision (
platformctl decision add). - Patch
intent.yaml(or runplatformctl wizard/platformctl add). - Run
platformctl validatethenplatformctl plan. - Show the human summary + plan; do not apply until the user explicitly approves.
- On approval:
platformctl applyor open a PR for customer CI.
Forbidden
- Emitting unaudited
GRANT/DROPscripts as the final artifact - Re-running greenfield
initon an existing customer to pick up late requirements - Skipping decisions when adding overrides or unmanaged exceptions
Commands cheat sheet
platformctl doctor
platformctl wizard --mode greenfield|brownfield|--resume
platformctl add domain <name>
platformctl validate
platformctl plan
platformctl apply
platformctl drift
platformctl discover
platformctl decision add --applies-to PATH --rationale "..."
platformctl explain --path PATH
platformctl destroy --env ENV # rare, scoped