perttool 0.10.0 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,29 @@ This project records its notable changes here. The format is based on [Keep a Ch
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.10.2] - 2026-08-21
8
+
9
+ Compatible Grammar 8 and CLI Contract 9 patch for Issue #20.
10
+
11
+ ### Fixed
12
+
13
+ - Treat an unchanged retained assurance receipt whose producer is absent from
14
+ both adjacent historical snapshots as evidence extension instead of a
15
+ frozen-plan conflict, while preserving conflicts for one-sided presence,
16
+ changed receipts, and present frozen-task changes.
17
+
18
+ ## [0.10.1] - 2026-08-20
19
+
20
+ Compatible Grammar 8 and CLI Contract 9 patch for Issue #22.
21
+
22
+ ### Fixed
23
+
24
+ - Restored `document migrate --target-grammar 7` as the repository-bound route
25
+ required before milestone-acceptance `dag advance`.
26
+ - Made Contract 9 help and JSON discovery advertise target grammars 7 and 8
27
+ plus both applicable migration result schemas.
28
+ - Returned the active CLI Contract 9 envelope for Grammar 7 migration results.
29
+
7
30
  ## [0.10.0] - 2026-08-18
8
31
 
9
32
  Breaking Grammar 8 and CLI Contract 9 beta minor. This version publishes
@@ -543,7 +566,9 @@ First public development preview. Intended to evaluate the DSL and CLI, read-onl
543
566
  - Not published to the npm registry; use the GitHub Release asset
544
567
  - Requires Node.js 24 or later
545
568
 
546
- [Unreleased]: https://github.com/mako10k/perttool/compare/v0.10.0...HEAD
569
+ [Unreleased]: https://github.com/mako10k/perttool/compare/v0.10.2...HEAD
570
+ [0.10.2]: https://github.com/mako10k/perttool/compare/v0.10.1...v0.10.2
571
+ [0.10.1]: https://github.com/mako10k/perttool/compare/v0.10.0...v0.10.1
547
572
  [0.10.0]: https://github.com/mako10k/perttool/compare/v0.9.4...v0.10.0
548
573
  [0.9.4]: https://github.com/mako10k/perttool/compare/v0.9.3...v0.9.4
549
574
  [0.9.3]: https://github.com/mako10k/perttool/compare/v0.9.2...v0.9.3
package/README.md CHANGED
@@ -75,8 +75,9 @@ commands, 23 root schemas, 129 root and Node runtime exports,
75
75
  criterion-set replacement, caller-asserted receipts, and acceptance-aware
76
76
  canonical advance. Its accepted release commit, annotated tag, GitHub
77
77
  prerelease, and npm artifact agree, and npm currently reports
78
- `latest=0.9.0`, `beta=0.9.4`, and no `alpha`. Source is prepared for the
79
- unpublished `0.10.0` Grammar 8 and CLI Contract 9 beta candidate. Version `0.8.1` remains the
78
+ `latest=beta=0.10.0` and no `alpha`. Version `0.10.0` is the published Grammar
79
+ 8 and CLI Contract 9 beta. Source is prepared for the compatible `0.10.2`
80
+ Issue #20 retained-receipt history patch. Version `0.8.1` remains the
80
81
  exact Grammar 6 and CLI Contract 7 rollback pin.
81
82
 
82
83
  Version `0.9.1` is the durably accepted compatible Contract 8 patch for
@@ -677,6 +678,7 @@ diagnostics, and future or unavailable temporal eligibility must fail closed.
677
678
  - [`v0.9.3` publication record](docs/process/0.9.3-publish.md)
678
679
  - [`v0.9.3` durable release acceptance](docs/process/0.9.3-release-acceptance.md)
679
680
  - [`v0.9.4` release procedure](docs/process/0.9.4-release.md)
681
+ - [`v0.10.2` release procedure](docs/process/0.10.2-release.md)
680
682
  - [Conditional Plan Assurance interface acceptance](docs/process/plan-assurance-interface-acceptance.md)
681
683
  - [Shared Library Boundary](docs/specs/shared-library.md)
682
684
  - [Editor Protocol Contract](docs/specs/editor-protocol.md)
@@ -724,9 +726,9 @@ diagnostics, and future or unavailable temporal eligibility must fail closed.
724
726
  Report vulnerabilities privately according to [SECURITY.md](SECURITY.md).
725
727
  perttool is released under the [MIT License](LICENSE). See
726
728
  [CHANGELOG.md](CHANGELOG.md) for release changes and known limitations.
727
- The current repository source identifies `0.10.0` and activates Grammar 8,
728
- CLI Contract 9, 56 commands, and the seven replacement result identities. It
729
- is preparation state only: no `v0.10.0` tag, GitHub Release, or npm package is
730
- claimed until candidate acceptance and separately authorized PUBLISH succeed.
729
+ The current repository source identifies `0.10.2` and retains Grammar 8,
730
+ CLI Contract 9, 56 commands, and 23 root schemas. It corrects the retained
731
+ receipt history classification reported in Issue #20 while retaining Grammar 7
732
+ to 8 migration. Version `0.10.1` remains the exact rollback pin.
731
733
  Migration guidance is in
732
734
  [`0.9.4-to-0.10.0-migration.md`](docs/process/0.9.4-to-0.10.0-migration.md).
package/dist/cli.js CHANGED
@@ -3049,7 +3049,7 @@ async function runDocumentMigration(args) {
3049
3049
  return runContract9DocumentMigration(args);
3050
3050
  const parsed = parseCommandOptions("document.migrate", args);
3051
3051
  if (parsed.positionals.length !== 1 || parsed.values.get("target-grammar") !== "7")
3052
- throw new UsageError("document migrate requires <file> --target-grammar 8");
3052
+ throw new UsageError("document migrate requires <file> --target-grammar 7 or 8");
3053
3053
  const sourceOperand = parsed.positionals[0];
3054
3054
  if (sourceOperand === "-")
3055
3055
  throw new UsageError("document migrate requires a repository file");
@@ -3081,7 +3081,7 @@ async function runDocumentMigration(args) {
3081
3081
  }
3082
3082
  }
3083
3083
  if (format === "json")
3084
- writeJson({ schema_version: "Perttool.MilestoneAcceptanceMigrationResult.v1", cli_contract_version: 8,
3084
+ writeJson({ schema_version: "Perttool.MilestoneAcceptanceMigrationResult.v1", cli_contract_version: 9,
3085
3085
  tool_version: TOOL_VERSION, operation: "document.migrate", ...snakeJson(result) });
3086
3086
  else if (result.candidateText !== null)
3087
3087
  process.stdout.write(result.candidateText);