Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
77a75b1
Add FOCUS 1.3 ingestion (#2124)
flanakin May 6, 2026
f70c43d
Add FOCUS 1.3 hub functions (#2127)
flanakin May 6, 2026
2bfa611
Add ContractCommitment dataset (#2129)
flanakin May 6, 2026
e489389
Add FOCUS 1.4-preview ingestion (#2131)
flanakin May 6, 2026
3a68afd
Add FOCUS 1.4-preview hub functions (#2133)
flanakin May 6, 2026
657aa7d
Refresh Claude Code plugin skill files for FOCUS 1.3 / 1.4 (#2119)
flanakin May 6, 2026
f090461
Add FOCUS schema tests and changelog entries (#2120)
flanakin May 6, 2026
c56b616
Add FOCUS 1.4 ingestion (IngestionSetup_v1_4.kql)
flanakin May 17, 2026
7d9d295
Merge branch 'flanakin/focus14-phase1-ingestion-1.3' into flanakin/fo…
flanakin May 17, 2026
8a01133
Add FOCUS 1.4 hub functions (HubSetup_v1_4.kql)
flanakin May 17, 2026
58f50cd
Refresh Claude Code plugin skill files for FOCUS 1.4
flanakin May 17, 2026
eba731f
Add FOCUS 1.4 schema tests and changelog entries
flanakin May 17, 2026
a681e73
chore: Update ms.date in docs-mslearn files
github-actions[bot] May 17, 2026
f8495a5
Address PR #2126 feedback
flanakin May 26, 2026
6f2ec90
Merge branch 'flanakin/focus14-phase1-ingestion-1.3' into flanakin/fo…
flanakin May 26, 2026
56f9b30
Cascade PR #2126 feedback to hub functions
flanakin May 26, 2026
676da5e
Merge branch 'flanakin/focus14-phase2-hubs-1.3' into flanakin/focus14…
flanakin May 26, 2026
cb93641
Cascade PR #2126 feedback to plugin docs
flanakin May 26, 2026
f9aa923
Merge branch 'flanakin/focus14-phase6-plugin' into flanakin/focus14-p…
flanakin May 26, 2026
3ebb967
Remove leftover singular ContractCommitment() alias
flanakin May 27, 2026
07a8850
Merge branch 'flanakin/focus14-phase6-plugin' into flanakin/focus14-p…
flanakin May 27, 2026
362de44
Cascade PR #2126 feedback to tests + changelog
flanakin May 27, 2026
bbb7180
chore: Update ms.date in docs-mslearn files
github-actions[bot] May 27, 2026
2a88b02
Add x_RecommendationCategory and x_RecommendationSubcategory enrichments
flanakin Jun 24, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion docs-mslearn/toolkit/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: FinOps toolkit changelog
description: Review the latest features and enhancements in the FinOps toolkit, including updates to FinOps hubs, Power BI reports, and more.
author: MSBrett
ms.author: brettwil
ms.date: 04/29/2026
ms.date: 06/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
Expand Down Expand Up @@ -31,6 +31,18 @@ The following section lists features and enhancements that are currently in deve
- Added Claude Code plugin with skills for FinOps hubs and Azure Cost Management ([#2043](https://github.com/microsoft/finops-toolkit/pull/2043)).
- Added 4 agents (CFO, FinOps practitioner, database query, hubs agent), 5 commands (`/ftk-hubs-connect`, `/ftk-hubs-healthCheck`, `/ftk-mom-report`, `/ftk-ytd-report`, `/ftk-cost-optimization`), and an output style.
- Linked to the existing KQL query catalog in `src/queries/` from the plugin.
- **Changed**
- Updated plugin skill files to reflect FOCUS 1.4 hub schema, the new `ContractCommitments()`, `BillingPeriods()`, and `InvoiceDetails()` functions, and the removal of `ProviderName` / `PublisherName` ([#2120](https://github.com/microsoft/finops-toolkit/issues/2120)).

### FinOps hubs v15.0.0

- **Added**
- Added FOCUS 1.4 hub schema (`v1_4`). New cost and usage columns: `AllocatedMethodId`, `AllocatedMethodDetails`, `AllocatedResourceId`, `AllocatedResourceName`, `AllocatedTags`, `ContractApplied`, `ServiceProviderName`, `HostProviderName`, `CommitmentProgramEligibilityDetails`, `InvoiceDetailId`, and 12 `ContractCommitment*` per-row columns (`ContractCommitmentBenefitCategory`, `ContractCommitmentCreated`, `ContractCommitmentDiscountPercentage`, `ContractCommitmentDurationType`, `ContractCommitmentFulfillmentInterval`, `ContractCommitmentLastUpdated`, `ContractCommitmentLifecycleStatus`, `ContractCommitmentModel`, `ContractCommitmentOfferCategory`, `ContractCommitmentPaymentInterval`, `ContractCommitmentPaymentModel`, `ContractCommitmentPaymentUpfrontPercentage`). Removes deprecated `ProviderName` and `PublisherName` from the schema (raw tables keep them for back compat). Three new supplemental datasets: `ContractCommitments` (28 columns), `BillingPeriods` (6 columns), and `InvoiceDetails` (22 columns) ([#2120](https://github.com/microsoft/finops-toolkit/issues/2120)).
- Added unversioned `ContractCommitments()`, `BillingPeriods()`, and `InvoiceDetails()` functions aliasing to their `_v1_4` counterparts.
- Added `x_RecommendationCategory` and `x_RecommendationSubcategory` enrichment columns to the `Recommendations` dataset, normalized to a fixed hub taxonomy (Cost, Operational Excellence, Performance, Reliability, Security). See [data model](hubs/data-model.md#recommendations-managed-dataset) for the allowed values.
- **Changed**
- Retargeted unversioned `Costs()`, `Prices()`, `CommitmentDiscountUsage()`, `Recommendations()`, and `Transactions()` aliases to their `_v1_4` counterparts.
- Refreshed the canonical "add a new FOCUS version" procedure in [src/templates/finops-hub/docs/README.md](https://github.com/microsoft/finops-toolkit/tree/dev/src/templates/finops-hub/docs/README.md) with multi-version-cycle, plugin, and changelog steps.

### Bicep Registry module pending updates

Expand Down
55 changes: 53 additions & 2 deletions docs-mslearn/toolkit/hubs/data-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: FinOps hubs data model
description: Learn about the tables and functions available in FinOps hubs to build your own queries, reports, and dashboards.
author: flanakin
ms.author: micflan
ms.date: 04/01/2026
ms.date: 06/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
Expand Down Expand Up @@ -736,7 +736,8 @@ Columns in the **Recommendations** managed dataset include:
| x_EffectiveCostBefore | Real | Source: Microsoft EA+MCA 2023-05-01. |
| x_EffectiveCostSavings | Real | Source: Microsoft EA+MCA 2023-05-01. |
| x_IngestionTime | Datetime | Source: Hubs add-on. |
| x_RecommendationCategory | String | Source: Hubs recommendations. |
| x_RecommendationCategory | String | Source: Hubs recommendations. Normalized to the hub taxonomy. |
| x_RecommendationSubcategory | String | Source: Hubs add-on. Normalized to the hub taxonomy. |
| x_RecommendationDate | Datetime | Source: Microsoft EA+MCA 2023-05-01. |
| x_RecommendationDescription | String | Source: Hubs add-on. |
| x_RecommendationDetails | Dynamic | Contains source-specific metadata. See notes below the table. |
Expand All @@ -749,6 +750,56 @@ Columns in the **Recommendations** managed dataset include:

The **x_RecommendationDetails** column is a dynamic object that contains source-specific metadata. For Cost Management reservation recommendations, it includes commitment discount details like scope, term, SKU, and region. For hubs recommendations, it includes the recommendation provider, solution, type ID, resource type, and any additional properties from the query.

The **x_RecommendationCategory** and **x_RecommendationSubcategory** columns classify each recommendation against a fixed hub taxonomy so reports can group across providers consistently. Source data is normalized on ingestion: source category values (for example, Azure Advisor's `HighAvailability` → `Reliability`) are mapped to the allowed values below. Unmapped category values become an empty string and unmapped subcategory values become `Other`.

Allowed **x_RecommendationCategory** values: `Cost`, `Operational Excellence`, `Performance`, `Reliability`, `Security`.

Allowed **x_RecommendationSubcategory** values, grouped by parent category:

- Cost
- Autoscaling
- Commitment Discount Coverage
- Commitment Discount Utilization
- Idle Resources (includes unused capacity and orphaned resources)
- Low Utilization
- Negotiated Discount Enablement
- Region Placement
- Right-Sizing
- Scheduling
- Service Selection and Architecture
- SKU Modernization
- Spot Eligibility
- Operational Excellence
- Automation and Process
- Best Practices
- Governance and Policy
- Observability
- Operational Hygiene
- Quotas and Limits
- Resource Consistency
- Performance
- Performance Tuning
- Resource Configuration
- Resource Sizing
- Scaling and Capacity
- Throughput and Latency
- Workload Placement
- Reliability
- Backup Configuration
- Capacity
- Disaster Recovery
- High Availability
- Service Retirement
- Zone Resiliency
- Security
- Compliance Alignment
- Data Protection
- Identity & Access
- Network Security
- Threat Detection
- Vulnerability Exposure
- Other (fallback when no specific subcategory applies)

<br>

## Regions table
Expand Down
Loading
Loading