CtrlK
BlogDocsLog inGet started
Tessl Logo

terraform-provider-coralogix

github.com/coralogix/terraform-provider-coralogix

SkillAddedReview
acc-test-helper-client-without-provider-meta

.claude/skills/acc-test-helper-client-without-provider-meta/SKILL.md

Use when an acceptance test panics with 'interface {} is nil, not *clientset.ClientSet' in a CheckDestroy or check helper, or a helper calls testAccProvider.Meta().

68

api-reorders-unordered-list

.claude/skills/api-reorders-unordered-list/SKILL.md

Use when apply fails with 'inconsistent result' where list items swap places (targets[0] now holds targets[1]'s value), or a plan shows reorder-only diffs. Keep prior order when the items match as a set.

72

classic-vs-dynamic-decimal-precision

.claude/skills/classic-vs-dynamic-decimal-precision/SKILL.md

Use when wiring decimalPrecision on a coralogix_dashboard widget. It is a bool on classic widgets and an int32 on dynamic ones, so copying either side's code silently produces the wrong type.

77

create-pr

.claude/skills/create-pr/SKILL.md

Use when creating a PR for a non-trivial bug fix in this repo. Assembles a structured PR description following .github/PULL_REQUEST_TEMPLATE.md with expanded sections for root cause, risks, and test plan. Do NOT use for trivial one-liner fixes.

76

dashboard-variables-v2-wire-shape

.claude/skills/dashboard-variables-v2-wire-shape/SKILL.md

Use when expanding/flattening coralogix_dashboard variables_v2, or editing static values[].label defaults. Build typed SDK VariableV2 structs from flat TF models; wrap value/label, promql, dataprime, scope, and spans shapes.

66

data-enrichments-scoped-replace

.claude/skills/data-enrichments-scoped-replace/SKILL.md

Use when changing coralogix_data_enrichments update semantics or drift tests. Prefer state-ID delete plus add over partial atomic overwrite for scoped replaces.

67

framework-import-dynamic-attributes

.claude/skills/framework-import-dynamic-attributes/SKILL.md

Use when a Terraform Plugin Framework resource import reads required DynamicAttribute values. Handle imported partial state before converting dynamic values.

68

framework-nested-optional-computed-plan-modifier

.claude/skills/framework-nested-optional-computed-plan-modifier/SKILL.md

Use when adding a nested Optional+Computed list/set element fails after apply with null→known. Use UseNonNullStateForUnknown for provider- or backend-generated ids, not configurable defaults.

71

framework-optional-computed-nested-object

.claude/skills/framework-optional-computed-nested-object/SKILL.md

Use when Create fails with 'Received unknown value' on an Optional+Computed SingleNestedAttribute Path targeting a Go struct pointer. Model that field as types.Object.

69

frozen-prior-schema-must-not-share-helpers

.claude/skills/frozen-prior-schema-must-not-share-helpers/SKILL.md

Use when widening a shared coralogix_dashboard widget schema helper like LineChartSchema(). Checks whether dashboard_schema/v1..v3 also use it; prior schemas must stay frozen.

69

generated-create-returns-only-id

.claude/skills/generated-create-returns-only-id/SKILL.md

Use when tfgen fails for a released resource whose Create returns only an id or whose Update returns {}. Names the overrides keys.

67

generator-key-needs-golden

.claude/skills/generator-key-needs-golden/SKILL.md

Use when adding a generator key or branch in tools/iac-codegen. Cover it with a golden fixture. Do NOT use for a resource-only override line.

74

go-directive-bump-needs-ci-go-version

.claude/skills/go-directive-bump-needs-ci-go-version/SKILL.md

Use when raising the go directive in go.mod, or CI fails with 'go.mod requires go >= X (running go Y; GOTOOLCHAIN=local)'. Make CI install the go.mod version.

71

make-testargs-dollar-escaping

.claude/skills/make-testargs-dollar-escaping/SKILL.md

Use when a CI acceptance job running `make testacc` fails with 'Syntax error: Unterminated quoted string', or a -run pattern ending in `$` passes through TESTARGS. Double each `$` for make.

76

manual-validation-harness

.claude/skills/manual-validation-harness/SKILL.md

Use when validating a Coralogix terraform-provider bug fix end-to-end against a real Coralogix environment. Builds the provider locally, runs multi-step Terraform apply/plan scenarios to verify idempotency, and catches perpetual-diff regressions before merge.

75

missing-enum-stays-null

.claude/skills/missing-enum-stays-null/SKILL.md

Use when a missing enum reads as its first value, or a field with x-coralogix-presence flattens to a business value. Keep that reading on the field default.

64

new-enum-attribute-must-not-default-to-unspecified

.claude/skills/new-enum-attribute-must-not-default-to-unspecified/SKILL.md

Use when adding an Optional+Computed enum to a released resource, or a Provider migration job fails with 'expected NoOp, got action(s): [update]'. A static unspecified default breaks upgrades.

66

normalizing-modifier-marks-computed-unknown

.claude/skills/normalizing-modifier-marks-computed-unknown/SKILL.md

Use when a plan is never empty and an attribute the user never configured shows (known after apply) forever, next to a JSON/normalized attribute that shows as unchanged. Explains the framework rule and the two fixes.

68

offline-plan-resource-change-harness

.claude/skills/offline-plan-resource-change-harness/SKILL.md

Use when diagnosing why a Terraform plan is not empty, an attribute is unknown, or a plan modifier misbehaves, without Coralogix credentials. Drives PlanResourceChange directly in a unit test.

71

protocol-baseline-record-on-master

.claude/skills/protocol-baseline-record-on-master/SKILL.md

Use when adding a protocol-baseline golden harness for a resource switch to generated code. Record goldens on master's handwritten resource first so the switch commit's golden diff shows real behavior changes.

71