Skip to content

Tier 17.3: F3.2 sub-tier 3 — fact_multileg_option_legs columns (5 cols) - #21

Merged
jamezycesar-collab merged 1 commit into
mainfrom
tier17-3-f32-fact-multileg-option-legs
Jun 18, 2026
Merged

Tier 17.3: F3.2 sub-tier 3 — fact_multileg_option_legs columns (5 cols)#21
jamezycesar-collab merged 1 commit into
mainfrom
tier17-3-f32-fact-multileg-option-legs

Conversation

@jamezycesar-collab

Copy link
Copy Markdown
Owner

Summary

Third sub-tier of WS2 F3.2 follow-on. Adds 3 new columns + renames 2 legacy columns on fact_multileg_option_legs across all three multileg-Gold dialects (no Fabric Lakehouse variant for multileg).

Files changed

  • ddl/multileg/02_multileg_gold_delta.sql - 3 cols added, 2 renamed, view updated
  • ddl/multileg/04_multileg_fabric_warehouse.sql - same change pattern (T-SQL)
  • ddl/multileg/06_multileg_gold_hive.sql - same change pattern (Hive)
  • guardrails/known_field_mapping_gaps.csv - 86 → 81 rows
  • CHANGELOG.md - Tier 17.3 entry

Columns added

Gold column Type Spec section (PDF-verified, page 289)
leg_ref_id STRING / VARCHAR(64) §5.2.1 row 32.n.1 legRefID
leg_symbol STRING / VARCHAR(14) §5.2.1 row 32.n.2 symbol (within legs[])
leg_option_id STRING / VARCHAR(22) §5.2.1 row 32.n.3 optionID

Columns renamed

Old name New name Spec ref
leg_open_close leg_open_close_indicator §5.2.1 row 32.n.4 openCloseIndicator
leg_ratio leg_ratio_quantity §5.2.1 row 32.n.6 legRatioQuantity

Renames are atomic — gold.vw_multileg_option_lifecycle view (in the same files) updated to use the new names. Silver-layer tables continue to use the original names; the Silver→Gold pipeline handles the rename.

No mapping CSV fixes this sub-tier

PDF spot-check on page 289 confirmed all mapping CSV section refs (§5.2.1 row 32.n.X) are correct. The earlier verifier's JSON_FIELD_NOT_IN_PDF and SECTION_MISMATCH flags were regex false negatives — the spec uses the multi-leg leg-indexed row format "32.n.N" that the verifier's ^\\d+ <field> row-prefix regex doesn't catch.

Coverage

All 8 guardrails:                  pass (exit 0)
known_field_mapping_gaps.csv:    81 (was 86; -5)
  F3.1 phantom-table rows:        0 (unchanged - cleared in Tier 13-16)
  F3.2 missing-column rows:      81 (was 86)
DDL files in parity scope:        22 (unchanged)
Tables in 2+ dialects:            42 (unchanged - same tables, new columns)
New parity violations:             0

F3.2 burndown progress

Sub-tier Host table Cols Allowlist Status
Tier 17.1 fact_option_executions 3 92 → 89
Tier 17.2 fact_option_allocations 3 89 → 86
Tier 17.3 (this) fact_multileg_option_legs 5 86 → 81
Tier 17.4 fact_option_order_events 30 81 → 51 next
Tier 17.5 fact_multileg_option_events 51 51 → 0 queued

Test plan

  • All 8 guardrails pass (exit 0)
  • No new parity violations
  • All 5 fact_multileg_option_legs mapping rows now resolve in DDL
  • Renames atomic with view updates (view references the new names)
  • PDF spot-check confirmed all 6 leg fields on page 289 (§5.2.1 row 32.n.1-6)
  • Recurrence-safe precheck in push script

Third sub-tier of WS2 F3.2 follow-on.

Adds 3 new columns + renames 2 legacy columns on
gold.fact_multileg_option_legs across all three dialects
(Delta, Hive, Fabric Warehouse - multileg Gold has no Fabric
Lakehouse variant).

Added columns (CAT IM v4.1.0r15 section 5.2.1 row 32 legs sub-table):
  - leg_ref_id     STRING/VARCHAR(64)  row 32.n.1 legRefID
  - leg_symbol     STRING/VARCHAR(14)  row 32.n.2 symbol of stock leg
  - leg_option_id  STRING/VARCHAR(22)  row 32.n.3 optionID OSI symbol

Renamed columns to canonical spec names:
  - leg_open_close -> leg_open_close_indicator  (row 32.n.4 openCloseIndicator)
  - leg_ratio      -> leg_ratio_quantity        (row 32.n.6 legRatioQuantity)

The view gold.vw_multileg_option_lifecycle (in the same files)
was updated to reference the renamed columns and added the 3
new leg columns to its SELECT list.

PDF spot-check confirmed all 6 leg fields (including the existing
leg_side at row 32.n.5) on PDF page 289 in MLNO section 5.2.1.

Allowlist:
  known_field_mapping_gaps.csv: 86 -> 81 rows (-5)
  F3.2 remaining: 81 (was 86)
  F3.1 phantom-table: 0 (unchanged, cleared in Tier 13-16)

All 8 guardrails pass.
@jamezycesar-collab
jamezycesar-collab merged commit f5a4b1d into main Jun 18, 2026
1 check passed
@jamezycesar-collab
jamezycesar-collab deleted the tier17-3-f32-fact-multileg-option-legs branch June 18, 2026 03:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant