Add FOCUS 1.4 schema documentation (upgrade, compatibility, data dictionary)#2211
Draft
flanakin wants to merge 4 commits into
Draft
Add FOCUS 1.4 schema documentation (upgrade, compatibility, data dictionary)#2211flanakin wants to merge 4 commits into
flanakin wants to merge 4 commits into
Conversation
- upgrade.md: add v1_4 to the dashboard compatibility matrix, document the 22 new and 2 removed Costs columns (FOCUS 1.3 vs 1.4), list the new BillingPeriods (6), ContractCommitments (28), and InvoiceDetails (22) dataset columns, and note the v1_2 transform deprecation - compatibility.md: add the FinOps toolkit 15 / hubs v1_4 / FOCUS 1.4 compatibility row and clarify export-to-schema conversion - data-processing.md: update the transform narrative to v1_4, add v15 Costs transform notes and new dataset transform sections, and list the new raw datasets in the ingestion container docs - data-dictionary.md: add entries for the new FOCUS 1.3/1.4 Costs columns and removal/successor notes on ProviderName and PublisherName Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…angelog' into flanakin/focus14-docs-schema # Conflicts: # docs-mslearn/toolkit/help/data-dictionary.md
… 1.4 rename The Q4 schema change renamed ContractCommitments dataset columns to spec-prefixed FOCUS 1.4 IDs and added ContractCommitmentDescription and ServiceProviderName, bringing the dataset from 28 to 30 FOCUS columns. Sync upgrade.md and changelog.md (post-merge) to the new column list, verified against ContractCommitments_final_v1_4 in IngestionSetup_v1_4_Datasets.kql. Also fix changelog.md's stale ms.date. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🛠️ Description
Per-version schema/column documentation for FOCUS 1.4 (work item W6b) — the docs surface that #2123 deliberately did not cover. All column names and counts were verified against the
v1_4KQL ground truth (IngestionSetup_v1_4.kql,IngestionSetup_v1_4_Datasets.kql,HubSetup_v1_*.kql).Changes
docs-mslearn/toolkit/hubs/upgrade.mdv1_4to the Data Explorer dashboard compatibility matrix (dashboard 15+ → schemav1_4→ hubs 15+).Costs().ProviderName/Costs().PublisherNameto the deprecated columns table (retired in 15; replaced byHostProviderName/ServiceProviderName).v1_4changes: 22 new columns (7 FOCUS 1.3, 15 FOCUS 1.4 — including the 12ContractCommitment*per-charge columns with a footnote) and 2 removed columns (ProviderName,PublisherName) with a down-conversion note that_v1_0()/_v1_2()functions still return them.ContractCommitmentBenefitCategory), InvoiceDetails (22) — plus the 5x_hub columns each, with the "empty until Cost Management ships FOCUS 1.4 exports" caveat.v1_2transforms are deprecated and their update policies disabled as of v15.docs-mslearn/toolkit/hubs/compatibility.mdv1_4, Power BI 15+, KQL reports on thev1_4schema) and scoped the previous row to 12-14.docs-mslearn/toolkit/hubs/data-processing.mdv1_0/v1_2references tov1_4({dataset}_transform_v1_4(),{dataset}_final_v1_4, unversioned =v1_4).docs-mslearn/toolkit/help/data-dictionary.mdHostProviderName.ProviderNameentry (removed from Costs in FOCUS 1.4; still in other datasets) and markedPublisherNameremoved with successor notes.ms.dateset to 07/15/2026 on all four files.Verification
PowerShell cross-check script (extracts every column name from the doc additions and validates against the
v1_4KQL tables): 111 checks passed, 0 failed —v1_4rows: 24/24 match (22 added exist inCosts_final_v1_4and not inv1_2; 2 removed exist inv1_2and notv1_4); doc set == KQL added set exactly.ContractCommitmentBenefitCategory), InvoiceDetails 22/22 — exact match with*_final_v1_4FOCUS columns.Costs_final_v1_4.v1_3schema references in any modified doc; all markdown tables well-formed (pipe counts validated).This was an ad hoc cross-check script, not the project's Pester unit suite.
Notes
flanakin/focus14-phase7-tests-changelog(requires thev1_4KQL from the stack). Retarget todevonly after the stack merges.data-model.md(owned by Refresh FinOps hub upgrade procedure for multi-version FOCUS adoption #2123).changelog.mdis edited upstream in the stack, not by this PR directly.ContractCommitment*columns inCosts_final_v1_4are defined in the FOCUS 1.4 ContractCommitment dataset, not the CostAndUsage dataset (verified against the spec v1.4 tag); docs describe them as per-charge contract commitment context per the shipped schema and changelog.📋 Checklist
🔬 How did you test this change?
📦 Deploy to test?
🙋♀️ Do any of the following that apply?
🤖 Generated with Claude Code