What fields and links make up a generated approval record schema?
A generated release can use JSONL or Parquet tables with stable identifiers that connect requests, rules, delegations, role holders and decision events.
A release can ship as one file per table, in JSONL for readability or Parquet for volume. Each row carries a stable identifier, and links are explicit fields rather than text references.
- `approval_request`: `request_id`, `request_type`, `amount`, `currency`, `risk_flags`, `requester_role_id`, `related_request_ids`, `raised_at`. - `authority_rule`: `rule_id`, `request_type`, `amount_min`, `amount_max`, `risk_condition`, `required_role_id`, `aggregation_scope`, `valid_from`, `valid_to`. - `role_holder`: `role_id`, `holder_id`, `valid_from`, `valid_to`, `absence_status`. - `delegation`: `delegation_id`, `from_role_id`, `to_holder_id`, `scope_rule_ids`, `starts_at`, `ends_at`, `sub_delegation_allowed`. - `conflict_rule`: `rule_id`, `condition`, `effect`, such as exclude or require second approver. - `decision_event`: `event_id`, `request_id`, `approver_id`, `authority_basis` (a rule or delegation id), `decision`, `decided_at`. - `expected_outcome`: `request_id`, `valid_approver_ids`, `expected_decision`, `acceptable_escalations`.
The key link is `authority_basis` on each decision, because it lets a grader check whether the approver's authority was valid at `decided_at`.
Keep `expected_outcome` in a separate file so it can be withheld from training splits. Version the rule and delegation tables together, since a decision is only meaningful against the rules in force at its date.
All values are generated. Field names can be adapted to your own conventions as part of scoping.
Stable keys and explicit foreign links let you join tables, replay decisions and build graders without parsing free text or guessing which record belongs to which.
- Audience:
- Agent developers
- Content type:
- Integration
- Buyer question:
- What can be generated
Content release: r-a220eb6e099b243b
Related questions
- Can the generated authority matrix follow the structure of our own approval process?
- How can a task pack represent a claim settlement split to stay under a limit?
- Which records can a generated approval dataset contain?
- What should I specify when requesting generated authority and approval data?
- What does a generated claims settlement approval case look like?
- Can a generated pack include policy text that conflicts with system records?