confluent-cloud-flink-sql
Installation
SKILL.md
Confluent Cloud Flink SQL
Enforce the CC-Flink-vs-OSS-Flink dialect boundary and the CLI-driven verification loop for any Confluent Cloud Flink SQL work. Apache Flink OSS training data is a trap — CC rejects or silently mishandles a long list of otherwise-valid Flink SQL constructs.
Scope note: this skill's reference material is built around the OSS-vs-CC dialect boundary — traps in constructs that exist in both dialects but behave differently. It does not yet catalog CC-only DDL that has no OSS counterpart (e.g. CREATE MATERIALIZED TABLE, CREATE MODEL/AI_COMPLETE, CREATE AGENT, USE CATALOG). For those, verify directly against the CC Flink SQL reference rather than expecting a trap entry here.
Non-negotiables
- CC Flink ≠ Apache Flink. Verify every API, SQL construct, and runtime behavior against:
- Confluent Cloud Flink docs
- CC Flink SQL reference
- Confluent Terraform provider
- Live
confluent flink shellagainst the user's compute pool
- No mocks in verification. Integration claims require real
confluentCLI runs. Unit tests may mock; anything calling itself "end-to-end verification" may not. - Record decisions somewhere durable. Ask the user where they want dialect traps and verification notes tracked (e.g.
docs/flink-dialect-traps.mdin their project) before writing any new file — don't assume adocs/layout. - Secrets never in repo.
CREATE CONNECTIONparameters are Terraform-injected, never hardcoded. Gitignore.tfvars,.tfstate*,*.secret*from day one. - EXPLAIN before CREATE. Always
EXPLAINa query beforestatement create— catches parse/type errors without consuming CFUs. - Don't invent identifiers. Use
<placeholder>for any topic, table, statement, or resource name you haven't verified.