feat: parse and expose OpenAPI operation tags
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- kotlin, openapi
- Domain
- api, mobile-dev
Research direction
Read OpenApiDocument.kt, OpenApiParser.kt, MockConfiguration.kt, and NetworkMockEndpointScreen.kt to trace parsing, the public Operation model, and existing grouping UI. Inspect MockConfigRepositoryTest.kt and sample specs for fixture patterns, then resolve the FilterChip versus sticky-header choice with maintainers before implementation. Done means tags are parsed, exposed, represented in a fixture and tests, documented, reflected in the API dump, and supported by the chosen UI.
Written by the indexing model from the issue text.
Description
Summary
Follow-up from #114. That issue's design deliberately deferred OpenAPI tags support: no spec in this repo (sample or test fixture) currently declares tags, so parsing and surfacing them would be speculative work with no real usage to validate against — parser change, public API change to Operation, sample-spec edits, doc updates, and new tests, all for a field nobody currently emits.
OpenApiDocument.kt's file KDoc already documents this as a deliberate, currently-unparsed field: "Only fields consumed by OpenApiParser are modeled. Everything else in a real spec (deprecated, tags, security, request bodies, schemas, …) is silently ignored via lenient/non-strict decoding."
Scope, when picked up
- Add
tags: List<String> = emptyList()to the internalOperationObject(devview-networkmock-core/src/commonMain/kotlin/com/worldline/devview/networkmock/core/openapi/OpenApiDocument.kt) and thread it into the publicOperationmodel (MockConfiguration.kt) viaOpenApiParser.kt. - This is a public API change to
Operation— requires:devview-networkmock-core:apiDumpand doc updates (docs/modules/networkmock-core.md, moduleCLAUDE.md). - UI: either a third
FilterChiprow (mutually exclusive with "no groups" for untagged specs — same hidden-when-empty pattern as the version and method rows added in #114), or sticky-header grouping in the operation list (precedent:NetworkMockEndpointScreen.kt's existingstickyHeadergrouping by status-code family). - Needs at least one test fixture spec with
tagsdeclared — none currently exist inMockConfigRepositoryTest.kt's inline JSON, the sample app's specs, or anywhere else in the repo.
Open question
Chip row vs. sticky-header grouping — resolve at design time before implementing, not here (same as #114's original open-questions approach).
- Dominant language
- Kotlin
- Stars
- 10
- Forks
- 2
- Avg merge
- 2d 14h
- Merged PRs (30d)
- 13
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from worldline/devview
-
enhancement good first issue stale
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 45/100
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
All issues in worldline/devview
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
index-request triaged
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Anthonyy232/Paperize#614 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
🌑 nextgen
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
CCBlueX/LiquidBounce#9214 · 1 comment ·