Check PromptKit capabilities without assuming their order

This commit is contained in:
2026-10-12 15:11:13 +00:00
parent 61f0d8806d
commit 8a82620dfc
2 changed files with 23 additions and 5 deletions

View File

@@ -1,6 +1,6 @@
# CommandKit implementation review remediation
Status: R-1 through R-5 are complete; R-6 is open. This document
Status: all six findings are complete. This document
tracks required follow-up work and its completion evidence.
## ConfigKit review baseline and scope
@@ -294,12 +294,13 @@ availability. Formatting and documentation checks passed.
## R-6: Test comparison capability membership rather than its slice position
**Status:** Open. **Priority:** Low. **Category:** Inadvertently strengthened
**Status:** Complete. **Priority:** Low. **Category:** Inadvertently strengthened
test invariant.
**Evidence:** [adapters_test.go](../../integrations/ckprompt/adapters_test.go),
**Evidence:** At the review baseline,
[adapters_test.go](../../integrations/ckprompt/adapters_test.go),
`TestConfigScopeCompareUsesNativeDiffAndLoadsBothEqualSelections`, line 165,
requires `scope.Operations[4] == ckconfig.Diff`. The accepted requirement is that
required `scope.Operations[4] == ckconfig.Diff`. The accepted requirement is that
the bundled scope supports its ordinary operations and comparison; it does not
assign Diff a public position in the returned declaration slice.
@@ -318,3 +319,14 @@ operator ordering contract.
**Completion evidence:** The test still rejects missing comparison wiring or
capabilities, but accepts an equivalent ordering of the same declared operations.
It introduces no new public ordering guarantee or unrelated runtime changes.
**Completed 2026-10-12:** The adapter test now checks comparison wiring and
membership of the five required capabilities using `slices.Contains`, without
requiring a particular position or slice length. Native-result, side-input,
shared-state, and ordered-loader assertions remain intact. Temporary Go overlays
confirmed that the focused test accepts reordered capabilities and rejects
missing Diff or a missing comparison provider. The full ckprompt suite,
including its composed consumer, passed with `GOWORK=off GOTOOLCHAIN=local`,
`-mod=readonly`, and `-count=1`, using fresh copied manifests with only local
prerequisite replacements. Production code and module metadata were unchanged;
the overlays were not retained. Formatting and documentation checks passed.