Skip to content

fix: export KCL boolean defaults as JSON booleans#63

Merged
robinbraemer merged 1 commit into
mainfrom
codex/export-boolean-defaults
Jun 18, 2026
Merged

fix: export KCL boolean defaults as JSON booleans#63
robinbraemer merged 1 commit into
mainfrom
codex/export-boolean-defaults

Conversation

@robinbraemer

Copy link
Copy Markdown
Member

Summary

  • export KCL True / False defaults as JSON booleans
  • add regression coverage for boolean defaults in input schema export
  • verified the Codezero package schema now emits boolean defaults for runtime and Velorum toggles

Test Plan

  • cargo test -p akua-core export::tests
  • cargo run -p akua-cli -- export --package /Users/robin/Developer/cnap-tech/codezero-package/package.k --format json-schema --out /tmp/codezero-fixed-schema/input.schema.json
  • jq '{runtime_enabled: .properties.runtime_enabled.default, velorum_enabled: .properties.velorum_enabled.default}' /tmp/codezero-fixed-schema/input.schema.json
  • subagent review approved with nits

Rationale: Codezero package input schemas use KCL boolean defaults for UI controls, and the exported JSON Schema must expose those defaults as JSON booleans rather than strings.

Rejected: Treating every KCL default as JSON text first leaves True/False as strings because KCL boolean literals are capitalized while JSON booleans are lowercase.

Risk: Narrow parser change only special-cases KCL True/False before existing JSON parsing fallback.

Tested:\n- cargo test -p akua-core export::tests\n- cargo run -p akua-cli -- export --package /Users/robin/Developer/cnap-tech/codezero-package/package.k --format json-schema --out /tmp/codezero-fixed-schema/input.schema.json\n- jq '{runtime_enabled: .properties.runtime_enabled.default, velorum_enabled: .properties.velorum_enabled.default}' /tmp/codezero-fixed-schema/input.schema.json\n- git diff --check
@robinbraemer robinbraemer merged commit dd71215 into main Jun 18, 2026
2 checks passed
@robinbraemer robinbraemer deleted the codex/export-boolean-defaults branch June 18, 2026 14:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant