Skip to content

feat: map the Live Tools and general members from the 1.74.0 gap report - #422

Merged
danielabbatt merged 1 commit into
mainfrom
feat/map-livetools-general-members
Sep 29, 2026
Merged

danielabbatt merged 1 commit into
mainfrom
feat/map-livetools-general-members

Conversation

@danielabbatt

@danielabbatt danielabbatt commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

Rebased onto main on 2026-09-29 (main builds as 1.70.147). Merges as 1.74.12.

Before merging, retarget the base to main. Base branches are not auto-deleted in this repo, so GitHub will not retarget for you, and merging into the old base leaves the work off main (what happened to #413). Merge only after #421 is on main, with a merge commit; do not squash, rebase or click Update branch.

Stacked on #421, in the chain that starts at #415

Base is feat/map-switch-camera-sensor-cellular-members. Merge the chain in order with merge commits, then retarget this to main. Changelog label 1.74.12 assumes that.

What

Sixth and last per-area batch from gap-report-v1.74.0.md: 19 Live Tools and general members, all scalars except Client.Cdp.

Model Added
Client Cdp as List<List<string>>?, because the API returns CDP as a list of two-element name/value lists
ClientProvision ClientId, Message
DeviceClient AdaptivePolicyGroup, Switchport
DeviceLiveToolsMacTable{Create,Get}ResponseRequest Mac
DeviceLiveToolsMulticastRoutingGetResponse{Interface,Route} IpVersion, Vrf (+ VrfType on the interface)
Events ClientMac
LiveToolsArpTableResultTableEntry Interface
LiveToolsThroughputTestCreateResponse ThroughputTestId
LossAndLatencyHistory, SubclassApplicationUsage, SubclassUsageHistory the API's current startTime/endTime/received alongside the legacy startTs/endTs/recv. As with Wifi in #420, I don't know which set the live API sends, so nothing was removed

Where this leaves the gap report

After this chain merges, Find-MissingModelMembers.ps1 reports 0 unmapped response members against v1.74.0 (from 155). What it still reports, and what this series did not touch:

  • 140 spec operations not implemented (new endpoints).
  • 214 library endpoints matching no spec path: some removed or renamed by Cisco, some path shapes the normaliser misses, some possibly dead code.

Both need their own pass; the ApiChecker project is the existing tool for the endpoint side.

Verification

dotnet build Meraki.Api.slnx -c Debug   Build succeeded, 0 Error(s)
Meraki.Api.Test (Data namespace)        Total: 61, Errors: 0, Failed: 0   (5 new in LiveToolsGeneralMemberTests)
Meraki.Api.Test (Workflows)             Total: 12, Errors: 0, Failed: 0

All 13 edited files kept their BOM state.

The follow-up fix to Find-MissingModelMembers.ps1 (it crashed under Set-StrictMode once nothing was unmapped) is folded into this PR's single commit.

@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 7 complexity

Metric Results
Complexity 7

View in Codacy

AI Reviewer: run a review on demand. To trigger the first review automatically, go to your organization or repository integration settings. AI can make mistakes. Always validate suggestions.

Run reviewer

TIP This summary will be updated as you push new changes.

@danielabbatt
danielabbatt force-pushed the feat/map-switch-camera-sensor-cellular-members branch from 1944160 to 12771be Compare September 29, 2026 12:15
@danielabbatt
danielabbatt force-pushed the feat/map-livetools-general-members branch from bfc5def to 18d6fd4 Compare September 29, 2026 12:15
@danielabbatt
danielabbatt force-pushed the feat/map-switch-camera-sensor-cellular-members branch from 12771be to b955769 Compare September 29, 2026 12:43
@danielabbatt
danielabbatt force-pushed the feat/map-livetools-general-members branch from 18d6fd4 to e545f96 Compare September 29, 2026 12:43
@danielabbatt
danielabbatt force-pushed the feat/map-switch-camera-sensor-cellular-members branch from b955769 to c41682d Compare September 29, 2026 12:52
@danielabbatt
danielabbatt force-pushed the feat/map-livetools-general-members branch from e545f96 to b3ad985 Compare September 29, 2026 12:52
Nineteen members the v1.74.0 spec documents that the models lacked, the
sixth and last per-area batch, which closes every member the report listed:
Client.Cdp; ClientProvision.ClientId and .Message; DeviceClient
.AdaptivePolicyGroup and .Switchport; Mac on both MAC-table request types;
IpVersion, Vrf and VrfType on the multicast routing interface and route
types; Events.ClientMac; LiveToolsArpTableResultTableEntry.Interface;
LiveToolsThroughputTestCreateResponse.ThroughputTestId; and the API's
current startTime/endTime and received names alongside the legacy ones on
LossAndLatencyHistory, SubclassApplicationUsage and SubclassUsageHistory.

Find-MissingModelMembers.ps1 now reports no unmapped response members
against v1.74.0. LiveToolsGeneralMemberTests covers the batch.

Find-MissingModelMembers.ps1 also stops crashing when nothing is unmapped: the
summary line indexed .ClrType on an empty array, which Set-StrictMode rejects.
@danielabbatt
danielabbatt force-pushed the feat/map-switch-camera-sensor-cellular-members branch from c41682d to 6a7e60f Compare September 29, 2026 12:56
@danielabbatt
danielabbatt force-pushed the feat/map-livetools-general-members branch from b3ad985 to 1eea377 Compare September 29, 2026 12:56

@danielabbatt danielabbatt left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

@danielabbatt
danielabbatt changed the base branch from feat/map-switch-camera-sensor-cellular-members to main September 29, 2026 13:59
@danielabbatt
danielabbatt merged commit bdee4d1 into main Sep 29, 2026
1 check passed
@danielabbatt
danielabbatt deleted the feat/map-livetools-general-members branch September 29, 2026 14:09
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