Skip to content

test: vendor lich's kiro session-start fixture - #25

Merged
omartelo merged 1 commit into
mainfrom
fix/session-start-fixture-kiro
Sep 13, 2026
Merged

omartelo merged 1 commit into
mainfrom
fix/session-start-fixture-kiro

Conversation

@omartelo

@omartelo omartelo commented Sep 13, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes the `fixtures match lich` CI job, which fails on main since lich registered Kiro CLI as a provider (lichdotdev/lich#442, commit e0aaae1835) and added a `kiro session id` case to `docs/hooks/fixtures/session-start.jsonl`.

What changes

  • `tests/fixtures/session-start.jsonl`: refreshed with `tests/refresh-fixtures.sh`, not hand-edited. The only upstream difference across the four fixtures is the new line `{"name":"kiro session id","body":{...,"provider":"kiro"},"accept":{...}}`.
  • `tests/hooks.test.mjs`: the pinned provider list in "the vendored fixtures parse..." gains `kiro`. That assertion exists so a new upstream provider is noticed, and it is updated the same way `cursor` was in Report the session title from the turn, not from its end #22. No test is loosened: the enumeration still comes from the fixtures, and every other assertion is unchanged.

Why no hook script changes

  • `hooks/report-session-start.sh` does not enumerate providers: it sends `provider=${1:-claude}` from its argument and reads `.conversationId // .session_id` from stdin.
  • This plugin does not register Kiro. lich writes its own Kiro agent file (`internal/agentplugin/kiro.go` in lich), which runs this plugin's scripts with `agentSpawn -> hooks/report-session-start.sh kiro`. The Kiro TUI payload carries `session_id`, which the script already reads. lich#442 records an end-to-end run against the v0.12.0 scripts that posted `/session-start {"session_id":...,"provider_session_id":...,"provider":"kiro"}`.
  • Cursor CLI is the precedent: a fixture provider with no registration here.

No CHANGELOG entry: nothing a user installs changes.

Test plan

  • `tests/refresh-fixtures.sh` leaves only `session-start.jsonl` changed
  • `node --test tests/*.test.mjs`: 194 pass, 0 fail (193 pass, 1 fail on the pinned provider list before the test update)
  • CI: `hook contract tests` and `fixtures match lich` green

lich registered kiro as a provider in lichdotdev/lich#442 and added its
session-start case, so the drift check fails until the copy is refreshed.
@omartelo
omartelo merged commit 725b015 into main Sep 13, 2026
3 checks passed
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