pink box error while i try to perform action in tempo

Expression evaluation error [evaluation ID = 339JUBMJ] in rule 'ch_ui_getdetails' at function a!formLayout [line 4]: The contents field on a column layout may only contain components. Received Dictionary at index 3.

this is my interface

a!localVariables(
local!clientdetails:cast(typeof('type!{urn:com:appian:types}CH_Clients'()),
rule!CH_query_getDetails(sid:ri!sid )),
a!formLayout(
label: "Form",
contents: {
a!integerField(
label: "cid",
labelPosition: "ABOVE",
value:index(local!clientdetails,"cid",{}),
saveInto:local!clientdetails.cid,
readOnly:ri!readonly ,

),
a!textField(
label: "cname",
labelPosition: "ABOVE",

readOnly: ri!readonly,
value:index(local!clientdetails,"cname",{}),
saveInto:local!clientdetails.cname

),


if(ri!readonly="false",
{
buttons: a!buttonLayout(
primaryButtons: {
a!buttonWidget(
label: "Submit",
submit: true,
style: "PRIMARY",
value: "submit",
saveInto: {ri!buttonvalue,
a!save(ri!CH_Clients,local!clientdetails)}
)
},
secondaryButtons: {
a!buttonWidget(
label: "Cancel",
value: "submit",
saveInto:ri!buttonvalue,
submit: true,
style: "NORMAL"

)
}
)},{})}
)
)

  Discussion posts and replies are publicly visible