Skip to content

Docs: API coverage roadmap (Reports/PfbApiCoverageRoadmap.md) - #47

Closed
juemerson-at-purestorage wants to merge 1 commit into
mainfrom
docs/api-coverage-roadmap
Closed

Docs: API coverage roadmap (Reports/PfbApiCoverageRoadmap.md)#47
juemerson-at-purestorage wants to merge 1 commit into
mainfrom
docs/api-coverage-roadmap

Conversation

@juemerson-at-purestorage

Copy link
Copy Markdown
Collaborator

Adds the API coverage roadmap that the tracking issue #46 and the per-family issues (#30#45) already reference — so the file lives in the repo and can be reviewed/commented on line-by-line.

What it is: a prioritized development guide for closing FlashBlade REST API coverage gaps, derived from Reports/PfbApiDriftReport.{md,json} (28 REST versions, 2.0–2.27). It groups the raw drift findings into functional cmdlet families, ranks them into priority tiers, and records the rationale.

Highlights:

Not for immediate merge — posted so the roadmap is tracked and commentable. Happy to merge once the ordering/priority is agreed (comments on ranking especially welcome, per the discussion with @dmann000).

Prioritized development guide for closing FlashBlade REST API coverage
gaps, derived from Reports/PfbApiDriftReport.{md,json}. Groups the drift
findings into functional cmdlet families with a priority ranking, and
records the Fusion workstream scope boundary (context_names + allow_errors
owned by #25). Backs the tracking issue #46 and the per-family issues
(#30-#45), which reference this file.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@juemerson-at-purestorage

Copy link
Copy Markdown
Collaborator Author

Closing this without merging. The roadmap's content has been folded into #46, which is now
self-contained.

The deciding factor is that this document's top priority is already finished. Sweep S4
("P0-1 — fix half-built writers, treat as bugs") named 17 cmdlets with specific
missing-field counts. Re-measured against a current drift report, all 17 are now zero
closed by #31 / PR #66. Update-PfbCertificate 25→0, New-PfbNfsExportRule 19→0,
Update-PfbArrayConnection 14→0, Update-PfbTlsPolicy 14→0, and so on. The single
remaining hit anywhere in that table is Update-PfbApiClient's max_role, which is the
deliberately hand-excluded deprecated field tracked as #65 item 4.

Every headline figure has also moved, in both directions:

Metric This PR Current
Uncovered endpoints 117 96
Endpoints with parameter gaps 282 438
context_names systemic gap 197 270
allow_errors systemic gap 134 118
Public/ cmdlets 523 542
REST versions analysed 28 (2.0–2.27) 29 (2.0–2.28)

The "not-verified endpoints: 164" metric no longer exists at all — the generator replaced it
with partial-confidence scoring (59 endpoints today).

The general problem is that a hand-maintained snapshot of generated data goes stale silently.
This one did so in ten days, and nothing signalled it. Updating the numbers would just restart
that clock, so the durable fix is to stop hand-maintaining the derivable parts: #46 now carries
only the family→priority ranking and the ownership map, and points at
Reports/PfbApiDriftReport.md for every count.

What is worth preserving from this PR, and is not currently generated anywhere: the
family→priority ranking, and the reasoning for putting correctness bugs in shipping cmdlets
ahead of net-new endpoint coverage. Both now live in #46's body — the S4 rationale was right
even though its data expired.

If a committed roadmap artifact is still wanted, the right form is a generated one: a
coverageRoadmap section emitted by tools/Build-PfbApiDriftReport.ps1 from a small curated
family→endpoint table, so the counts and the "already covered, box closes" transitions
regenerate alongside everything else. Happy to open that as its own issue if you want it.

Reopen if you'd rather keep a committed document and update it instead — no objection, it just
needs the S4 table and all counts struck first.

@juemerson-at-purestorage

Copy link
Copy Markdown
Collaborator Author

Superseded by the #46 rewrite — see the analysis above.

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