Repository navigation
chore: release packages - #106
Merged
Merged
Conversation
github-actions
Bot
force-pushed
the
changeset-release/main
branch
2 times, most recently
from
October 1, 2026 06:52
f1a1e2e to
ab57ac8
Compare
AI-Mode: agent
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
October 1, 2026 06:59
ab57ac8 to
e61f836
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@evidtrail/core@1.2.0
Minor Changes
bf37d7c: The rename reaches the identifiers no user ever sees
The 1.2 rename deliberately stopped at the surface: config file, environment variable, command name, markers. The code underneath still said
AidaConfig,installAidaHook,loadAidaConfig,isAidaHookInstalled, and the schema lived inaida-config.ts. Harmless to run, confusing to read, and a trap for anyone opening the source after arriving from the new name.@evidtrail/coreexportsEvidtrailConfig; the schema file isevidtrail-config.ts.AidaConfigis a published export, so it stays as a deprecated alias of the same schema until the next major — renaming it outright would break importers on a minor upgrade, which is the opposite of what the rename promised. A test asserts the two are the same object.loadConfig,installHook,uninstallHook,isHookInstalled,stripHookBlock,existingWorkflow. OnlyisEvidtrailHookkeeps a name, because its whole job is telling our hook from someone else's.No behaviour changes: same schema, same checks, same output.
Patch Changes
b02ad4a: Observation stops at
--until: a bounded run no longer reads truncated files as untouched, or a truncated month as matureFound by an external review, reproduced, and it flatters: with
--until 2 Jan, a file added on 1 Jan and edited on 4 Jan was reported as having survived a 7-day window untouched (0/1, 0%). The edit had been cut out of the stream, but every elapsed-time measurement still ran to the collection date months later, so "nothing happened" and "we stopped looking" were indistinguishable. The trend inherited the slip: a month cut short by the bound passed the maturity gate and entered the headline comparison with a window it never had.untilbound (observationEndOf). Persistence, rapid retouch, the recent-coverage window and trend maturity all run to that instant. The artifact records it aswindow.observationEnd.sinceanduntilare stored in the stream as the resolved instants, not the flag text.--until 10dre-read tomorrow would name a different day, and a metrics artifact must be a pure function of its input.Runs without
--untilare unchanged. On external repositories bounded ten days back, files that had been promoted to eligible return to too recent (aspire: 362 → 723 at 30 days is the direction to expect; exact figures in the pull request).0987339: Renames follow the file: a moved file is one file, not a phantom path plus a stranger
Found by an external review, reproduced, and it flatters:
old.ts→git mv new.ts→ editnew.tsproduced three paths in the stream —old.ts,old.ts => new.tsandnew.ts— with the rename filed as a modification of a file that never existed. Every rename in a repository was one more eligible file that could never be retouched, and the real file's later edits were filed under a name its first touch had never been recorded against. On react-router, 1,956 renames were doing this.git log --numstatnames a renamed file asold => newordir/{old => new}/file; both forms are now parsed (splitRenamePath). The stream records the file under its new name withpreviousPathset and statusrenamed(additive field, no schema bump). PR-scoped collection (git show) gets the same parsing.Direction of the change on real repositories: eligible files go down, retouches go up, and the rate rises — the phantom paths had been padding the denominator with files nothing could ever touch. Exact figures in the pull request.
46bd263: The trend says when two periods are not comparable by size; the report drops three phrases that promised more than the numbers hold
Comparability by size (Trend compares periods that are not comparable by size #102). Maturity answers "have both periods had the same time?"; nothing answered "is there enough in each, and are they alike enough, for a delta to mean anything?". Found on this repository: 5 commits over 18 files against 18 commits over 53 files, two empty months between, rendered as a +60.9 pt change in rapid retouch. The arithmetic was right; the reading it invited was not.
latestComparison.comparability(additive): eligible files and authored commits per side, and a status —ok,weak(sizes differ beyond 3×) orinsufficient(a side has fewer than 10 eligible files) — with the reasons spelled out.Words. "How code holds up" → "how often code is touched again"; "below is better than average" → "below is fewer than its share predicts". The Data Quality section now says how many AI commits carry a tool signal but no autonomy level: coverage counts them as evidence, the autonomy sections count them as
unknown, and 100% coverage was reading as 100% known.Windowed runs. With
--since, a file's clock starts at its first touch inside the window, so the population differs from a full-history run (68% vs 90% on the same repository). The report now says so next to the table.Codex.
codexjoins the default tool names: "generated by Codex" was returning no evidence while the same sentence with Claude was inferred AI. The hook does not auto-detect Codex, because Codex documents no environment variable for spawned commands and a guess that could be wrong is worse than an honestunknown; the README says to declare withEVIDTRAIL_MODE.@evidtrail/cli@1.2.1
Patch Changes
bf37d7c: The rename reaches the identifiers no user ever sees
The 1.2 rename deliberately stopped at the surface: config file, environment variable, command name, markers. The code underneath still said
AidaConfig,installAidaHook,loadAidaConfig,isAidaHookInstalled, and the schema lived inaida-config.ts. Harmless to run, confusing to read, and a trap for anyone opening the source after arriving from the new name.@evidtrail/coreexportsEvidtrailConfig; the schema file isevidtrail-config.ts.AidaConfigis a published export, so it stays as a deprecated alias of the same schema until the next major — renaming it outright would break importers on a minor upgrade, which is the opposite of what the rename promised. A test asserts the two are the same object.loadConfig,installHook,uninstallHook,isHookInstalled,stripHookBlock,existingWorkflow. OnlyisEvidtrailHookkeeps a name, because its whole job is telling our hook from someone else's.No behaviour changes: same schema, same checks, same output.
b02ad4a: Observation stops at
--until: a bounded run no longer reads truncated files as untouched, or a truncated month as matureFound by an external review, reproduced, and it flatters: with
--until 2 Jan, a file added on 1 Jan and edited on 4 Jan was reported as having survived a 7-day window untouched (0/1, 0%). The edit had been cut out of the stream, but every elapsed-time measurement still ran to the collection date months later, so "nothing happened" and "we stopped looking" were indistinguishable. The trend inherited the slip: a month cut short by the bound passed the maturity gate and entered the headline comparison with a window it never had.untilbound (observationEndOf). Persistence, rapid retouch, the recent-coverage window and trend maturity all run to that instant. The artifact records it aswindow.observationEnd.sinceanduntilare stored in the stream as the resolved instants, not the flag text.--until 10dre-read tomorrow would name a different day, and a metrics artifact must be a pure function of its input.Runs without
--untilare unchanged. On external repositories bounded ten days back, files that had been promoted to eligible return to too recent (aspire: 362 → 723 at 30 days is the direction to expect; exact figures in the pull request).46bd263: The trend says when two periods are not comparable by size; the report drops three phrases that promised more than the numbers hold
Comparability by size (Trend compares periods that are not comparable by size #102). Maturity answers "have both periods had the same time?"; nothing answered "is there enough in each, and are they alike enough, for a delta to mean anything?". Found on this repository: 5 commits over 18 files against 18 commits over 53 files, two empty months between, rendered as a +60.9 pt change in rapid retouch. The arithmetic was right; the reading it invited was not.
latestComparison.comparability(additive): eligible files and authored commits per side, and a status —ok,weak(sizes differ beyond 3×) orinsufficient(a side has fewer than 10 eligible files) — with the reasons spelled out.Words. "How code holds up" → "how often code is touched again"; "below is better than average" → "below is fewer than its share predicts". The Data Quality section now says how many AI commits carry a tool signal but no autonomy level: coverage counts them as evidence, the autonomy sections count them as
unknown, and 100% coverage was reading as 100% known.Windowed runs. With
--since, a file's clock starts at its first touch inside the window, so the population differs from a full-history run (68% vs 90% on the same repository). The report now says so next to the table.Codex.
codexjoins the default tool names: "generated by Codex" was returning no evidence while the same sentence with Claude was inferred AI. The hook does not auto-detect Codex, because Codex documents no environment variable for spawned commands and a guess that could be wrong is worse than an honestunknown; the README says to declare withEVIDTRAIL_MODE.Updated dependencies [bf37d7c]
Updated dependencies [b02ad4a]
Updated dependencies [0987339]
Updated dependencies [46bd263]
@evidtrail/metrics@1.1.1
Patch Changes
b02ad4a: Observation stops at
--until: a bounded run no longer reads truncated files as untouched, or a truncated month as matureFound by an external review, reproduced, and it flatters: with
--until 2 Jan, a file added on 1 Jan and edited on 4 Jan was reported as having survived a 7-day window untouched (0/1, 0%). The edit had been cut out of the stream, but every elapsed-time measurement still ran to the collection date months later, so "nothing happened" and "we stopped looking" were indistinguishable. The trend inherited the slip: a month cut short by the bound passed the maturity gate and entered the headline comparison with a window it never had.untilbound (observationEndOf). Persistence, rapid retouch, the recent-coverage window and trend maturity all run to that instant. The artifact records it aswindow.observationEnd.sinceanduntilare stored in the stream as the resolved instants, not the flag text.--until 10dre-read tomorrow would name a different day, and a metrics artifact must be a pure function of its input.Runs without
--untilare unchanged. On external repositories bounded ten days back, files that had been promoted to eligible return to too recent (aspire: 362 → 723 at 30 days is the direction to expect; exact figures in the pull request).0987339: Renames follow the file: a moved file is one file, not a phantom path plus a stranger
Found by an external review, reproduced, and it flatters:
old.ts→git mv new.ts→ editnew.tsproduced three paths in the stream —old.ts,old.ts => new.tsandnew.ts— with the rename filed as a modification of a file that never existed. Every rename in a repository was one more eligible file that could never be retouched, and the real file's later edits were filed under a name its first touch had never been recorded against. On react-router, 1,956 renames were doing this.git log --numstatnames a renamed file asold => newordir/{old => new}/file; both forms are now parsed (splitRenamePath). The stream records the file under its new name withpreviousPathset and statusrenamed(additive field, no schema bump). PR-scoped collection (git show) gets the same parsing.Direction of the change on real repositories: eligible files go down, retouches go up, and the rate rises — the phantom paths had been padding the denominator with files nothing could ever touch. Exact figures in the pull request.
46bd263: The trend says when two periods are not comparable by size; the report drops three phrases that promised more than the numbers hold
Comparability by size (Trend compares periods that are not comparable by size #102). Maturity answers "have both periods had the same time?"; nothing answered "is there enough in each, and are they alike enough, for a delta to mean anything?". Found on this repository: 5 commits over 18 files against 18 commits over 53 files, two empty months between, rendered as a +60.9 pt change in rapid retouch. The arithmetic was right; the reading it invited was not.
latestComparison.comparability(additive): eligible files and authored commits per side, and a status —ok,weak(sizes differ beyond 3×) orinsufficient(a side has fewer than 10 eligible files) — with the reasons spelled out.Words. "How code holds up" → "how often code is touched again"; "below is better than average" → "below is fewer than its share predicts". The Data Quality section now says how many AI commits carry a tool signal but no autonomy level: coverage counts them as evidence, the autonomy sections count them as
unknown, and 100% coverage was reading as 100% known.Windowed runs. With
--since, a file's clock starts at its first touch inside the window, so the population differs from a full-history run (68% vs 90% on the same repository). The report now says so next to the table.Codex.
codexjoins the default tool names: "generated by Codex" was returning no evidence while the same sentence with Claude was inferred AI. The hook does not auto-detect Codex, because Codex documents no environment variable for spawned commands and a guess that could be wrong is worse than an honestunknown; the README says to declare withEVIDTRAIL_MODE.Updated dependencies [bf37d7c]
Updated dependencies [b02ad4a]
Updated dependencies [0987339]
Updated dependencies [46bd263]