Obtain a machine-readable status report without generating code, granting consent, loading training data or writing files. Error conditions keep their ordinary R error semantics.
custom_model_feedback(x)An approved custom model or a captured error condition from
create_custom_model().
A passive version-1 list with status, stage/code, next action, bounded questions/details, candidate/request identities and remaining phase budgets. NULL counts mean unavailable historical evidence, not unlimited attempts.
Status is approved, review_required, needs_input or failed.
Business questions are provider proposals, not verified input errors.
Error-contract details have package-generated questions and provenance:
details$error_contract identifies the reason, affected field/code, phases,
model mode, example index and whether independent caller input is required.
Declared errors need matching error examples and numerical controls.
Conflicting business/source contracts also return needs_input.
Remaining counts
do not authorize retries or execution; rerun create_custom_model() with
clearer instructions or examples instead. Approved envelopes do not retain
attempt histories, so those counts are NULL. Older models may lack resolved
inputs. The accessor validates model integrity and can reject altered records.
Authoring errors carry this report in feedback; other captured errors
receive a generic report. Foreign or altered attached feedback is rebuilt
without mutating the supplied condition. Unknown stage/policy is not invented.
needs_user_input covers business questions and manual candidate review.
Catching an error never converts it into an enrollable model. Private raw
rows, source and arbitrary exception text are not included. Column names and
provider-visible questions may still be confidential. There is no automatic
upload, retry or approval.
failure <- tryCatch(create_custom_model(), error = identity)
custom_model_feedback(failure)
#> $status
#> [1] "failed"
#>
#> $stage
#> [1] "interaction"
#>
#> $code
#> [1] "invalid_input"
#>
#> $message
#> [1] "The operation did not produce an approved model. Inspect the condition and supplied inputs before taking further action."
#>
#> $next_action
#> [1] "correct_inputs"
#>
#> $needs_user_input
#> [1] FALSE
#>
#> $approval_mode
#> NULL
#>
#> $version_id
#> NULL
#>
#> $contract_id
#> NULL
#>
#> $draft_id
#> NULL
#>
#> $revision
#> NULL
#>
#> $request_id
#> NULL
#>
#> $attempts
#> $attempts$used
#> $attempts$used$contract
#> NULL
#>
#> $attempts$used$source
#> NULL
#>
#>
#> $attempts$limit_per_phase
#> NULL
#>
#> $attempts$remaining
#> $attempts$remaining$contract
#> NULL
#>
#> $attempts$remaining$source
#> NULL
#>
#>
#>
#> $questions
#> list()
#>
#> $questions_provenance
#> NULL
#>
#> $details
#> list()
#>
#> $resolved_inputs
#> list()
#>
#> $validation
#> $validation$technical_passed
#> [1] FALSE
#>
#> $validation$expectation_provenance
#> NULL
#>
#> $validation$checks
#> list()
#>
#> $validation$business_correctness_guaranteed
#> [1] FALSE
#>
#>