Manage Group Lookups
Purpose
Provides task-specific setup planning, routing, export, import, and validation guidance for Manage Group Lookups under Trading Community Foundation.
Setup Task Skill Contract
- task_code:
HZ_MANAGE_GROUP_LOOKUPS - task_name:
Manage Group Lookups - parent_skill_id:
cx.customer-data-management.trading-community-foundation - pillar:
CX - offering:
Customer Data Management - functional_area:
Trading Community Foundation - functional_area_code:
ORA_HZ_CDM_FOUNDATION - available_flag:
Y - export_import_supported_flag:
Y - csv_export_import_supported_flag:
Y - source_catalog:
knowledge/setup-task-catalog/effective/setupTasksAll.json
Usage
Use this skill when planning, sequencing, exporting, importing, or validating setup data for Manage Group Lookups under Trading Community Foundation.
Setup Task Metadata
- Task name:
Manage Group Lookups - Task code:
HZ_MANAGE_GROUP_LOOKUPS - Available:
Y - Export/import supported:
Y - CSV export/import supported:
Y - CSV export/import routing:
supported
CSV Export, Import, and Validation Workflow
CSVExportImportSupportedFlag is Y for this task.
- Export setup task data with
shared.setup-export.task-level-export. - Validate setup task data with
shared.validation.setup-data-validator. - Validate reference data with
shared.validation.reference-data-validator. - Route every import exclusively through
core.data-loader. - For an FSM ZIP, preserve the archive unchanged, require the exact case-sensitive member basename
ASM_SETUP_CSV_METADATA.xml, and require exactly one metadata task identity equal toHZ_MANAGE_GROUP_LOOKUPS. - Let Core Data Loader prepare the final immutable upload artifact, then invoke its
data-loadTask Hook immediately before approval and upload. Require the Task Hook validation envelope to remain bound to that archive's SHA-256. - Require the user's separate explicit approval of the exact immutable preview. Any source, archive, environment, task identity, validation result, or approval change restarts the Core Data Loader and Task Hook lifecycle.
- Core Data Loader owns UCM upload, initiation payload construction, endpoint and FSM routing selection, accepted-request reporting, and later status diagnostics. This pillar skill must not select an adapter, endpoint, loader routing field, or retry policy.
Use this task metadata:
- Offering:
Customer Data Management - Functional area / Setup Object:
Trading Community Foundation - Setup task name:
Manage Group Lookups - Setup task code:
HZ_MANAGE_GROUP_LOOKUPS
Inputs
natural_language_requestfusion_environment_contextlookup_type_or_meaninglookup_code_and_named_changessetup_data_artifactproject_id
Outputs
lookup_resultsetup_data_resultdiagnosticsskill_run_recordtoken_usage_record
Implementation Notes
Use the parent functional-area skill cx.customer-data-management.trading-community-foundation for functional-area sequencing and scope decisions. Track token usage for any generated project artifact or skill-run record using the manifest policy.
Ownership and review
- Owner: CX Customer Data Management pillar team.
- Functional reviewer: CX Customer Data Management Pillar Lead or a Trading Community Foundation SME.
- Framework reviewer: FSCR A-Team/core reviewer.
- QA reviewer: required when lookup read, mutation, validation, export, or import behavior changes.
Reviewer guidance is in the body because the current manifest schema has owner_team but no reviewer field.
Task-specific lookup baseline
| Lookup type | Meaning or scope | Configuration level | Evidence and restriction |
|---|---|---|---|
HZ_HOUSEHOLD_DFLT_NAMES | Default Household Name | Extensible | Protect seeded codes; allow describe-backed custom-code maintenance. |
HZ_HOUSEHOLD_LIFESTYLES | Household Lifestyle | User | Confirmed task member; Standard REST returned U. |
HZ_HOUSEHOLD_OWNERSHIPS | Household Ownership | User | Confirmed task member; Standard REST returned U. |
HZ_HOUSEHOLD_SEGMENTS | Household Segment | User | Confirmed task member; Standard REST returned U. |
HZ_HOUSEHOLD_TYPES | Household Type | User | Confirmed task member; Standard REST returned U. |
HZ_PARTY_GROUP_TYPES | Group Type | User | Confirmed task member; Standard REST returned U. |
HZ_WEALTH_RANGES | Household Wealth Range | User | Confirmed task member; Standard REST returned U. |
ANNUAL_INCOME_RANGES | Annual Income Ranges | User | Confirmed task member; Standard REST returned U. |
Task membership was read from the configured Fusion task page, and every exact member was independently retrieved from standardLookups on 2026-08-07. Reconfirm category and configuration level with a current GET. Do not extend this inventory by inference. See ora_reference_lookups.md.
Supported and unsupported operations
| Request | Support |
|---|---|
| List lookup types belonging to this task | Supported for the eight exact baseline members above. |
| Show codes and values or retrieve one exact code | Read-only, no approval, after exact task membership and lookup-category resolution. |
| Create a custom code | Conditional for a confirmed User type or an allowed Extensible custom code after duplicate, seed, configuration, and describe checks. |
| Update meaning, description, dates, display sequence, or enabled state | Conditional only for the named field at the strict intersection of Oracle configuration rules and current describe metadata. |
| Delete a code | Conditional only for a proven custom code in a confirmed User or permitted Extensible type. |
| Export task setup data | Supported through shared.setup-export.task-level-export because the exact catalog CSV flag is Y. |
| Validate and import task setup data | Supported through core.data-loader only after shared validation, Task Hook validation of the exact immutable archive, and separate explicit approval. |
| Change lookup type/code identity, configuration level, category, module, tag, or seeded identity | Unsupported unless an exact current Oracle contract explicitly permits the named field; otherwise refuse. |
Never silently upsert. Reject a custom code beginning with ORA_. Treat CreatedBy == SEED_DATA_FROM_APPLICATION as seeded-origin evidence; use LastUpdatedBy only for audit and never guess seed status from a code name.
Configuration-level and manual mutation contract
- Extensible (
HZ_HOUSEHOLD_DFLT_NAMES): protect seeded codes; permit REST-describedMeaning,Description, andDisplaySequence, and permit state/date/create/delete operations only for a proven custom code. Do not changeTag. - User (the other seven members): permit REST-described
Meaning,Description,DisplaySequence,EnabledFlag, dates, andTag; permit supported custom create/delete after seed checks. - Protect lookup type/code identity, module, security, configuration level, category, and seeded identity. Current GET and describe metadata remain binding.
Every manual mutation must:
- Resolve exactly one configured Fusion environment.
- GET the exact lookup type and exact code when applicable.
- Retrieve or use current cached describe metadata for the resolved resource family.
- Validate task membership, configuration level,
CreatedByseeded-origin evidence, dates, reserved prefix, and named writable fields. - Show one exact redacted preview containing environment, method, endpoint, before/after values, payload, impact, and preview fingerprint.
- Require explicit approval bound to that environment, target, method, payload, and fingerprint.
- Send exactly one POST, PATCH, or DELETE through
core.fusion-api.apps-commonandcore.fusion-api.rest-api-client. - Never automatically retry a mutation and never enable upsert.
- Verify with a separate GET.
- Report verified success, unverified success, refusal, or classified failure distinctly.
Read-only listing and retrieval require no approval.
Task CSV export contract
Route export to shared.setup-export.task-level-export with exact TaskCode: HZ_MANAGE_GROUP_LOOKUPS. The owning exporter must create one task CSV export, capture and monitor its ProcessId, download immutable FileContent only after success, retrieve ProcessLog after failure, and save the ZIP or diagnostic under the supplied project workspace. Do not implement export HTTP, polling, or ZIP processing here.
FSM ZIP validation and import contract
- Run
shared.validation.setup-data-validatorandshared.validation.reference-data-validatorfor task-local setup and reference checks. - Route the import only to
core.data-loader; this pillar skill supplies the exact task context and rules but never selects or invokes an import adapter or endpoint. - Detect an FSM ZIP only when a member has the exact case-sensitive basename
ASM_SETUP_CSV_METADATA.xml. - Reject missing, duplicate, unreadable, encrypted, unsafe-path, or ambiguous metadata.
- Parse metadata without rewriting the archive and require exactly one task identity equal to
HZ_MANAGE_GROUP_LOOKUPS. - Preserve the archive bytes and SHA-256 through validation, Task Hook preview, approval, and execution.
- After Core Data Loader prepares the final immutable upload artifact, require its
data-loadTask Hook to evaluate this task's compiledora-resourcerules and issue the validation envelope bound to the exact archive SHA-256. - Require a later standalone explicit approval of that exact immutable preview. A changed source, archive, environment, task identity, rule result, or approval invalidates the envelope and restarts validation.
- Let Core Data Loader own UCM upload, FSM initiation routing and payload construction, accepted-request reporting, and any later status or ProcessLog retrieval. Do not reconstruct its envelope or locally choose an endpoint, adapter, routing field, or retry behavior.
- Submit only once under the current Core Data Loader contract. If Task Hook validation or approval is missing, stale, or mismatched, stop with
approval_blockerbefore any POST. - Treat a later Run Book or Journey
updateProgressfailure as a separate synchronization result. Do not change an accepted FSM import to failed, and never retry or resubmit the import because progress synchronization failed.
Natural prompts
Show the Group Lookups in the configured environment.Show the values for <lookup meaning or exact lookup type>.Add lookup code <code> with meaning <meaning> to <lookup type>.Change the meaning of <code> in <lookup type>.Disable <code> in <lookup type>.Delete custom lookup code <code> from <lookup type>.Export Manage Group Lookups setup data.Validate and import this Manage Group Lookups export.
Resolve an unambiguous request directly; do not ask the user to choose an internal operation name.
Error and diagnostic contract
| Failure class | Use |
|---|---|
input_validation | Missing environment, invalid code/date/flag, changed artifact, or unsafe ZIP. |
catalog_or_metadata_mismatch | Task membership, category, level, describe, exact TaskCode, CSV flag, or adapter contract cannot be proven. |
auth_expired_or_invalid | Cached authentication rejected; refresh once only under repository cache policy. |
authorization_or_privilege | Access remains denied or the task/resource privilege is missing. |
transport_or_environment | Environment, VPN, DNS, or connection failure. Retry only bounded reads. |
fusion_api_error | Fusion rejects the one approved request; report status and ECID when available. |
process_timeout | Export/import polling window expires; preserve TaskCode, ProcessId, last status, and next-check path. |
process_failed | Export/import completes with errors; preserve ProcessLog/status and partial results. |
artifact_persistence | A required ZIP, diagnostic, result, run record, or token log cannot be saved. |
approval_blocker | Preview is missing, stale, changed, or declined. |
Durable diagnostics include status, stage, failure class, message, recommended action, environment, redacted endpoint, artifact references, ProcessId/ECID, completed checks, and verified side effects. Never persist credentials, tokens, authorization headers, customer data, signed URLs, or sensitive payloads.
Synthetic behavior checks
| Scenario | Expected result |
|---|---|
| General read with incomplete membership evidence | Return only confirmed types, label the inventory incomplete, and do not infer additions. |
| System-code state change | Refuse before preview unless the exact field is explicitly permitted by current rules and describe. |
| Custom-code update | Exact GET, category/level/seed/describe validation, one preview, approval, one mutation, separate GET verification. |
| Wrong-task FSM ZIP | Refuse before import because metadata does not equal HZ_MANAGE_GROUP_LOOKUPS. |
| Task-local import route selection | Refuse before POST; Core Data Loader owns endpoint, adapter, routing-field, and retry selection. |
| Missing or stale Task Hook validation envelope | Fail closed with approval_blocker; do not upload, initiate, or reconstruct an envelope. |
| Valid exact-task FSM archive | Preserve bytes and hash, pass exact task context to Core Data Loader, complete Task Hook validation and separate approval, then let Core Data Loader execute once. |
Persistence
When project_id is supplied, persist artifacts under the manifest paths, append a run record under project/{project_id}/state/runs, and append token usage under the shared token log. Repository-only authoring does not create a project workspace. Fail closed when required authority, membership, category, metadata, privilege, adapter, approval, or safe destination evidence is absent.


