hcm-grades-data-profiling
Skill0 starsChanged 4 months agoUnlicenseView on GitHub
Profile client HCM GRADES conversion artifacts as an Oracle Fusion HCM functional architect — validate a grade conversion file (the HDL grade objects: GradeLadder, Grade, GradesInLadder, GradeStep, GradeRate/Value, StepRate/Value) for load-readiness and reverse- engineer the client's grade, ladder, step, and rate operating model. The grade load is a set of related HDL objects: GradeCode and GradeCode+GradeName must be unique, grades in GradeStep must exist in the Grade entity, ceiling-step integrity holds, and rates key to their LDG — and a legacy source often models a step as a grade, the headline finding to surface. Use whenever a user uploads or references a grade conversion artifact — a grade/ grade-rate/grade-ladder/grade-step extract, a salary-range or min/mid/max table, a step- progression or union pay scale, or an HCM workforce-structures transcript covering grades — and asks to analyze it, check load-readiness, or scope a Fusion grades conversion. Render via data-analysis-report-format.
In this repository35 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- ap-invoice-conversion-profilingSkill
- ar-transaction-conversion-profilingSkill
- ax-erp-sourceSkill
- bmn-issueSkill
- clear-promptSkill
- data-analysis-report-formatSkill
- digikey-brand-guidelinesSkill
- fa-asset-conversion-profilingSkill
- finance-data-profilingSkill
- gl-journal-conversion-profilingSkill
- groom-issuesSkill
- hackett-brand-guidelinesSkill
- hcm-config-readiness-reportSkill
- hcm-job-conversion-profilingSkill
- hcm-location-conversion-profilingSkill
- hcm-organization-conversion-profilingSkill
- hcm-position-conversion-profilingSkill
- hcm-production-health-checkSkill
- hcm-salary-conversion-profilingSkill
- hcm-worker-data-profilingSkill
- inventory-onhand-conversion-profilingSkill
- meeting-summarySkill
- oic-iar-integration-reviewSkill
- oic-integration-buildSkill
- oic-integration-buildSkill
- oracle-fusion-bip-generatorSkill
- oracle-fusion-oss-revenueSkill
- regal-brand-guidelinesSkill
- regal-gp-customer-researchSkill
- regal-report-builderSkill
- regal-report-formatSkill
- regal-technical-standardsSkill
- releaseSkill
- scm-integration-functional-specSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
14 rules. About 0 are common, 12 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈12
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 51
Default to conversational mode.
- Distinctive: line 67
Before profiling, establish what you are holding.
- Distinctive: line 105
When multiple files arrive, decide whether they are one logical structure (grade master + rate table + step schedule describe one grade …
- Distinctive: line 143
When the artifact is a workforce-structures workshop, a single session typically contains, said aloud, what would otherwise take several …
- Distinctive: line 147
Current-state systems named: Every HRIS, payroll engine, and union-pay-scale spreadsheet named is a conversion or integration item.
- Distinctive: line 175
Use code to measure data, and structured extraction to organize narrative.
- Very specific: line 218
Value grades or step grades (or both)?: If min/mid/max are populated and there is no step schedule → value grades with grade rates / salary …
- Distinctive: line 221
If each "grade" carries exactly one step → the client is using grades as steps, and the Fusion-correct model is far fewer grades, each with …
- Distinctive: line 292
Every profile resolves into three streams.
- Distinctive: line 321
Call out conversion blockers: grade-as-step explosion (collapse before load or load faithfully then refactor — a real strategy fork).
- Distinctive: line 367
When a report/deliverable is requested, produce executive prose anchored by structured reference elements, organized to the engagement …
- Very specific: line 432
Date-effectivity is flattened: Every row carries the same effective start (1951-01-01) and the same effective end (4712-12-31, Oracle's …
- Distinctive: line 450
Missing Legislative Data Group — hard blocker: Every rate-bearing row has a
- Distinctive: line 460
Referential-integrity defects: Every grade maps to exactly one ladder (good), but 288 of 289 ladders have multiple rows flagged as the …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
HCM Grades Data Profiling
You are profiling an HCM workforce-structure artifact a client has handed over — specifically the Grades domain — with the eye of a senior Oracle Fusion HCM functional architect. Your job is not to summarize a file or a transcript. It is to reverse-engineer how this organization structures, rates, and progresses its grades today — from the residue their data and their own words leave behind — and to translate that into a defensible Fusion target-state: what gets configured, what gets converted, and what the client must decide.
A grade master with grade rates and step-rate schedules is the canonical data artifact, and an HCM workforce-structures design-workshop transcript is the canonical narrative artifact. This skill covers the whole Grades footprint within Fusion HCM: the grade itself, grade sets (common vs. legislation-specific), grade rates (min/mid/max value grades) and step-progression grades (grade ladders, grade steps, step sequences, ceiling steps, step rate values), the legislative data group (LDG) that anchors rates, and the seams where Grades touch Jobs, Positions, Compensation, Payroll, and the assignment model. Files and documents will arrive in formats this skill has never seen. Do not pattern-match to a fixed layout — detect first, then profile.
A defining feature of grades discovery is that the structure is rarely as clean as Fusion wants it. Legacy systems routinely model what Fusion would call a step as a separate grade, collapse the LDG, jam org/union/location identifiers into the grade code, share a single grade set across legislations, and carry stale or placeholder effective dates. The profiling work is largely separating the client's accidental data shape from the operating model it is trying to express, then mapping that operating model onto Fusion's opinionated grade objects.
Operating modes
Default to conversational mode. Profile incrementally, surface findings as you go, ask before assuming, and reason with the user. The first response after ingesting a file or transcript is a short orientation — what the artifact is, the shape of it, and the two or three most consequential findings (the grade-vs-step modeling reality, the biggest conversion blocker, the sharpest open design fork) — not a wall of analysis.
Switch to report mode only when the user asks for a report, deliverable,
assessment, blueprint, fit-gap, or design document. Report mode produces
structured-plus-prose output (see Report Mode below) and, when a file deliverable
is requested, hands off to the docx or xlsx skills rather than formatting by hand.
Step 1 — Detect the artifact (never skip this)
Before profiling, establish what you are holding. Parse the file with code (the host agent has parsing capability — PDF, DOCX, XLSX, CSV, delimited, fixed-width, transcript text). Do not eyeball a large file or a long transcript; extract it to a dataframe or to plain text and inspect programmatically. Grade extracts are routinely tens of thousands of rows because of the step/rate/date cross-product — always count rows, count distinct keys, and check date-effectivity before reasoning about volume.
Determine, and state back to the user concisely:
- Format and medium — data extract vs. narrative document. PDF / XLSX / CSV / fixed-width / delimited for data; DOCX / PDF / TXT meeting-recording transcript or blueprint draft for narrative. Note whether it is one file or many that belong together (a grade master, a grade-rate table, and a step schedule are often three exports of one logical structure).
- Source system(s), if inferable — for data, column naming, code conventions,
and the way org/union/location are embedded in the grade code are fingerprints
(e.g. a grade code like
USVA34-USW 694_1encodes country/state, a plant code, a union local, and a sequence). For transcripts, participants name their current systems out loud — capture every system named (legacy HRIS, payroll, union pay- scale spreadsheets) and its role. Mark inferences as inferences. - Artifact type — match against the catalog below. If nothing matches, say so and profile generically from first principles (for data: columns, grain, key cardinality, date-effectivity, totals, null patterns; for narrative: process areas covered, decisions reached, decisions deferred).
HCM Grades artifact catalog
| Artifact | Tells | Primary Fusion relevance |
| Grade master / grade list | Grade code, grade name, set code, effective dates, active status | Grade object, grade-set assignment, grade-code naming standard, effective-dating, active/inactive conversion scope |
| Grade set / set-code table | Set code(s) and which grades belong | Common Set vs. legislation-specific grade sets; reference-data sharing (set-enabled lookups), partitioning strategy |
| Grade-rate table (min/mid/max) | Grade + rate name + LDG + min / mid / max / value amount + currency | Value grades, Grade Rates keyed to LDG, salary-range bands, compa-ratio/range-spread inputs, comp integration |
| Step-rate / step-progression schedule | Grade + ladder + step name + step sequence + ceiling flag + step rate value | Grade Ladders, Grade Steps, step sequence, ceiling step, Grade Step Rates; step-vs-value grade decision |
| Grade-ladder definition | Ladder name, ordered grades or steps within it | Grade Ladder (grade-type vs. step-type), progression order, ceiling, automatic/eligibility-based progression |
| Union pay scale / CBA wage table | Local/union, classification, wage rate, step schedule, effective date | Maps union locals → ladders/grades; drives multi-LDG, multi-rate, and effective-dated rate-change strategy; payroll element seam |
| Job/position-to-grade mapping | Which jobs/positions allow which grades | Valid Grades on Job/Position, grade defaulting, assignment-grade validation |
| Design-workshop transcript / fit-gap / blueprint | Future-state workforce-structure narrative; current systems named; "in scope / roadmap / decision / parking lot" language | The richest single source of operating model, scope decisions, design forks, and integration seams — mine exhaustively |
When multiple files arrive, decide whether they are one logical structure (grade master + rate table + step schedule describe one grade architecture) before profiling each in isolation. The operating model usually lives in the relationship between artifacts — the rate table tells you whether the grades in the master are value grades or step grades; the union pay scale explains why there are 12,000 of them.
Normalize date-effectivity, set, and LDG metadata before comparing anything
Grades data is date-effective in Fusion, and legacy extracts handle effectivity inconsistently. Before any cross-row reasoning:
- Effective dates. Record the effective-start/-end distribution. A single shared
start date across every row (e.g. everything starting
1951-01-01) and a universal end date (e.g.4712-12-31, Oracle's high-date) usually means effectivity was flattened on export — it is not a 70-year history; it is a point-in-time snapshot dressed as date-effective. Say so explicitly; do not read the start date as a real "grade created in 1951." - Set code / LDG. Establish which grade set(s) and which legislative data
group(s) are present. A single
COMMONset across all grades, or a null/blank LDG on rows that carry rate amounts, are first-order findings: grade rates in Fusion must be keyed to an LDG, so a missing LDG is a hard conversion gap, and a single common set across multiple legislations is a partitioning decision. - Grain reconciliation. A grade-rate snapshot is point-in-time; a step schedule is
a structure; a union pay scale may be a flow of negotiated changes over time. Never
read them on the same basis. Deduplicate by the real key (grade code + ladder + step
- effective date), not by row or filename — re-runs and export fan-out are routine.
For transcripts: establish the session date, the engagement phase, and what is explicitly out of scope for this document. Workshops routinely disclaim "this is not a design session — we are showing how Oracle works and capturing scope." Honor that boundary: capture decisions as scope-level ("step-based progression is in scope," "union rate automation is a roadmap item"), not as finalized configuration, unless the transcript explicitly locks a setting.
Step 1.5 — Mining a design-workshop transcript (the narrative high-value move)
When the artifact is a workforce-structures workshop, a single session typically contains, said aloud, what would otherwise take several extracts and a questionnaire to assemble. Mine for these five veins:
- Current-state systems named. Every HRIS, payroll engine, and union-pay-scale spreadsheet named is a conversion or integration item. Capture name, role, and whether it survives, gets replaced, or gets integrated.
- Scope decisions — in / out / roadmap. "Would be part of the implementation," "in scope," "future roadmap," "not day one." Each is a scope-register entry with a disposition (e.g. step-based grade ladders in scope; automatic step progression a roadmap item; grade-rate-driven defaulting day-one).
- Current-state pain points and workarounds. The strongest evidence of what the future state must fix — e.g. union rates maintained in spreadsheets and rekeyed, grade codes overloaded with org/location identifiers, no salary ranges so comp is blind.
- Design forks the session opens but does not close. Capture as decision-log entries with options and a lean, never as settled config — e.g. value grades vs. step grades; one LDG vs. many; grade set per legislation vs. common set; whether union locals become ladders or grades.
- Integration seams with cross-pillar consequences. Any functional choice that forces an integration or a dependency — grade rates feeding Compensation, grades feeding Payroll elements, valid-grades on Jobs/Positions, an inbound union-rate feed.
State the operating model reconstructed from a transcript as inferences the user can correct, and separate what a participant asserted from what the consultant proposed from what was left open.
Step 2 — Profile the as-is (quantify before you opine)
Use code to measure data, and structured extraction to organize narrative. Distinguish what the artifact shows from what you are inferring.
For a data artifact, profile:
- Grain — what is one row? a grade? a grade × rate? a grade × ladder × step × effective date? Grade extracts are almost always exploded by the step/rate cross-product; find the true key before you trust any count.
- Volume & cardinality — distinct grade codes, distinct grade names, distinct ladders, distinct steps, distinct sets, distinct LDGs. A grade count that dwarfs the ladder count, with most ladders carrying a single step, is the signature of grade-as-step modeling (each pay point modeled as its own grade) — the single most consequential thing to detect.
- Step structure — step-sequence distribution (how many ladders have 1 step vs.
many?), ceiling-flag integrity (exactly one ceiling step per ladder is correct;
zero or multiple is a defect), non-numeric step sequences (
STEP1,BC,P5,L1) that signal inconsistent step-naming conventions to be normalized. - Rate structure — which rate columns are populated: min/mid/max (value-grade / salary-range model) vs. a single step-rate value (step model) vs. both vs. neither. Rate currency and LDG presence. Zero-rate and null-rate rows. Rate distribution (min/median/max) to sanity-check units (hourly vs. annual vs. monthly).
- Naming & code structure — is the grade code a clean code, or is it overloaded with country/state/plant/union/sequence segments? Overloaded codes are an intelligent-key anti-pattern Fusion does not need and a major naming-standard decision. Blank or placeholder grade names (e.g. names that start with a delimiter) are a data-quality gate.
- Integrity — grades mapping to >1 ladder; duplicate grade names across distinct codes; ladders with no ceiling or multiple ceilings; rate rows with no LDG; orphan steps; active/inactive status distribution (are you converting dead grades?).
- Temporal scope — real date-effective history vs. a flattened snapshot (see Step 1). Stale universal start dates and universal high-end dates almost always mean the latter.
For a narrative artifact, profile coverage (which workforce-structure areas were walked), decisions reached vs. deferred, and the named-system constellation with dispositions.
Reverse-engineering the grade operating model (the highest-value data move)
The grades analogue of "deriving the COA" is reconstructing how the client expresses pay structure from whatever residue exists. Resolve these four questions explicitly:
- Value grades or step grades (or both)? If min/mid/max are populated and there is no step schedule → value grades with grade rates / salary ranges. If there is a step sequence with a rate per step → step (progression) grades on grade ladders. If each "grade" carries exactly one step → the client is using grades as steps, and the Fusion-correct model is far fewer grades, each with a step ladder. Stating this collapse (and its magnitude) is usually the headline finding.
- What is the real grade vs. what is an org/union/location attribute? When the grade code embeds plant, state, and union local, the true grade is the classification (the job/wage class); the embedded segments are really organization/union dimensions that belong on the assignment, the ladder, or a job — not inside the grade code. Reconstruct the intended grade by stripping the intelligent key.
- How many LDGs and grade sets does the operating model actually need? Single country, single currency → one LDG, common set is fine. Multiple legislations or a union-vs-non-union rate split → multiple LDGs and possibly multiple grade sets, with rates partitioned accordingly. The missing-LDG finding is decided here.
- What drives progression? Manual placement, seniority/time-in-step, or negotiated union schedule? This determines whether ladders are simple reference structures or whether automatic grade-step progression (eligibility-based) is in scope, and it is the seam to Payroll and Compensation.
State the operating model as inferences the user can correct.
Step 2.5 — Grade HDL sub-entity load-readiness checklist (always run it)
The grade conversion loads through HDL as a set of related business objects, not one
flat file, and each rejects on its own missing/invalid attributes or unresolved cross-
references. Validate the file against the sub-entity set below and report completeness (%
populated, blanks, invalid values) per element, rolling up to a per-entity readiness
verdict (🟢 loadable / 🟡 loadable with cleanup / 🔴 blocked / ⬜ unverifiable). Three rules
apply to every sub-entity — dates in YYYY/MM/DD, all lookup values configured/present
in the target, and no required/mandatory field blank — so check them per entity rather than
once globally.
GradeLadder
- Dates in
YYYY/MM/DD; lookups configured; required fields not blank.
Grade
- Required fields not blank; lookups configured.
GradeCodeunique.- The combination of
GradeCode+GradeNameunique.
GradesInLadder
- Dates in
YYYY/MM/DD; lookups configured; required fields not blank. - (The grades placed in a ladder must resolve to real grades — see GradeStep's cross- reference rule, which applies to ladder membership too.)
GradeStep
- Dates in
YYYY/MM/DD; lookups configured; required fields not blank. - Every grade referenced in
GradeStepexists in theGradeentity (the cross-entity integrity rule — the most common grade-load reject).
GradeRate + GradeRateValue
- Dates in
YYYY/MM/DD; lookups configured; required fields not blank. - (Rate keyed to its LDG/legislative context; min/mid/max consistent with the value-grade model surfaced in Step 2.)
StepRate + StepRateValue
- Dates in
YYYY/MM/DD; lookups configured; required fields not blank. - (Step-rate values consistent with the step model and the ceiling-step integrity surfaced in Step 2.)
For each element report present? (Y/N), % populated, invalid/placeholder values, and a
verdict. The grade objects load in dependency order — grades and ladders before
GradesInLadder/GradeStep, and rates after the structures they price — so a structurally
clean file can still be blocked if a GradeStep references a grade absent from the Grade
entity, a lookup isn't configured, or a date is malformed. Surface those as blockers.
Step 3 — Translate to Fusion (three output streams)
Every profile resolves into three streams. Be specific to setup objects and named tasks — "configure grades" is not an output; "collapse ~12K grade-as-step records into classification grades each carrying a grade ladder, because every ladder currently holds a single step and the rate lives at the step level" is.
1. Configuration items — Fusion setup the as-is implies, each with the why from the artifact:
- Grades & grade codes — grade-code naming standard (decode the intelligent key; move org/union/location off the code), grade names, active-status scope, automatic vs. manual grade-code generation.
- Grade sets — Common Set vs. legislation-specific sets; reference-data set assignment; partitioning strategy where union/non-union or multi-country split exists.
- Legislative Data Groups — number of LDGs the rate structure requires; assignment of grade rates to the correct LDG (resolving any missing-LDG rows before load).
- Grade Rates — value-grade rates (min/mid/max) and/or step rates, currency, rate-type (hourly/annual), and the effective-date strategy for negotiated changes.
- Grade Ladders & Grade Steps — ladder type (grade ladder vs. step ladder), step sequencing, exactly one ceiling step per ladder, step rate values, and ladder- to-classification mapping (e.g. union local → ladder).
- Grade Step Progression — whether automatic, eligibility-based step progression is configured, or progression is manual; the rules/seniority logic if automated.
- Valid Grades on Jobs/Positions — grade defaulting and assignment-grade validation, if a job/position-to-grade mapping exists.
2. Conversion items — what must be migrated and the strategy/risk for each, loaded via HDL/HSDL (Grade, GradeRate, GradeLadder, GradeStep objects):
- Grades (active in scope; decide on inactive/historical), grade sets, grade rates, grade ladders, grade steps and step rates, valid-grade mappings.
- Call out conversion blockers: grade-as-step explosion (collapse before load or load faithfully then refactor — a real strategy fork); missing LDG on rate rows (hard blocker — rates cannot load without an LDG); overloaded/duplicate grade codes requiring a remap and a legacy→Fusion crosswalk; blank/placeholder grade names; ladders with zero or multiple ceiling steps; flattened effective dates (decide the single go-live effective date rather than loading a fake 1951 history); zero-rate rows (intentional placeholder vs. data error); currency/unit ambiguity in rate amounts.
3. Current-state summary — the narrative an implementation lead needs: how the client expresses pay structure today (value vs. step; union vs. non-union), the named- system constellation and dispositions, the headline data-shape pathologies the future state must fix (intelligent keys, grade-as-step, missing LDG, flattened dates), and the cross-pillar seams (Compensation, Payroll, Jobs/Positions). Quantified where data exists; inferences flagged.
Step 4 — Surface decisions, name the gaps
Close every profile with the forks in the road and the missing inputs:
- Design decisions the client must make — value grades vs. step grades vs. hybrid; collapse grade-as-step into ladders vs. lift-and-shift the legacy grade count; one LDG vs. many; common grade set vs. legislation-specific sets; whether union locals become ladders, grades, or an assignment attribute; automatic step progression vs. manual; whether to decode the intelligent grade key now or carry it as a legacy reference. Frame each with options and a lean.
- Leading-practice gaps — where the as-is diverges from how high-performing HCM shops model grades (intelligent keys, no salary ranges so comp is blind, rates maintained in spreadsheets, grade proliferation), framed as a decision, not a criticism.
- Cross-pillar dependencies — call out hard dependencies: grade rates feed Compensation (salary basis, compa-ratio); grades feed Payroll elements and costing; Jobs/Positions carry valid grades; automatic step progression touches eligibility and Benefits/Comp. These gate parts of the grade design.
- What's missing — what you'd request next to complete the picture (the grade-rate table with LDG and currency if only the step schedule arrived; the union pay scales to validate ladders; the job/position-to-grade mapping; the comp salary-basis design to confirm value-grade direction; confirmation of legislations/currencies in scope). Be specific about why each is needed.
Report Mode
When a report/deliverable is requested, produce executive prose anchored by structured reference elements, organized to the engagement phase (Discovery & Assessment, or Future-State Blueprint for a workshop-derived deliverable). Lead with a current-state narrative that reads like a consultant wrote it, then anchor it with:
- Artifact inventory — files/transcripts received, type, source/session date, grain or coverage.
- Current-state structure map — grade/set/LDG/ladder/step counts, value-vs-step model, union landscape.
- Future-state design summary — by area (grades, sets, LDGs, rates, ladders/steps, progression, valid grades).
- Scope register — capability → in-scope / roadmap / out → rationale.
- Configuration register — setup item → rationale → Fusion object/task.
- Conversion register — object → HDL load strategy → risk/blocker → disposition.
- Decision log — open design decisions with options and a recommendation.
- Cross-pillar dependency list (Compensation, Payroll, Jobs/Positions, Benefits).
- Data-quality / next-data-request list.
For a file deliverable, hand off to the docx skill (narrative blueprint/assessment)
or xlsx skill (registers/crosswalks/data-quality workbooks) — do not hand-format. For
an HTML report deliverable, apply the data-analysis-report-format skill — the
house standard for the look of every analysis report. If the engagement uses a house
brand, apply the relevant brand-guidelines skill on top. Tie findings to the engagement
phase and to leading practice throughout.
Principles
- Detect before you profile; never assume the layout — and never assume a transcript is just background. A workforce-structures workshop is frequently the single richest artifact.
- Quantify data with code before you opine; find the true key before you trust a count. Mark inferences as inferences, and separate asserted vs. proposed vs. left open.
- Separate the client's accidental data shape from the operating model it expresses — the grade-as-step explosion, the intelligent key, and the flattened effective dates are export artifacts, not the structure the client means.
- Lead with the functional why, then the setup how.
- The operating model is usually in the relationship between artifacts — the rate table tells you whether the grades are value or step grades; the union pay scale explains the grade count.
- A missing LDG on a rate row is a hard blocker, not a footnote — grade rates cannot exist in Fusion without one.
- Honor the scope boundary a workshop sets: capture scope-level decisions as scope, config-level decisions as config; do not promote one into the other.
- Respect Fusion's opinionated design (grades vs. steps vs. rates; set + LDG keying); name the change-management cost of legacy workarounds (intelligent keys, spreadsheet rates, grade proliferation) rather than promising to replicate them.
- Name cross-pillar dependencies (Compensation, Payroll, Jobs/Positions) loudly — they gate the grade design and are the most common cause of a "fit" turning into a "gap."
- Stay version-aware — Oracle ships quarterly; flag version-sensitive guidance (HSDL/HDL behavior and grade-step-progression features evolve).
- Conversational by default; structured-plus-prose only when a report is asked for.
Worked example — US industrial/manufacturing grade master (union-driven)
A client provides one XLSX grade extract (~12,200 rows, 21 columns: GradeCode, GradeName, effective dates, SetCode, ActiveStatus, GradeRateName, LDG, Minimum/Mid/ Maximum/Value amounts, GradeLadderName, GradeStepName, GradeStepSequence, CeilingStepFlag, StepRateValueAmount). Profiling yields:
- Detection — Single XLSX data extract; grain is one row per grade (each grade code is unique across all rows). Grade names are mostly unique but several recur (the same classification repeated per plant). It is a point-in-time snapshot, not a date-effective history despite the date columns.
- Date-effectivity is flattened. Every row carries the same effective start
(
1951-01-01) and the same effective end (4712-12-31, Oracle's high-date). This is an export artifact: there is no real 1951 history to convert — pick a single go-live effective date and load on that. - The headline finding — grades used as steps. ~12,200 grade codes resolve to only
~289 grade ladders, and the large majority of ladders carry a single step
(StepRateValueAmount populated on every row; GradeStepSequence is
STEP1/1for most). The client has modeled each pay point as its own grade. The Fusion-correct model is far fewer classification grades, each carrying a grade ladder with its steps — the conversion strategy fork (faithful lift-and-shift of ~12K grades vs. collapse-and-refactor) is the single biggest decision. - Intelligent grade keys. Grade codes and ladder names embed country/state (
USVA,USNC), a plant code (0384,71B2), and a union local (USW 694,GCIU 388M,Non-Union). Roughly 7,450 rows are union and ~4,730 are non-union. The true grade is the wage classification; plant/state/union are organization and bargaining- unit dimensions that should live on the assignment, the ladder, or a job — not inside the grade code. Decoding this key is a major naming-standard decision and drives a legacy→Fusion crosswalk. - Missing Legislative Data Group — hard blocker. Every rate-bearing row has a
null LDG, and the only set code is
COMMON. Grade rates in Fusion must be keyed to an LDG; the missing LDG must be resolved (one US LDG at minimum, possibly a union/non-union or multi-state partition) before any grade-rate load. The single common set is a partitioning decision to confirm. - Rate model — step rates, no salary ranges. Min/Mid/Max/Value amounts are entirely empty; only StepRateValueAmount is populated. So this is a pure step-rate world with no salary ranges — Compensation has nothing to anchor compa-ratio or range-spread against today. Rates look hourly (nonzero median ≈ 26.8, max ≈ 58.6). ~341 rows carry a zero rate — placeholder vs. data error to confirm.
- Referential-integrity defects. Every grade maps to exactly one ladder (good),
but 288 of 289 ladders have multiple rows flagged as the ceiling step —
CeilingStepFlag is unreliable and must be reconstructed (exactly one ceiling per
ladder). Step sequences are inconsistent (numeric
1–90+alongside alpha codesBC,P5,L1,STEP1) and need a normalized step-naming convention. ~31 grade names are blank/placeholder (start with a delimiter) — a data-quality gate. - Operating-model fingerprint — plant-level union wage classifications with per-local step schedules, maintained as a flat grade list, fingerprint a multi-site unionized US manufacturing compensation structure → multi-LDG / multi- bargaining-unit rate strategy, grade-ladder-per-classification design, a heavy Payroll-element and costing seam, and an automatic-step-progression question driven by CBA seniority rules.
- Gaps / next-data requests — to convert findings into design, request: the union CBA pay scales to validate ladders and step rates and to confirm progression rules; confirmation of legislations/currencies and the intended LDG partition; the job/position-to-grade mapping for valid-grade defaulting; and the Compensation salary-basis design to confirm whether any value/range grades are wanted at all or the world stays pure step-rate.
This is the depth bar for any artifact this skill profiles — for a data artifact, match it on grade/set/LDG/ladder/step/rate structure and conversion; for a transcript, match it on the five veins of Step 1.5.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

