@intentius/chant-lexicon-azure 0.45.0 → 0.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/describe-resources.d.ts.map +1 -1
  2. package/dist/generated/index.d.ts +328 -87
  3. package/dist/generated/index.d.ts.map +1 -1
  4. package/dist/integrity.json +4 -4
  5. package/dist/manifest.json +1 -1
  6. package/dist/meta.json +1923 -427
  7. package/dist/okf/index.md +22 -5
  8. package/dist/okf/rules/AZR028.md +1 -0
  9. package/dist/okf/types/{snapshots.md → Akssnapshots.md} +3 -3
  10. package/dist/okf/types/AzureStackHCIloadBalancers.md +21 -0
  11. package/dist/okf/types/AzureStackHCInatGateways.md +22 -0
  12. package/dist/okf/types/AzureStackHCInetworkSecurityGroups_securityRules.md +19 -0
  13. package/dist/okf/types/AzureStackHCIsnapshots.md +21 -0
  14. package/dist/okf/types/AzureStackHCIstorageContainers.md +21 -0
  15. package/dist/okf/types/AzureStackHCIvirtualMachineInstances.md +21 -0
  16. package/dist/okf/types/AzureStackHCIvirtualMachineInstances_guestAgents.md +18 -0
  17. package/dist/okf/types/AzureStackHCIvirtualNetworks.md +22 -0
  18. package/dist/okf/types/{storageContainers.md → DiscoverystorageContainers.md} +3 -3
  19. package/dist/okf/types/{loadBalancers.md → KubernetesRuntimeloadBalancers.md} +3 -3
  20. package/dist/okf/types/{natGateways.md → NetworknatGateways.md} +4 -4
  21. package/dist/okf/types/{networkSecurityGroups_securityRules.md → NetworknetworkSecurityGroups_securityRules.md} +3 -3
  22. package/dist/okf/types/galleryImages.md +21 -0
  23. package/dist/okf/types/logicalNetworks.md +21 -0
  24. package/dist/okf/types/marketplaceGalleryImages.md +21 -0
  25. package/dist/okf/types/natGateways_inboundRules.md +19 -0
  26. package/dist/okf/types/networkInterfaces.md +25 -0
  27. package/dist/okf/types/networkSecurityGroups.md +22 -0
  28. package/dist/okf/types/publicIPAddresses.md +21 -0
  29. package/dist/okf/types/virtualHardDisks.md +21 -0
  30. package/dist/okf/types/virtualNetworks_subnets.md +19 -0
  31. package/dist/spec/api-versions.d.ts +12 -0
  32. package/dist/spec/api-versions.d.ts.map +1 -1
  33. package/dist/types/index.d.ts +3682 -946
  34. package/package.json +2 -2
  35. package/src/describe-resources.ts +8 -0
  36. package/src/generated/index.d.ts +3682 -946
  37. package/src/generated/index.ts +328 -87
  38. package/src/generated/lexicon-azure.json +1923 -427
  39. package/src/lifecycle-integration.test.ts +40 -0
  40. package/src/spec/api-versions.test.ts +16 -0
  41. package/src/spec/api-versions.ts +13 -0
@@ -164,5 +164,45 @@ describeObservationConformance({
164
164
  });
165
165
  },
166
166
  },
167
+ {
168
+ name: "a marker-stamped ARM envelope surfaces its stack/env identity (#1222)",
169
+ declared: ["myStore"],
170
+ expectPresent: ["myStore"],
171
+ expectMarker: { myStore: { stack: "shop", env: "prod" } },
172
+ run: () => {
173
+ stubArm(() => ({
174
+ status: 200,
175
+ text: JSON.stringify({
176
+ ...resourceShow,
177
+ tags: { "chant-managed-by": "chant", "chant-stack": "shop", "chant-env": "prod" },
178
+ }),
179
+ }));
180
+ return azurePlugin.describeResources!({
181
+ environment: "prod",
182
+ buildOutput: "",
183
+ entityNames: ["myStore"],
184
+ entities: new Map([
185
+ ["myStore", { entityType: "Microsoft.Storage/storageAccounts", props: { name: "mystore" } }],
186
+ ]),
187
+ });
188
+ },
189
+ },
190
+ {
191
+ name: "an untagged ARM envelope surfaces no marker — never a guess (#1222)",
192
+ declared: ["myStore"],
193
+ expectPresent: ["myStore"],
194
+ expectNoMarker: ["myStore"],
195
+ run: () => {
196
+ stubArm(() => ({ status: 200, text: JSON.stringify(resourceShow) }));
197
+ return azurePlugin.describeResources!({
198
+ environment: "prod",
199
+ buildOutput: "",
200
+ entityNames: ["myStore"],
201
+ entities: new Map([
202
+ ["myStore", { entityType: "Microsoft.Storage/storageAccounts", props: { name: "mystore" } }],
203
+ ]),
204
+ });
205
+ },
206
+ },
167
207
  ],
168
208
  });
@@ -82,6 +82,22 @@ describe("PROVIDER_VERSION_OVERRIDES", () => {
82
82
  ]);
83
83
  });
84
84
 
85
+ it("keeps both pinned Microsoft.AzureStackHCI files, newest first (#1795)", () => {
86
+ // 2026-05-01-preview is the naive "latest by date" but carries only the
87
+ // cluster/edge family; the VM family lives in 2026-04-01-preview. The pin
88
+ // keeps both, in pin order, and drops the unpinned dates.
89
+ const paths = [
90
+ "schemas/2026-04-01-preview/Microsoft.AzureStackHCI.json",
91
+ "schemas/2026-04-30/Microsoft.AzureStackHCI.json",
92
+ "schemas/2026-05-01-preview/Microsoft.AzureStackHCI.json",
93
+ ];
94
+ const result = latestVersionPerProvider(paths);
95
+ expect(result.get("Microsoft.AzureStackHCI")?.map((f) => f.apiVersion)).toEqual([
96
+ "2026-05-01-preview",
97
+ "2026-04-01-preview",
98
+ ]);
99
+ });
100
+
85
101
  it("pins Microsoft.Management and Microsoft.Subscription to their latest GA dates (#1545)", () => {
86
102
  const paths = [
87
103
  "schemas/2023-04-01/Microsoft.Management.json",
@@ -76,6 +76,18 @@ export function parseSchemaPath(
76
76
  * no GA date and whose newer preview files (2024-12-01-preview and later)
77
77
  * drag in policy variables we don't want yet.
78
78
  *
79
+ * Microsoft.AzureStackHCI splits the same way (#1795): the newest dated file
80
+ * (2026-05-01-preview) carries only the cluster/edge-device family, while the
81
+ * VM family (virtualMachineInstances, virtualNetworks, networkInterfaces,
82
+ * publicIPAddresses, galleryImages, virtualHardDisks, ...) last appears in
83
+ * 2026-04-01-preview. Pin both, newest first — the cluster/edge family
84
+ * generates from 2026-05-01-preview and the VM family fills in from
85
+ * 2026-04-01-preview. `Microsoft.DataReplication/replicationVaults_
86
+ * privateEndpointConnectionProxies` dropped out in the same re-baseline but
87
+ * is NOT pinnable back: no dated Microsoft.DataReplication.json at the
88
+ * AZURE_SCHEMA_COMMIT pin (2021-02-16-preview, 2024-09-01, 2026-05-01)
89
+ * defines it — upstream removed the resource, so it stays gone.
90
+ *
79
91
  * Microsoft.Management and Microsoft.Subscription are pinned to their latest
80
92
  * GA dates: the naive latest for both is a preview (2024-02-01-preview adds
81
93
  * serviceGroups; 2025-11-01-preview adds changeTenantRequest), and the
@@ -83,6 +95,7 @@ export function parseSchemaPath(
83
95
  */
84
96
  export const PROVIDER_VERSION_OVERRIDES: Record<string, readonly string[]> = {
85
97
  "Microsoft.Authorization": ["2022-04-01", "2026-06-01", "2022-07-01-preview"],
98
+ "Microsoft.AzureStackHCI": ["2026-05-01-preview", "2026-04-01-preview"],
86
99
  "Microsoft.Compute": ["2026-03-01"],
87
100
  "Microsoft.Management": ["2023-04-01"],
88
101
  "Microsoft.Subscription": ["2021-10-01"],