macrostates-cli 0.4.0__tar.gz → 0.5.0__tar.gz

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.
Files changed (42) hide show
  1. macrostates_cli-0.5.0/.macrostates/implementation/application.yaml +10 -0
  2. macrostates_cli-0.5.0/.macrostates/implementation/release.yaml +4 -0
  3. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/PKG-INFO +17 -13
  4. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/README.md +16 -12
  5. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_project.py +8 -5
  6. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_validation.py +25 -2
  7. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_versioning.py +6 -2
  8. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates_cli.egg-info/PKG-INFO +17 -13
  9. macrostates_cli-0.4.0/.macrostates/implementation/application.yaml +0 -10
  10. macrostates_cli-0.4.0/.macrostates/implementation/release.yaml +0 -4
  11. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/LICENSE +0 -0
  12. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/MANIFEST.in +0 -0
  13. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/pyproject.toml +0 -0
  14. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/setup.cfg +0 -0
  15. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/__init__.py +0 -0
  16. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/__main__.py +0 -0
  17. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_build_version.py +0 -0
  18. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_changes.py +0 -0
  19. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_cli.py +0 -0
  20. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_deliverables.py +0 -0
  21. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_formats/__init__.py +0 -0
  22. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_formats/common.py +0 -0
  23. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_formats/v0.py +0 -0
  24. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_formats/v1.py +0 -0
  25. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_git.py +0 -0
  26. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_integration.py +0 -0
  27. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_integrity.py +0 -0
  28. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_io.py +0 -0
  29. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_migration.py +0 -0
  30. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_models.py +0 -0
  31. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_mutations.py +0 -0
  32. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_release.py +0 -0
  33. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_scopes.py +0 -0
  34. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_sources.py +0 -0
  35. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_staged.py +0 -0
  36. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/_sync.py +0 -0
  37. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates/py.typed +0 -0
  38. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates_cli.egg-info/SOURCES.txt +0 -0
  39. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates_cli.egg-info/dependency_links.txt +0 -0
  40. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates_cli.egg-info/entry_points.txt +0 -0
  41. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates_cli.egg-info/requires.txt +0 -0
  42. {macrostates_cli-0.4.0 → macrostates_cli-0.5.0}/src/macrostates_cli.egg-info/top_level.txt +0 -0
@@ -0,0 +1,10 @@
1
+ schema_version: 1
2
+ name: macrostates-cli
3
+ version: 0.5.0
4
+ status: candidate
5
+ specification: specs-2.0.0
6
+ implementation: imp-2.0.0
7
+ release_date: '2026-10-13'
8
+ source:
9
+ tag: v0.5.0
10
+ source_sha256: 9b1ce349710c5f6875d4c0b59027a5e0b023392d38822792df0df0e9028b4f90
@@ -0,0 +1,4 @@
1
+ version: imp-2.0.0
2
+ specification: specs-2.0.0
3
+ release_date: '2026-10-13'
4
+ schema_version: 2
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: macrostates-cli
3
- Version: 0.4.0
3
+ Version: 0.5.0
4
4
  Summary: Compose, install and validate versioned Macrostates specification packages.
5
5
  Author-email: Lucas Lopez <713375+lucaslopez@users.noreply.github.com>
6
6
  License-Expression: MIT
@@ -25,8 +25,11 @@ operations. Requires Python 3.12 or newer. Distribution name: `macrostates-cli`.
25
25
  Import package and executable name: `macrostates`.
26
26
  Licensed under [MIT](https://github.com/Macrostates/macrostates-cli/blob/main/LICENSE).
27
27
 
28
- This release introduces application version `0.4.0` and support for the released
29
- Meta 2.2, Process 5, Repository 4, Python 2.1.1 and Python-library 2 packages.
28
+ Application version `0.5.0` supports Meta 3.0 and Process 5.1 alongside earlier
29
+ selected policies. Its own composition uses released Meta 3.0.0, Process 5.1.0,
30
+ Repository 4, Python 2.1.1 and Python-library 2 packages. Under Meta 3.0 and
31
+ Process 5.1, implementers choose version impact within requested work without a
32
+ separate Major-number approval.
30
33
  The CLI application version is independent from its Macrostates specification
31
34
  and implementation baselines. Older projects retain their selected formats and
32
35
  policies until explicitly adopted and migrated.
@@ -38,13 +41,13 @@ Install the published package from
38
41
  newer environment:
39
42
 
40
43
  ```bash
41
- python -m pip install "macrostates-cli>=0.4.0"
44
+ python -m pip install "macrostates-cli>=0.5.0"
42
45
  macrostates --help
43
46
  ```
44
47
 
45
- Use `python -m pip install macrostates-cli==0.4.0` to select this release, or
46
- `python -m pip install --upgrade macrostates-cli` to update. The older `0.3.1`
47
- release remains available for projects that deliberately retain it. A virtual environment can be created with
48
+ Use `python -m pip install macrostates-cli==0.5.0` to select this release, or
49
+ `python -m pip install --upgrade macrostates-cli` to update. The older `0.3.1` and `0.4.0`
50
+ releases remain available for projects that deliberately retain it. A virtual environment can be created with
48
51
  `python -m venv .venv`; activate it before installing when your environment
49
52
  requires one. For a command outside a project environment, use
50
53
  `pipx install macrostates-cli` or `uv tool install macrostates-cli`.
@@ -69,7 +72,7 @@ macrostates info
69
72
  macrostates check
70
73
  ```
71
74
 
72
- The shorthand `macrostates init --name my-project --package meta@2.2.0`
75
+ The shorthand `macrostates init --name my-project --package meta@3.0.0`
73
76
  creates a composition. Repeat `--package NAME@VERSION` for additional packages.
74
77
  Input order supplies both reading order and authority, highest first; review them
75
78
  before installation. No dependency or latest release is selected automatically.
@@ -158,7 +161,7 @@ inspection before retrying. See
158
161
  ## Development And Baseline Releases
159
162
 
160
163
  The following development commands require explicit selection of supported
161
- Process 5.0. `branch-status` and `branch-sync` also serve projects retaining older
164
+ Process 5.0 or 5.1. `branch-status` and `branch-sync` also serve projects retaining older
162
165
  version policies. Core operations work with Git refs and commits; your repository
163
166
  policy defines the review/integration mechanism and required external checks.
164
167
 
@@ -315,11 +318,12 @@ integration-preparation checks belong at their dedicated gate, since ordinary
315
318
  development commits legitimately contain open workflows. Index checks preserve
316
319
  partial staging, have documented resource limits, and exclude submodule contents.
317
320
 
318
- The CLI tracks its own composition under `.macrostates/specs/`. Adoption of the
319
- new official releases, exact selections, lock, and final baseline declarations
320
- will be verified separately. This development branch uses an independent
321
+ The CLI tracks its own composition under `.macrostates/specs/`. The exact
322
+ released selections passed canonical installation, locked reinstallation and
323
+ offline checks. Baseline finalization and application publication retain their
324
+ separate verification gates. The source uses an independent
321
325
  [application declaration](https://github.com/Macrostates/macrostates-cli/blob/main/.macrostates/implementation/application.yaml)
322
- for independent build version `0.4.0`; the Macrostates implementation declaration is a
326
+ for independent build version `0.5.0`; the Macrostates implementation declaration is a
323
327
  separate identity. Candidate/finalized builds bind verified shipped source and
324
328
  rebuild from source distributions without Git. Builds do not mutate declarations
325
329
  or publish artifacts.
@@ -10,8 +10,11 @@ operations. Requires Python 3.12 or newer. Distribution name: `macrostates-cli`.
10
10
  Import package and executable name: `macrostates`.
11
11
  Licensed under [MIT](https://github.com/Macrostates/macrostates-cli/blob/main/LICENSE).
12
12
 
13
- This release introduces application version `0.4.0` and support for the released
14
- Meta 2.2, Process 5, Repository 4, Python 2.1.1 and Python-library 2 packages.
13
+ Application version `0.5.0` supports Meta 3.0 and Process 5.1 alongside earlier
14
+ selected policies. Its own composition uses released Meta 3.0.0, Process 5.1.0,
15
+ Repository 4, Python 2.1.1 and Python-library 2 packages. Under Meta 3.0 and
16
+ Process 5.1, implementers choose version impact within requested work without a
17
+ separate Major-number approval.
15
18
  The CLI application version is independent from its Macrostates specification
16
19
  and implementation baselines. Older projects retain their selected formats and
17
20
  policies until explicitly adopted and migrated.
@@ -23,13 +26,13 @@ Install the published package from
23
26
  newer environment:
24
27
 
25
28
  ```bash
26
- python -m pip install "macrostates-cli>=0.4.0"
29
+ python -m pip install "macrostates-cli>=0.5.0"
27
30
  macrostates --help
28
31
  ```
29
32
 
30
- Use `python -m pip install macrostates-cli==0.4.0` to select this release, or
31
- `python -m pip install --upgrade macrostates-cli` to update. The older `0.3.1`
32
- release remains available for projects that deliberately retain it. A virtual environment can be created with
33
+ Use `python -m pip install macrostates-cli==0.5.0` to select this release, or
34
+ `python -m pip install --upgrade macrostates-cli` to update. The older `0.3.1` and `0.4.0`
35
+ releases remain available for projects that deliberately retain it. A virtual environment can be created with
33
36
  `python -m venv .venv`; activate it before installing when your environment
34
37
  requires one. For a command outside a project environment, use
35
38
  `pipx install macrostates-cli` or `uv tool install macrostates-cli`.
@@ -54,7 +57,7 @@ macrostates info
54
57
  macrostates check
55
58
  ```
56
59
 
57
- The shorthand `macrostates init --name my-project --package meta@2.2.0`
60
+ The shorthand `macrostates init --name my-project --package meta@3.0.0`
58
61
  creates a composition. Repeat `--package NAME@VERSION` for additional packages.
59
62
  Input order supplies both reading order and authority, highest first; review them
60
63
  before installation. No dependency or latest release is selected automatically.
@@ -143,7 +146,7 @@ inspection before retrying. See
143
146
  ## Development And Baseline Releases
144
147
 
145
148
  The following development commands require explicit selection of supported
146
- Process 5.0. `branch-status` and `branch-sync` also serve projects retaining older
149
+ Process 5.0 or 5.1. `branch-status` and `branch-sync` also serve projects retaining older
147
150
  version policies. Core operations work with Git refs and commits; your repository
148
151
  policy defines the review/integration mechanism and required external checks.
149
152
 
@@ -300,11 +303,12 @@ integration-preparation checks belong at their dedicated gate, since ordinary
300
303
  development commits legitimately contain open workflows. Index checks preserve
301
304
  partial staging, have documented resource limits, and exclude submodule contents.
302
305
 
303
- The CLI tracks its own composition under `.macrostates/specs/`. Adoption of the
304
- new official releases, exact selections, lock, and final baseline declarations
305
- will be verified separately. This development branch uses an independent
306
+ The CLI tracks its own composition under `.macrostates/specs/`. The exact
307
+ released selections passed canonical installation, locked reinstallation and
308
+ offline checks. Baseline finalization and application publication retain their
309
+ separate verification gates. The source uses an independent
306
310
  [application declaration](https://github.com/Macrostates/macrostates-cli/blob/main/.macrostates/implementation/application.yaml)
307
- for independent build version `0.4.0`; the Macrostates implementation declaration is a
311
+ for independent build version `0.5.0`; the Macrostates implementation declaration is a
308
312
  separate identity. Candidate/finalized builds bind verified shipped source and
309
313
  rebuild from source distributions without Git. Builds do not mutate declarations
310
314
  or publish artifacts.
@@ -23,6 +23,7 @@ from ._validation import (
23
23
  check_process,
24
24
  has_contract_version,
25
25
  process_requires_modern_layout,
26
+ process_uses_prefixed_baselines,
26
27
  validate_packages,
27
28
  )
28
29
 
@@ -154,7 +155,9 @@ class Project:
154
155
  }
155
156
  process = next((item for item in selection if item["name"] == "process"), None)
156
157
  if process and has_contract_version(process["version"]):
157
- prefix = "specs-" if version(process["version"])[:2] == (5, 0) else "spec-"
158
+ prefix = (
159
+ "specs-" if process_uses_prefixed_baselines(process["version"]) else "spec-"
160
+ )
158
161
  data["project"]["version"] = prefix + "0.1.0"
159
162
  composition = read_composition(data)
160
163
  specs = safe_path(directory, LAYOUTS[layout])
@@ -183,8 +186,8 @@ class Project:
183
186
  if composition.schema_version == 1:
184
187
  meta = next((item for item in composition.packages if item.name == "meta"), None)
185
188
  guidance = (
186
- "These locations and snapshot sources follow the selected Meta 2 layout."
187
- if meta and version(meta.version)[0] == 2
189
+ "These locations and snapshot sources follow the selected Meta layout."
190
+ if meta and version(meta.version)[0] >= 2
188
191
  else "These explicit project-level location and transport choices take precedence over selected packages' older layout and subtree conventions."
189
192
  )
190
193
  overview += f"\n## Layout and verification\n\nSpecification files live under `{specs.relative_to(directory).as_posix()}/`; implementation documentation lives under `{project.implementation.relative_to(directory).as_posix()}/`. Packages marked `github-archive` are tracked release snapshots checked against `composition.lock.yaml`. {guidance} Local packages remain editable. Process, when selected, owns composition/implementation version policy. CLI checks supplement specification reading and do not establish implementation conformance.\n"
@@ -399,9 +402,9 @@ class Project:
399
402
  selected = next(
400
403
  (item for item in self._composition().packages if item.name == "process"), None
401
404
  )
402
- if selected is None or version(selected.version)[:2] != (5, 0):
405
+ if selected is None or not process_uses_prefixed_baselines(selected.version):
403
406
  raise MacrostatesError(
404
- "This operation requires an explicitly selected Process 5.0 policy; older projects are not migrated implicitly"
407
+ "This operation requires an explicitly selected Process 5.0 or 5.1 policy; older projects are not migrated implicitly"
405
408
  )
406
409
  if git_scope:
407
410
  from ._git import git
@@ -216,7 +216,7 @@ class Process50Policy:
216
216
  from ._versioning import baselines
217
217
 
218
218
  if implementation.parent.name != ".macrostates":
219
- report.add("process.layout", "Process 5.0 requires .macrostates/implementation/")
219
+ report.add("process.layout", f"{self.label} requires .macrostates/implementation/")
220
220
  return
221
221
  root = implementation.parent.parent
222
222
  try:
@@ -237,6 +237,12 @@ class Process50Policy:
237
237
  report.add("process.release_invalid", str(exc))
238
238
 
239
239
 
240
+ class Process51Policy(Process50Policy):
241
+ """5.1 relaxes Major assignment authority without changing baseline formats."""
242
+
243
+ label = "Process 5.1"
244
+
245
+
240
246
  PROCESS_POLICIES = {
241
247
  (2, 3): Process23Policy(),
242
248
  (2, 4): Process24Policy(),
@@ -244,6 +250,7 @@ PROCESS_POLICIES = {
244
250
  (4, 0): Process40Policy(),
245
251
  (4, 1): Process41Policy(),
246
252
  (5, 0): Process50Policy(),
253
+ (5, 1): Process51Policy(),
247
254
  }
248
255
 
249
256
 
@@ -257,6 +264,11 @@ def process_requires_modern_layout(process_version: str) -> bool:
257
264
  return policy is not None and policy.requires_modern_layout
258
265
 
259
266
 
267
+ def process_uses_prefixed_baselines(process_version: str) -> bool:
268
+ """Opt only explicitly reviewed policies into the schema-2 baseline operations."""
269
+ return isinstance(PROCESS_POLICIES.get(version(process_version)[:2]), Process50Policy)
270
+
271
+
260
272
  class Meta20Policy:
261
273
  """Meta 2.0 layout and explicit composition-format checks."""
262
274
 
@@ -283,7 +295,18 @@ class Meta22Policy(Meta21Policy):
283
295
  label = "Meta 2.2"
284
296
 
285
297
 
286
- META_POLICIES = {(2, 0): Meta20Policy(), (2, 1): Meta21Policy(), (2, 2): Meta22Policy()}
298
+ class Meta30Policy(Meta22Policy):
299
+ """3.0 relaxes package Major assignment authority, retaining layout and formats."""
300
+
301
+ label = "Meta 3.0"
302
+
303
+
304
+ META_POLICIES = {
305
+ (2, 0): Meta20Policy(),
306
+ (2, 1): Meta21Policy(),
307
+ (2, 2): Meta22Policy(),
308
+ (3, 0): Meta30Policy(),
309
+ }
287
310
 
288
311
 
289
312
  def check_meta(composition: Composition, specs: Path, root: Path, report: Report) -> None:
@@ -56,6 +56,8 @@ def composition_path(root: Path) -> Path:
56
56
 
57
57
  def declarations(root: Path) -> dict[str, Any]:
58
58
  """Read authoritative finalized/candidate numbers, never infer source readiness."""
59
+ from ._validation import process_uses_prefixed_baselines
60
+
59
61
  manifest = composition_path(root)
60
62
  composition = read_yaml(manifest)
61
63
  packages = composition.get("packages")
@@ -65,8 +67,10 @@ def declarations(root: Path) -> dict[str, Any]:
65
67
  (item for item in packages if isinstance(item, dict) and item.get("name") == "process"),
66
68
  None,
67
69
  )
68
- if process is None or version(process.get("version"))[:2] != (5, 0):
69
- raise MacrostatesError("This operation requires the supported Process 5.0 policy")
70
+ if process is None or not process_uses_prefixed_baselines(
71
+ string(process.get("version"), "process.version")
72
+ ):
73
+ raise MacrostatesError("This operation requires a supported Process 5.0 or 5.1 policy")
70
74
  project = mapping(composition.get("project"), "composition.project")
71
75
  specification = string(project.get("version"), "project.version")
72
76
  spec_numbers = baseline(specification, "specification")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: macrostates-cli
3
- Version: 0.4.0
3
+ Version: 0.5.0
4
4
  Summary: Compose, install and validate versioned Macrostates specification packages.
5
5
  Author-email: Lucas Lopez <713375+lucaslopez@users.noreply.github.com>
6
6
  License-Expression: MIT
@@ -25,8 +25,11 @@ operations. Requires Python 3.12 or newer. Distribution name: `macrostates-cli`.
25
25
  Import package and executable name: `macrostates`.
26
26
  Licensed under [MIT](https://github.com/Macrostates/macrostates-cli/blob/main/LICENSE).
27
27
 
28
- This release introduces application version `0.4.0` and support for the released
29
- Meta 2.2, Process 5, Repository 4, Python 2.1.1 and Python-library 2 packages.
28
+ Application version `0.5.0` supports Meta 3.0 and Process 5.1 alongside earlier
29
+ selected policies. Its own composition uses released Meta 3.0.0, Process 5.1.0,
30
+ Repository 4, Python 2.1.1 and Python-library 2 packages. Under Meta 3.0 and
31
+ Process 5.1, implementers choose version impact within requested work without a
32
+ separate Major-number approval.
30
33
  The CLI application version is independent from its Macrostates specification
31
34
  and implementation baselines. Older projects retain their selected formats and
32
35
  policies until explicitly adopted and migrated.
@@ -38,13 +41,13 @@ Install the published package from
38
41
  newer environment:
39
42
 
40
43
  ```bash
41
- python -m pip install "macrostates-cli>=0.4.0"
44
+ python -m pip install "macrostates-cli>=0.5.0"
42
45
  macrostates --help
43
46
  ```
44
47
 
45
- Use `python -m pip install macrostates-cli==0.4.0` to select this release, or
46
- `python -m pip install --upgrade macrostates-cli` to update. The older `0.3.1`
47
- release remains available for projects that deliberately retain it. A virtual environment can be created with
48
+ Use `python -m pip install macrostates-cli==0.5.0` to select this release, or
49
+ `python -m pip install --upgrade macrostates-cli` to update. The older `0.3.1` and `0.4.0`
50
+ releases remain available for projects that deliberately retain it. A virtual environment can be created with
48
51
  `python -m venv .venv`; activate it before installing when your environment
49
52
  requires one. For a command outside a project environment, use
50
53
  `pipx install macrostates-cli` or `uv tool install macrostates-cli`.
@@ -69,7 +72,7 @@ macrostates info
69
72
  macrostates check
70
73
  ```
71
74
 
72
- The shorthand `macrostates init --name my-project --package meta@2.2.0`
75
+ The shorthand `macrostates init --name my-project --package meta@3.0.0`
73
76
  creates a composition. Repeat `--package NAME@VERSION` for additional packages.
74
77
  Input order supplies both reading order and authority, highest first; review them
75
78
  before installation. No dependency or latest release is selected automatically.
@@ -158,7 +161,7 @@ inspection before retrying. See
158
161
  ## Development And Baseline Releases
159
162
 
160
163
  The following development commands require explicit selection of supported
161
- Process 5.0. `branch-status` and `branch-sync` also serve projects retaining older
164
+ Process 5.0 or 5.1. `branch-status` and `branch-sync` also serve projects retaining older
162
165
  version policies. Core operations work with Git refs and commits; your repository
163
166
  policy defines the review/integration mechanism and required external checks.
164
167
 
@@ -315,11 +318,12 @@ integration-preparation checks belong at their dedicated gate, since ordinary
315
318
  development commits legitimately contain open workflows. Index checks preserve
316
319
  partial staging, have documented resource limits, and exclude submodule contents.
317
320
 
318
- The CLI tracks its own composition under `.macrostates/specs/`. Adoption of the
319
- new official releases, exact selections, lock, and final baseline declarations
320
- will be verified separately. This development branch uses an independent
321
+ The CLI tracks its own composition under `.macrostates/specs/`. The exact
322
+ released selections passed canonical installation, locked reinstallation and
323
+ offline checks. Baseline finalization and application publication retain their
324
+ separate verification gates. The source uses an independent
321
325
  [application declaration](https://github.com/Macrostates/macrostates-cli/blob/main/.macrostates/implementation/application.yaml)
322
- for independent build version `0.4.0`; the Macrostates implementation declaration is a
326
+ for independent build version `0.5.0`; the Macrostates implementation declaration is a
323
327
  separate identity. Candidate/finalized builds bind verified shipped source and
324
328
  rebuild from source distributions without Git. Builds do not mutate declarations
325
329
  or publish artifacts.
@@ -1,10 +0,0 @@
1
- schema_version: 1
2
- name: macrostates-cli
3
- version: 0.4.0
4
- status: candidate
5
- specification: specs-1.0.0
6
- implementation: imp-1.0.0
7
- release_date: '2026-10-13'
8
- source:
9
- tag: v0.4.0
10
- source_sha256: add414d530542993e6805a29a04e52c253e44bec69111d28bc6f887d19d19328
@@ -1,4 +0,0 @@
1
- version: imp-1.0.0
2
- specification: specs-1.0.0
3
- release_date: '2026-10-13'
4
- schema_version: 2
File without changes