Repository navigation
Description
Summary
Feedback on the integration test logs (tests/integration/all-resource-types/basicv2-test.log) identified several readability and usability improvements for the Extract and Publish command output.
Proposed Improvements
Extract Command (src/cli/extract-command.ts)
-
Group resources by dependency tier — The "Extracted N Type(s)" lines are a flat list with no visual hierarchy. Group by tier or add blank lines between categories.
-
List all APIs in the detail section — Currently only APIs with specs/operations are shown (7 of 12). APIs like
src-graphql-syntheticandsrc-a2a-weather-agentare silently omitted. List all APIs even if minimal. -
Add elapsed time to the Total line —
Total: 96 resources extracted, 0 errorsshould include duration (e.g.,in 12.3s).
Publish Command (src/services/publish-service.ts, src/cli/publish-command.ts)
-
Add tier/phase headers — All PUTs are a single flat stream. Since publish executes in dependency tiers, add headers:
── Tier 1: Independent resources (16) ── PUT namedvalue/src-nv-plain ... ── Tier 2: Resources with dependencies (2) ── PUT backend/src-backend-pool -
Add elapsed time — No indication of how long publish took or which resources were slow. Add per-tier or total timing.
-
Enrich the summary —
41 creates/updates, 0 deletes, 1 skippedcould also show total elapsed time and retry count (e.g., "6 retries across 2 resources").
Retry Logging (src/clients/apim-client.ts)
-
Round retry delay values —
retrying after 1175.1730686888397ms→retrying in 1.2s -
Include resource context in retry warnings — Currently no indication of which resource triggered the retry.
-
Include attempt number — e.g.,
(attempt 2/5)so readers know retry progress. -
Reduce retry noise in output — Retries interleave with PUT lines and break the flow. Consider grouping retries under their resource or suppressing intermediate retries (show only final outcome with retry count).
Files to Modify
src/cli/extract-command.ts— items 1–3src/services/publish-service.ts— items 4–6src/cli/publish-command.ts— items 5–6src/clients/apim-client.ts— items 7–10
Related
Based on review of tests/integration/all-resource-types/basicv2-test.log
Activity
github-actions commentedon Jul 27, 2026
It will be automatically closed after 60 days of inactivity.
To keep this issue open:
stalelabel.feat: improve extract and publish log readability (Closes #162)
refactor: share tier labels, add retriedResources to JSON, tidy retry…