Skip to content

feat: Skills/Eval CLI commands, api-surface snapshot update - #97

Merged
tbitcs merged 2 commits into
mainfrom
develop
May 11, 2026
Merged

tbitcs merged 2 commits into
mainfrom
develop

Conversation

@tbitcs

@tbitcs tbitcs commented May 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Wire Skills/Eval pages into Kairos settings_view; add specsmith CLI commands: skills, eval, teams, esdb. Fix ruff lint errors in cli.py. Update API surface snapshot.

Changes

  • New CLI command groups: \specsmith skills, \specsmith eval, \specsmith teams, \specsmith esdb\
  • Fix E501 (x2) and F541 ruff errors in \cli.py\
  • Regenerate \ ests/fixtures/api_surface.json\ to match new surface
  • LEDGER.md updated

Testing

  • 581 pytest tests pass, 2 skipped
  • ruff lint + format: clean

Co-Authored-By: Oz [email protected]

…ams/esdb CLI commands; fix ruff lint in cli.py; update API surface snapshot
@tbitcs
tbitcs merged commit cbdc50e into main May 11, 2026
39 checks passed
tbitcs added a commit that referenced this pull request May 11, 2026
* feat: Skills/Eval CLI commands, api-surface snapshot update (#97)

* feat: wire Skills/Eval pages into Kairos settings; add skills/eval/teams/esdb CLI commands; fix ruff lint in cli.py; update API surface snapshot

* fix: api_surface.json trailing newline for CI diff check

Co-Authored-By: Oz <[email protected]>

---------

Co-authored-by: Oz <[email protected]>

* chore: remove root LEDGER.md dup, untrack chronomemory/target/, add gitignore entry, seal trace vault (#98)

- Delete root LEDGER.md (docs/LEDGER.md is canonical per H7)
- Add crates/chronomemory/target/ to .gitignore (Rust build artifacts)
- git rm --cached to untrack already-committed target/ artifacts
- Seal SEAL-0001: Release phase validated

Co-authored-by: Oz <[email protected]>

* feat: add dev/stable channel selection for self-update

New specsmith.channel module with persistent channel preference:
- channel.py: get/set/clear/effective_channel() — stores in ~/.specsmith/channel
- updater.py: get_update_channel() delegates to effective_channel()
- cli.py: specsmith channel get|set|clear command group
- tests/test_channel.py: 27 unit+CLI tests (all passing)
- api_surface.json: updated to include new channel commands

Usage:
  specsmith channel set dev      # always track pre-releases
  specsmith channel set stable   # always track stable releases
  specsmith channel get          # show channel + source (user/version)
  specsmith channel clear        # revert to auto-detect from version

Co-Authored-By: Oz <[email protected]>

* feat(cli): add esdb export/import/backup/rollback/compact; skills deactivate/delete; mcp generate; agent ask

- esdb: export --output, import <src>, backup [--dir], rollback [--steps], compact commands
- skills: deactivate <id>, delete <id> -y; deactivate_skill/delete_skill in skills_builder.py
- mcp: generate <description> --json (deterministic config stub)
- agent: ask <prompt> [--json-output] (keyword dispatcher to compliance/audit/esdb/skills/session)
- skills_builder: __all__ updated

Co-Authored-By: Oz <[email protected]>

* fix(lint): wrap long lines in esdb/skills commands (ruff E501)

- Break --output and --dir click options onto multiple lines
- Wrap console.print f-strings that exceed 100 chars
- Expand __all__ list in skills_builder.py

Co-Authored-By: Oz <[email protected]>

* style: apply ruff format to cli.py

Co-Authored-By: Oz <[email protected]>

---------

Co-authored-by: Oz <[email protected]>
tbitcs added a commit that referenced this pull request May 11, 2026
…te, agent ask (REQ-248..262) (#100)

* feat: Skills/Eval CLI commands, api-surface snapshot update (#97)

* feat: wire Skills/Eval pages into Kairos settings; add skills/eval/teams/esdb CLI commands; fix ruff lint in cli.py; update API surface snapshot

* fix: api_surface.json trailing newline for CI diff check

Co-Authored-By: Oz <[email protected]>

---------

Co-authored-by: Oz <[email protected]>

* chore: remove root LEDGER.md dup, untrack chronomemory/target/, add gitignore entry, seal trace vault (#98)

- Delete root LEDGER.md (docs/LEDGER.md is canonical per H7)
- Add crates/chronomemory/target/ to .gitignore (Rust build artifacts)
- git rm --cached to untrack already-committed target/ artifacts
- Seal SEAL-0001: Release phase validated

Co-authored-by: Oz <[email protected]>

* feat: add dev/stable channel selection for self-update

New specsmith.channel module with persistent channel preference:
- channel.py: get/set/clear/effective_channel() — stores in ~/.specsmith/channel
- updater.py: get_update_channel() delegates to effective_channel()
- cli.py: specsmith channel get|set|clear command group
- tests/test_channel.py: 27 unit+CLI tests (all passing)
- api_surface.json: updated to include new channel commands

Usage:
  specsmith channel set dev      # always track pre-releases
  specsmith channel set stable   # always track stable releases
  specsmith channel get          # show channel + source (user/version)
  specsmith channel clear        # revert to auto-detect from version

Co-Authored-By: Oz <[email protected]>

* feat(cli): add esdb export/import/backup/rollback/compact; skills deactivate/delete; mcp generate; agent ask

- esdb: export --output, import <src>, backup [--dir], rollback [--steps], compact commands
- skills: deactivate <id>, delete <id> -y; deactivate_skill/delete_skill in skills_builder.py
- mcp: generate <description> --json (deterministic config stub)
- agent: ask <prompt> [--json-output] (keyword dispatcher to compliance/audit/esdb/skills/session)
- skills_builder: __all__ updated

Co-Authored-By: Oz <[email protected]>

* fix(lint): wrap long lines in esdb/skills commands (ruff E501)

- Break --output and --dir click options onto multiple lines
- Wrap console.print f-strings that exceed 100 chars
- Expand __all__ list in skills_builder.py

Co-Authored-By: Oz <[email protected]>

* style: apply ruff format to cli.py

Co-Authored-By: Oz <[email protected]>

* docs+tests: REQ-248..262 — channel, ESDB lifecycle, skills lifecycle, MCP generate, agent ask

- ARCHITECTURE.md: new sections for channel selection, skills builder, ESDB
  extended commands, MCP generator, agent ask dispatcher, Kairos settings
- docs/REQUIREMENTS.md: REQ-248..REQ-262 defined and linked to architecture
- docs/TESTS.md: TEST-248..TEST-262 with pytest cross-references
- docs/LEDGER.md: WI-0511 sprint entry
- README.md: fix badge URLs BitConcepts → layer1labs; add new command examples
- CHANGELOG.md: [0.11.1] entry documenting all new features
- docs/site/commands.md: documented channel, esdb extended, skills lifecycle,
  mcp generate, agent ask
- tests/test_req_248_262.py: 60 new pytest tests (all passing); 5 Kairos UI
  tests registered as xfail (Rust build required)
- .specsmith/{requirements,testcases}.json: synced (261 reqs, 239 tests)
- ruff check + format: clean

Regression: 669 passed, 2 skipped, 5 xfailed

Co-Authored-By: Oz <[email protected]>

---------

Co-authored-by: Oz <[email protected]>

This branch was previously deployed

1 inactive deployment
pypi — 93b8da7b Deployed May 11, 2026 by tbitcs via build-and-publish #187
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant