Skip to content

fix(backlog): restore installed-runtime discovery parity and add backlog prompt#294

Merged
djm81 merged 2 commits intodevfrom
bugfix/backlog-core-04-installed-runtime-discovery-and-add-prompt
Feb 23, 2026
Merged

fix(backlog): restore installed-runtime discovery parity and add backlog prompt#294
djm81 merged 2 commits intodevfrom
bugfix/backlog-core-04-installed-runtime-discovery-and-add-prompt

Conversation

@djm81
Copy link
Copy Markdown
Collaborator

@djm81 djm81 commented Feb 23, 2026

Description

This PR fixes a runtime parity bug where specfact backlog add (and other workspace module commands) could be missing in PyPI-installed runtime when invoked from a repository checkout.

It also adds a new slash prompt for backlog item creation and wires it into IDE prompt installation for consistency with other backlog workflows.

Fixes #173 (follow-up/runtime parity)

New Features N/A

Contract References: No new public API contracts added; existing behavior is adjusted in module discovery root selection and IDE prompt installation list.

Type of Change

Please check all that apply:

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📚 Documentation update
  • 🔒 Contract enforcement (adding/updating @icontract decorators)
  • 🧪 Test enhancement (scenario tests, property-based tests)
  • 🔧 Refactoring (code improvement without functionality change)

Contract-First Testing Evidence

Required for all changes affecting CLI commands or public APIs:

Contract Validation

  • Runtime contracts added/updated (@icontract decorators on public APIs)
  • Type checking enforced (@beartype decorators applied)
  • CrossHair exploration completed: hatch run contract-test-exploration
  • Contract violations reviewed and addressed

Test Execution

  • Contract validation: hatch run contract-test-contracts
  • Contract exploration: hatch run contract-test-exploration
  • Scenario tests: hatch run contract-test-scenarios
  • Full test suite: hatch run contract-test-full

Test Quality

  • CLI commands tested with typer test client
  • Edge cases covered with Hypothesis property tests
  • Error handling tested with invalid inputs
  • Rich console output verified manually or with snapshots

How Has This Been Tested?

Contract-First Approach: Added failing-first tests, implemented fixes, then re-ran targeted suites and OpenSpec strict validation.

Manual Testing

  • Tested CLI commands manually
  • Verified rich console output
  • Tested with different input scenarios
  • Checked error messages for clarity

Automated Testing

  • Contract validation passes
  • Property-based tests cover edge cases
  • Scenario tests cover user workflows
  • All existing tests still pass

Test Environment

  • Python version: 3.12.8
  • OS: Linux (Ubuntu)

Checklist

  • My code follows the style guidelines (PEP 8, ruff format, isort)
  • I have performed a self-review of my code
  • I have added/updated contracts (@icontract, @beartype)
  • I have added/updated docstrings (Google style)
  • I have made corresponding changes to documentation
  • My changes generate no new warnings (basedpyright, ruff, pylint)
  • All tests pass locally
  • I have added tests that prove my fix/feature works
  • Any dependent changes have been merged

Quality Gates Status

  • Type checking ✅ (hatch run type-check)
  • Linting ✅ (hatch run lint)
  • Contract validation ✅ (hatch run contract-test-contracts)
  • Contract exploration ✅ (hatch run contract-test-exploration)
  • Scenario tests ✅ (hatch run contract-test-scenarios)

Screenshots/Recordings (if applicable)

CLI evidence captured:

  • Installed runtime parity fix: specfact backlog -h now includes add when run from repo checkout with modules/ present.
  • hatch run specfact --version returns 0.36.1.
  • New prompt file: resources/prompts/specfact.backlog-add.md and IDE setup wiring in SPECFACT_COMMANDS.

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

Labels

bug Something isn't working

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Backlog Core — Installed Runtime Discovery Parity and Backlog Add Prompt

1 participant