820 Commits

Author SHA1 Message Date
Alice T'Poteat 18be13be81 mods: the diff, sec-default and telemetry tests move next to the mods (#93951)
Squash merge of 4 commits
2026-09-13 18:50:58 -07:00
Alice T'Poteat b5932767f3 mods: telemetry's types path is ./-relative like the other manifest paths (#93932)
Squash merge of 1 commit
2026-09-12 18:59:33 -07:00
Alice T'Poteat e46ab548ab Merge pull request #93912 from anthropics/poteat/mod-tests-seat
mods: unit tests for diff, sec-default and telemetry, typed against the plugin declarations
2026-09-12 15:21:29 -07:00
poteat c13655688d mods: the CI job tells a build with plugin test by its usage line 2026-09-12 15:14:00 -07:00
poteat 28e2635f35 Merge remote-tracking branch 'origin/main' into poteat/mod-tests-seat 2026-09-12 15:06:58 -07:00
poteat 43cc340323 mods: the CI job skips the test step until the installed Claude Code has plugin test 2026-09-12 15:06:56 -07:00
poteat 50f8bb0b7c mods: the declarations name only announced tools and modes 2026-09-12 12:57:13 -07:00
poteat bf4322ffe2 mods: tests settle a started dispatch with clock.settle() 2026-09-12 12:52:24 -07:00
GitHub Actions 2b40e76d3f chore: Update CHANGELOG.md and feed.xml v2.1.270 2026-09-12 19:45:38 +00:00
poteat 485170e06b mods: the telemetry contract exports its types at top level, its hooks and tests importing them from the folder, so the engine's repository reads the same file by path 2026-09-12 12:18:59 -07:00
poteat b95b0150f8 mods: a noun's types live in its own types folder and dependents read them from there 2026-09-12 11:57:54 -07:00
poteat 748e0c4a44 mods: blank lines between statement kinds and around multi-line statements 2026-09-12 11:52:24 -07:00
poteat ee2315b0fa mods: the declarations carry ui.scroll, a site's view, hover scopes and userConfig options, and the pane fixture names its view 2026-09-12 11:51:26 -07:00
poteat 5c1ff842d0 Merge remote-tracking branch 'origin/main' into poteat/mod-tests-seat 2026-09-12 11:48:33 -07:00
poteat f56a625702 mods: the kit's helpers are mock.clock, mock.store and mock.env, MemoryClock is MockClock, and a rendered tree's text is the diff tests' own fixture; the declarations carry 'claude-code/testing' as generated from the kit's source 2026-09-11 17:56:28 -07:00
poteat ead8806353 mods: merge poteat/diff-parity; a mark's props, hyphened Choice members and the built-in panel's marks at its call sites, in the tested and linted layout 2026-09-11 16:55:13 -07:00
poteat 59bb8853c1 mods: each test file is named for the hooks/ subject it covers and holds one describe, shared inputs under tests/fixtures; memoryClock answers $.clock beneath the mod, and the diff pane's close button is pressed through $.ui.press 2026-09-11 15:34:57 -07:00
poteat f43a16bb7b mods: $.clock's now, sleep, after and every are events beneath the mod, now() resolving a promise; the declarations and the diff host follow 2026-09-11 15:34:55 -07:00
GitHub Actions df52d04a4e chore: Update CHANGELOG.md and feed.xml v2.1.269 2026-09-11 19:17:47 +00:00
poteat 4632d1a7c8 mods: the declarations' tsconfig template checks indexed access, as mods/tsconfig.json does 2026-09-11 11:04:32 -07:00
poteat 00d1411da1 mods: the tsconfig checks indexed access, as every hook already guards it 2026-09-11 10:49:37 -07:00
poteat 936b92907c mods: tests sit in one describe each, diff's shared inputs in a fixtures folder, every decision and duplicate named 2026-09-11 10:49:36 -07:00
poteat 97f86b94e8 mods/diff: a helper takes the whole shape its callers hold, and the pane's inset kit has a constructor 2026-09-11 10:46:48 -07:00
poteat 46ea2a528d mods/diff: each decision a hook makes names its test, and a value used once is written where it is used 2026-09-11 10:45:12 -07:00
poteat a9d339b13a mods/diff: each helper sits in a folder of its own, named for what it exports, and barrels list their folders in order 2026-09-11 10:41:47 -07:00
poteat 652580d35f mods: hook JSDoc is a two-line summary and one short paragraph, naming no file path 2026-09-11 10:40:43 -07:00
poteat 4d63891b4f mods/diff: three hook files are formatted as the rest are 2026-09-11 10:38:32 -07:00
poteat ee5d2e5994 mods: tests name their tier with tier(), and /diff's two answers and the tests on them use an ASCII apostrophe 2026-09-11 10:08:32 -07:00
poteat a5b0e0c198 mods: tests and the README quote in ASCII only 2026-09-11 09:49:22 -07:00
poteat 9d61370e4f mods/telemetry: a row carrying free text is refused unsent, as a test of its own 2026-09-10 22:01:35 -07:00
poteat 55809f27e8 mods/diff: the pane tests say why they draw the hint and what git answers 2026-09-10 22:00:35 -07:00
poteat 07313f0e52 mods/telemetry: its tests record through one /record command and match each post's batch as it was sent 2026-09-10 22:00:34 -07:00
poteat 9e7b3917f1 mods: a workflow typechecks each mod's hooks and tests and runs the tests with claude plugin test on pull requests 2026-09-10 21:59:34 -07:00
poteat 9ebb685d8b mods: the README says how a mod's tests run and what they see 2026-09-10 21:59:33 -07:00
poteat 6cdd79653b mods: the declarations /plugin-types writes, and a tsconfig typechecking every mod's hooks and tests against them 2026-09-10 21:59:32 -07:00
poteat 38b8cf3a3f mods: each mod's tests run from the engine's seat, $ the engine's own and the hooks on() registers beneath the mod 2026-09-10 20:49:05 -07:00
poteat bb429a97b8 mods/diff: tab, base-switch, base-resolve and read marks carry the built-in panel's props and reasons at its call sites 2026-09-10 17:30:44 -07:00
poteat 1e6e5c750b mods/telemetry: a Choice member may carry a hyphen, as the built-in panel's merge-base does 2026-09-10 17:30:39 -07:00
poteat 8dfc5aaf36 mods/telemetry: a mark carries props, checked as a log's are and merged as the CLI's feature marks merge their extras 2026-09-10 17:30:34 -07:00
poteat f6cd2ca471 mods/diff: the pane-shown row is the built-in panel's own, once per session id, and an ask marks diff_selection_attach 2026-09-10 17:15:23 -07:00
poteat 9f306ce925 mods/telemetry: a Choice member may start with a digit; names and keys still start with a letter 2026-09-10 17:12:10 -07:00
poteat c84f073d35 mods/telemetry: an event already named tengu_ is sent under its own name, any other under the plugin prefix 2026-09-10 17:11:40 -07:00
GitHub Actions 536a2e23d9 chore: Update CHANGELOG.md and feed.xml v2.1.268 2026-09-10 20:30:46 +00:00
poteat 1c97c29b18 mods/diff: an asked diff is cut to the room the prompt's context has left, and dropped with a status when none is left 2026-09-10 12:50:09 -07:00
poteat d920522c4b mods/diff: an asked diff rides down to the turn on the prompt's context, not onto the answer 2026-09-10 12:17:29 -07:00
poteat 37f19ef9d9 mods/diff: under 110 columns /diff answers the built-in's resize line and opens nothing 2026-09-10 11:35:07 -07:00
poteat dbe663d948 mods/diff: the pre-session rows sit under the built-in's blank rows, and a rule under the file's name 2026-09-10 11:35:05 -07:00
poteat 478b7180d1 mods/diff: the unanswered-git comment says a git that cannot start has answered 2026-09-10 11:34:22 -07:00
poteat 148e0f0930 mods/diff: the empty state sits where the built-in centers it, the pre-session line at the foot 2026-09-10 10:53:15 -07:00
poteat 8b41514793 mods/diff: a close ✕ at the header's right edge closes the pane as /diff does 2026-09-10 10:52:20 -07:00