Manage Job Roles
Purpose
Provide a controlled, cross-pillar method to create, update, redesign and process deletion requests for individual custom roles, and to export, validate and approval-gate the import of the Manage Job Roles FSM setup task. Delegate transport and live import execution to the declared shared and core dependencies. Prepare user-specified role values only against a verified FSM CSV template, retaining its headers, metadata and supported operations.
Export and move the FSM setup task Manage Job Roles only through the
declared dependency workflows. The catalog identity is task code
ASXS_MANAGE_JOB_ROLES; require a current catalog or live-task lookup to
confirm that its export/import flags remain supported before execution.
Scope and boundaries
- Accept creation, update, redesign and deletion requests for individual custom
roles. Prepare only operations supported by the current FSM CSV contract;
execute supported changes through
core.data-loader. - Support task-level FSM CSV export and import of an exported, supplied or template-conformant candidate archive.
- Honor the user's role design and explicit changes in this skill. Preserve unrelated fields and memberships; do not substitute another skill's missing execution classification for this declared FSM/Data Loader route.
- Do not call Fusion, OAuth, UCM, REST, FSM, or loader commands directly.
shared.setup-export.task-level-exportowns export;core.data-loaderowns every import preflight, upload, initiation, and monitoring route. - Treat a changed archive, source scope, target environment, or validation result as a new request that must pass all gates again.
Required preflight
- Resolve the project workspace, requested operation, source and target environments, and the exact job-role scope. Require source and target to be distinct for a migration request; require explicit confirmation for a same-environment restore.
- Confirm the exact task name and code with
shared.setup-export.task-level-exportand verify its currentCSVExportImportSupportedFlagisY. If the task is ambiguous, unavailable, or unsupported, record a catalog-mismatch diagnostic and stop. - Confirm the operator has Functional Setup Manager export access in the source and Data Loader import privileges in the target. Do not request or expose credentials, access tokens, or tenant secrets.
- Record the source/target identities, task code, scope, and a redacted execution plan in the project workspace before any side effect.
Individual custom-role operations
| Requested operation | Preparation and execution boundary |
|---|---|
| Create | Prepare a custom-role definition and explicit hierarchy or privilege membership rows using the verified template. |
| Update | Identify the existing custom role by exact code; change only the requested supported definition fields or memberships. |
| Redesign | Prepare an explicit before/after plan for the requested role, hierarchy and direct privilege changes. Use ADD for additions and REMOVE for requested membership removals. |
| Delete a hierarchy or privilege membership | Retain a row identifying the parent and member and set the documented membership action to REMOVE. Removing a CSV row is not a deletion operation. |
| Delete an individual role | Accept and scope the request, then confirm an explicit whole-role deletion operation in current Oracle guidance and the target's FSM import contract. Execute only if that operation is supported by Data Loader's selected FSM route. The existing role-definition template has no deletion-action column; do not invent DELETE, treat membership REMOVE as role deletion, or silently switch to browser, REST, SCIM or HDL. If no supported operation is established, record the operation-support gap and required next action. |
Creation, updates and redesign are intentional changes in the selected target; they are not automatically same-environment restores. Preserve source metadata and construct a new candidate before validation. Once validated, leave the archive unchanged through the Data Loader approval and execution steps.
Do not edit or delete Oracle-seeded roles as if they were custom roles. Role code changes, user provisioning and data-security-policy changes require an explicit supported contract; this CSV route does not add or remove direct data-security policies. Inherited data access can change when memberships change.
For deletion or removal, identify the exact affected role and memberships and show the intended removal in the operation plan before Data Loader's approval preview. Do not infer deletion from an omitted row, a blank value or a redesign request. Keep template-export auto-authorization separate from actual role mutations; Core Data Loader remains the authoritative import approval gate.
Export Manage Job Roles
- Route the export to
shared.setup-export.task-level-exportwith task nameManage Job Roles, task codeASXS_MANAGE_JOB_ROLES, the source environment, and project ID. - Let that skill perform the task lookup, support-flag validation, export process creation, polling, download, and project export persistence. Do not substitute a template export for a data export.
- Preserve the returned ZIP unchanged. Register its path, SHA-256, process ID, task identity, source environment, and export timestamp as the export record.
- On an export timeout or failure, preserve the task code, process ID, last status, process log reference, elapsed wait, and next-check path. Do not start another export process automatically.
Template-first import preparation
Read FSM input preparation when the user needs help with the template. Accept plain-language requirements, safely extract the package, explain the columns and prepare the candidate; do not require the user to understand or populate the CSV before work can start.
For user-specified custom role data, use the target environment's task-level
CSV template/spec package through shared.setup-export.task-level-export.
Template acquisition is not a migration or a same-environment restore.
Automatically authorize and execute the template/spec export needed to prepare
a user-requested role import; do not ask for a separate template-export approval.
This user-authorized exception applies only to setupTaskCSVTemplateExports
for the selected task and environment. It does not authorize populated data
exports, uploads, role imports, or retries after an uncertain POST outcome.
Retain identity, privilege, catalog, payload and audit checks, and leave actual
import approval to core.data-loader. Verify the template
supports every requested field and hierarchy reference; do not invent values,
columns, category codes or an IP-access encoding.
Oracle documents role code, name, description, category and all-IP-address
access in Functional Security Custom Roles, plus parent/member codes and
ADD/REMOVE operations in the hierarchy file. Direct data-security policies are
not included in this CSV route. Consult
the Oracle CSV role contract
and CSV package editing guidance.
The target's template and import validations remain authoritative for a new
role; catalog flags alone do not prove the complete supplied request is valid.
This workflow uses core.data-loader for execution, never browser creation.
- Unless the user explicitly overrides this sequence, export the task first and provide that export as the import template before asking for import content. Explain that the template establishes the supported archive and file structure; it is not approval to import.
- When the user provides an input file, compare it with the export template for file names, headers, column order, encoding, required values, and task-specific references. Help correct structural defects in a separate candidate file; preserve the supplied original and do not silently alter business values.
- Give the user a concise change summary and identify any unresolved values or references. Use the corrected file only after it conforms to the export structure and has been assembled into a new candidate archive using the supported archive shape. That candidate is a new artifact and must pass the validation and approval gates below.
- The user may override the export-first sequence, template choice, or proposed file corrections at any time. Honor that direction, while retaining the required task-identity, validation, and immediate import-approval gates.
Validate the archive for import
- Require the supplied archive to be a non-empty ZIP and bind its SHA-256 to
task code
ASXS_MANAGE_JOB_ROLES, source environment, and target environment. - Route setup-data validation to
shared.validation.setup-data-validatorand preserve the resulting validation evidence. Fail closed on archive-shape, task-identity, scope, catalog, environment, or privilege mismatch. - Do not alter, unpack-and-repack, merge, or otherwise transform the archive after validation. Any change invalidates the evidence and approval preview.
Import the validated archive
- Route the immutable validated archive to
core.data-loaderas an FSM, task-routed import. Provide the task context, target environment, archive SHA-256, and validation evidence. - Let
core.data-loadercomplete its required source and API validation and produce its immutable approval preview. This skill must not bypass or replace the Data Loader route with a direct FSM API, UCM upload, REST call, CSV utility, or browser action. - Present the exact target environment, task code, archive name and SHA-256, validation result, and expected import impact. Stop before the first POST.
- Proceed only after the user gives a separate, immediate approval for that
immutable preview.
core.data-loaderrevalidates the archive and owns the upload, initiation, process monitoring, and diagnostics. - Do not retry an upload, initiation, import, overwrite, or replacement process without a fresh approval. Preserve returned request IDs, process-log references, and redacted diagnostics in the project workspace.
Failure handling
Classify failures as input validation, catalog mismatch, authorization, transport/environment, Fusion API, process timeout, process failed, artifact persistence, or approval blocker. Redact credentials, tokens, customer data, and sensitive role configuration. For any ambiguity or unsafe path, record the blocker and recommended next action, then stop.
Setup Tasks
No setup tasks were supplied when this skill was generated.


