Skip to content

design/state/ does not exist, and the reader/checker/projector tooling built for it has nothing to read #151

Description

@The-Running-Dev

Symptom — running Invoke-Pester -Path tools (or tools/Test-DesignState.ps1 directly) against a fresh checkout of this repository fails/could-not-evaluates: design/state/ does not exist anywhere in the tree, but tools/Read-DesignState.ps1, tools/Test-DesignState.ps1, and their own test suites assert real records exist there and self-check against this repository's own state. Expected the design-state reader/checker/projector (added in dc4d9b1) to have something to read; instead six Pester tests fail or report could-not-evaluate, and Test-DesignState.ps1 exits 2 naming StateSetAbsent.

Observed on branch reconcile-after-s13, commit be72319, macOS/Darwin, PowerShell 7.6.4, pwsh.

Reproduce

  1. pwsh -File ./tools/Test-DesignState.ps1 against a checkout of main (or this branch) — exits 2, reporting [ContractListUnreadable] SectionNotFound: design/20-contract.md and [StateSetAbsent] design/state/ is missing or holds zero records.
  2. Invoke-Pester -Path tools -PassThru — six failures/one block failure, all pointing at the same absence: Read-DesignState.Tests.ps1 S4.6, Test-DesignState.Tests.ps1 S5.6/S12.5/S12.6 (a block failure via a Pester label bug, Pester breaks on functions with unknown label pester/Pester#2669, that also takes down two child assertions), and Update-DesignProjection.Tests.ps1 S7.2.

Done when

  • A regression test fails without the fix and passes with it

Agent instructions

This issue is the specification. A bug has no upstream design document, so unlike a
slice this block is the home rather than a pointer — it carries the constraints instead
of naming where they live.

  • Authority: the failing tests named above (tools/Read-DesignState.Tests.ps1, tools/Test-DesignState.Tests.ps1, tools/Update-DesignProjection.Tests.ps1), all currently red against this repository's own tree.
  • Out of scope: the S12.6 block failure's own root cause (a break/continue label mismatch inside the test file, tracked upstream as Pester breaks on functions with unknown label pester/Pester#2669) — that is a test-authoring defect in this repository's Pester usage, separable from whether design/state/ should exist.
  • Stop if: populating design/state/ turns out to need a contract or schema decision about what belongs in it — that is a design question, not a bug fix.
  • Verify by reverting the fix and confirming the tests fail again.
  • Discovered while running /verify on pull request #150; not introduced by that PR, which touches only docs/docs/guide.md.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions