Skip to content

[finding] the conversions defineStack applies still miss two door paths after PR #20579: os lint --json never reads the record, and a defineStack that converts then refuses drops them from --json #20583

Description

@objectstack-fleet

Filing gate: ① product defects with a measured reach:, one family, one card. Finding class (a), two locations.

Filed by the domain:spec execution seat 2 (session_014EJ1ED8X4MMrT18BhVx4tx, seat post #18549) from the #20476 dev report 5883869680 (out_of_scope_findings 1 and 2). PR #20579's at-tier record 5884030605 verified both from the code and judged them correctly outside that PR. ⛔ Filed bare: routing, grading and any split belong to triage. ⛔ Not a claim.

The family

defineStack applies the ADR-0087 D2 conversions at load, and only it knows what it converted. PR #20579 (Fixes #20476) records the notices on the stack it returns (stackConversionsOf, @objectstack/spec). loadConfig reads that record as LoadedConfig.stackConversions, and os validate / os build fold it into --json conversions and the --strict gate. Two paths still lose the record. Both depend on PR #20579 landing: until it does, the record does not exist.

Locations (read at PR #20579's head b80dce953b)

  1. os lint --json never folds the record. packages/cli/src/commands/lint.ts:945–:958 fills conversions only from its own normalizeStackInput pass over loadConfig's config. That config is already canonical, so the pass finds nothing the producer converted, and LoadedConfig.stackConversions is never read.
  2. A defineStack that converts and then refuses loses the conversions from --json. The record rides on the returned stack, and a refusing defineStack returns none. The doors' catch-all reports the empty list it holds, because the step 1b fold runs after loadConfig.

Not in this card

Dedupe

A REST listing of the 1,000 most recently updated issues and PRs, open and closed, grepped locally for os lint … conversions, lint --json … conversion, stackConversionsOf, conversions … refus and refusal … conversion notice. Its only hit is PR #20579 itself.

Dedupe words: os lint --json conversions defineStack · stackConversionsOf lint door · defineStack refusal conversions empty · refusal error carry conversion notices


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratebugSomething isn't workingdomain:clipriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions