Repository navigation
Verify native subform JSON and complete field-create defaults - #41
Conversation
Retain array order, JSON kinds and literal nested text. Refuse malformed, rounded, overflowing or underflowing numeric tokens. Exercise actual native Joomla re-encoding, lease release and mutation-free replay. Related to #39.
Use the source-backed administrator form defaults for all six reviewed API and native contexts; preserve explicit values and partial updates. Verify omission and update preservation in installed field-default fixtures. Document scoped verification and safe handling of ambiguous post-save400s. Related to #39 and joomengine/joomla-mcp#57.
|
Final-head CI is green for
The actual Joomla 6.1.3 custom-field suite passes 2,421 checks, including the new article subform's native JSON re-encoding, independently read parent value, lease release, replay without mutation and subsequent write. Source ZIP/relocated-runtime checks pass (1,880 assertions). Paired TypeScript fix: joomla-mcp #59. Merge the category-assignment base PR #40 first, then retarget this PR to main. |
|
Resolved the conflicts with main in b618539 after #40 merged. Retained both changelog entries and implementation notes. The merge commit has exactly the same file tree as the previously green PR head (tree 1206d791714c7785200ce0e520b7014eeedf59c4), preserving all runtime and regression fixes. Re-ran the relevant local contracts: 1,461 custom-field + 167 field-default + 653 category-assignment checks passed. Fresh Actions runs are triggered for this merge commit. Updated the PR description to remove the obsolete stacking instructions. |
Joomla re-encodes native subform values (escaped slashes/Unicode, whitespace and object member order), so correct writes previously became uncertain and retained their write lease. Compare the decoded outer JSON only for approval-bound native subform metadata. Preserve list order, object/list kinds, scalar types and nested literal text; refuse malformed, oversized, deeply nested or numerically lossy values.
Also complete omitted field-create
descriptionandparamsfrom Joomla's administrator form defaults in all six reviewed API/native contexts. Explicit values and PATCH behavior are preserved. This prevents the concrete missing non-null SQL payload failure reported in the paired TypeScript issue.Ambiguous HTTP 400 responses still retain uncertainty: Joomla can persist a model and then return 400 when check-in fails. The post-save regression proves that uncertainty, lease retention and mutation-free replay remain intact. Existing uncertain executions require administrator inspection/reconciliation.
Fixes #39. Related to joomengine/joomla-mcp#57. Paired TypeScript PR: joomengine/joomla-mcp#59.
PR #40 is now merged. This PR targets
main; its existing branch incorporates the merged category-assignment base with the subform and field-create fixes preserved.Validation: