Preserve published standalone CLI release records
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
# CLI prerelease publication records — 2026-09-11
|
||||
|
||||
These four files are exact byte copies from `.local/cli-packaging-20260911/`.
|
||||
They contain sanitized publication results and release prose only. No credential,
|
||||
configuration, authentication helper or upload script is included.
|
||||
|
||||
| File | Bytes | SHA256 |
|
||||
| --- | ---: | --- |
|
||||
| `upload-binaries-verified.json` | 678 | `e945e2724020c48bfe15be7b4258861bd6c01291b98eae036eca786bb022ebde` |
|
||||
| `upload-validation-verified.json` | 277 | `73581acbb5b5fe4aca1fda1b626f80a28bcb3d6c036f7ce793c62bf5a8ef4a72` |
|
||||
| `published-verified.json` | 382 | `b5fe8a38579fb8399c78bca9db9fd91b64e8b7b7de7c664049cf5e615a671100` |
|
||||
| `RELEASE-NOTES.md` | 2010 | `86a1b5b0744c8f63f6ed640e14b23bdbcb34b63a25320d67eb1fa7da4128a0a5` |
|
||||
|
||||
All four originals use CRLF. `preserve.py` rereads source and destination bytes,
|
||||
refuses any unequal existing destination, and records the inventory in
|
||||
`manifest.json`. It does not upload or execute application binaries. Running it
|
||||
again requires the original private source records and preserved MCP readbacks.
|
||||
|
||||
`mcp-release-readback.json` and `mcp-tag-readback.json` are locally serialized
|
||||
parsed responses from fresh read-only Gitea MCP calls. They are observations,
|
||||
not original HTTP wire bytes. Release 2 is published as a prerelease at
|
||||
`cli-v0.2.0-preview.authoring.20260911`, pointing to integration commit
|
||||
`27df4a3945ebc97cd7cbde61f6aeea7a91c680d3`.
|
||||
|
||||
The publisher's `notes_sha256` is
|
||||
`1b83b9c904a79ff7acbde421851c9da9b520f3fa0aea920bf55fb71bea392a9d`.
|
||||
It binds the **1988-byte UTF-8 LF public body**, not the raw CRLF Markdown file
|
||||
above. Converting only CRLF to LF makes the preserved prose exactly equal to
|
||||
the MCP public body, including its final newline. `preservation.log` records
|
||||
the corrected successful check. `preservation-initial-failure.txt` discloses
|
||||
the initial checker assumption and its correction; no publication changed.
|
||||
|
||||
The asset readback PASS fields are the original publisher's downloaded-asset
|
||||
verification, preserved without re-downloading or repeating runtime checks.
|
||||
The semantic source (`01b76a1`), packaging assembly (`a0a48e8`) and release
|
||||
integration (`27df4a3`) remain distinct in `manifest.json` and the report.
|
||||
|
||||
Proposed repository attribute rule for root integration:
|
||||
|
||||
```gitattributes
|
||||
harness/experiments/cli-prerelease-20260911/** -text
|
||||
```
|
||||
|
||||
The preserving worker did not edit `.gitattributes` or Git state. Root must
|
||||
apply the rule before adding these exact evidence bytes and verify index or
|
||||
checkout hashes. The standalone report is
|
||||
`harness/release-cli-prerelease-published-20260911.md`.
|
||||
@@ -0,0 +1,22 @@
|
||||
Standalone Windows x64 tools for `.arcadia` projects: `check`/`lint`, missing-ID stabilization and semantic alias rename. Editing commands preview by default; `--write` saves through the shared source conflict/recovery guards. Studio and a server are not required.
|
||||
|
||||
Extract the complete ArcadiaCLI ZIP, keep `libunwind.dll` beside `arcadia.exe`, and open a terminal in that folder:
|
||||
|
||||
```powershell
|
||||
.\arcadia.exe --help
|
||||
.\arcadia.exe check examples/text-first/project.arcadia
|
||||
```
|
||||
|
||||
Copy a complete example folder before editing. Read `docs/source-cli.md` for command, diagnostic and exit-code contracts. Preview IDs remain provisional until saved; a later invocation can generate different missing IDs.
|
||||
|
||||
Verified: 12 source CLI tests, strict lint/format/build, independent 183 semantic assertions across 21 processes, all 114 packaged files and 27 dependency packages, plus independent source/default compatibility and 156 assertions across 10 clean extracted CLI invocations. Preview, exact stabilization/rename, preserved identities/comments/Unicode/CRLF, no-op timestamps and invalid-source refusal passed. ZIP, checksum and validation asset were downloaded and hash-verified after upload.
|
||||
|
||||
This is a development-profile Windows preview. It does not provide a saved-plan/digest protocol, complete large-model text ergonomics or current Linux runtime acceptance. It is separate from the [Studio preview](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/releases/tag/v0.2.0-preview.authoring.20260911). The full OA/SA release remains under development.
|
||||
|
||||
Release checkpoint: [27df4a3](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/27df4a3945ebc97cd7cbde61f6aeea7a91c680d3). Preserved semantic build source is `01b76a1`; packaging-only assembly is `a0a48e8`. Attached `VALIDATION.md` records exact evidence and the distinct source/build roles.
|
||||
|
||||
ZIP size: **5,091,267 bytes**. SHA256:
|
||||
|
||||
```text
|
||||
2B051F8CE1EA4F59EE7E233E1FBD516D423AADBFBCA5D549755CBE78FCDE1AF6
|
||||
```
|
||||
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"scope": "Publication evidence preservation and read-only MCP release/tag comparison; no runtime tests or asset re-download.",
|
||||
"release_id": 2,
|
||||
"tag": "cli-v0.2.0-preview.authoring.20260911",
|
||||
"publication_url": "http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/releases/tag/cli-v0.2.0-preview.authoring.20260911",
|
||||
"published_at": "2026-09-11T12:50:39Z",
|
||||
"source_roles": {
|
||||
"semantic_source": "01b76a1e89e93b7992f39e63560aa8b2ca2f69e0",
|
||||
"packaging_assembly": "a0a48e82bd43be181caca1fe2c1514c21f2bc405",
|
||||
"release_integration": "27df4a3945ebc97cd7cbde61f6aeea7a91c680d3"
|
||||
},
|
||||
"assets": [
|
||||
{
|
||||
"id": 4,
|
||||
"name": "ArcadiaCLI-0.2.0-preview.authoring.20260911-x86_64-pc-windows-gnullvm.zip",
|
||||
"bytes": 5091267,
|
||||
"sha256": "2b051f8ce1ea4f59ee7e233e1fbd516d423aadbfbca5d549755cbe78fcde1af6",
|
||||
"url": "http://217.177.34.108:3000/attachments/024ac74c-8806-4da2-9ca4-726c01a7735f",
|
||||
"readback": "PASS"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "ArcadiaCLI-0.2.0-preview.authoring.20260911-x86_64-pc-windows-gnullvm.zip.sha256",
|
||||
"bytes": 140,
|
||||
"sha256": "0dc3f12d2f79edfb735e311298d1528cbdb828b775ec885b3badde24e66bceef",
|
||||
"url": "http://217.177.34.108:3000/attachments/24af1b92-ce23-41e3-bc25-60fed95a6270",
|
||||
"readback": "PASS"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"name": "VALIDATION.md",
|
||||
"bytes": 50297,
|
||||
"sha256": "5a0206b493bf1ca98fe931243452a9092cdf2acf10f4e3fd0a7ee9a7d8f56ec8",
|
||||
"url": "http://217.177.34.108:3000/attachments/628863de-e4ff-4fc7-afdb-45b071705d7b",
|
||||
"readback": "PASS"
|
||||
}
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "upload-binaries-verified.json",
|
||||
"source": ".local/cli-packaging-20260911/upload-binaries-verified.json",
|
||||
"bytes": 678,
|
||||
"sha256": "e945e2724020c48bfe15be7b4258861bd6c01291b98eae036eca786bb022ebde",
|
||||
"crlf_sequences": 17,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "upload-validation-verified.json",
|
||||
"source": ".local/cli-packaging-20260911/upload-validation-verified.json",
|
||||
"bytes": 277,
|
||||
"sha256": "73581acbb5b5fe4aca1fda1b626f80a28bcb3d6c036f7ce793c62bf5a8ef4a72",
|
||||
"crlf_sequences": 9,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "published-verified.json",
|
||||
"source": ".local/cli-packaging-20260911/published-verified.json",
|
||||
"bytes": 382,
|
||||
"sha256": "b5fe8a38579fb8399c78bca9db9fd91b64e8b7b7de7c664049cf5e615a671100",
|
||||
"crlf_sequences": 9,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "RELEASE-NOTES.md",
|
||||
"source": ".local/cli-packaging-20260911/RELEASE-NOTES.md",
|
||||
"bytes": 2010,
|
||||
"sha256": "86a1b5b0744c8f63f6ed640e14b23bdbcb34b63a25320d67eb1fa7da4128a0a5",
|
||||
"crlf_sequences": 22,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "mcp-release-readback.json",
|
||||
"bytes": 2495,
|
||||
"sha256": "e0a1d9324cd7a115e22c87c7905489aec81d30277a17b4480866380cbec8edb1",
|
||||
"method": "MCP read-only parsed response, locally serialized as UTF-8 JSON; not original HTTP wire bytes"
|
||||
},
|
||||
{
|
||||
"path": "mcp-tag-readback.json",
|
||||
"bytes": 196,
|
||||
"sha256": "bb770f30f292b65ca4af28d688f0f1dc1d04fb918b10f527a56ba847d44e9b2e",
|
||||
"method": "MCP read-only parsed response, locally serialized as UTF-8 JSON; not original HTTP wire bytes"
|
||||
}
|
||||
],
|
||||
"checks": {
|
||||
"four_exact_copies": true,
|
||||
"release_and_tag_match": true,
|
||||
"published_flags_and_time_match": true,
|
||||
"normalized_notes_hash_matches_publisher_record": true,
|
||||
"notes_match_public_body_after_CRLF_to_LF_only": true,
|
||||
"asset_records_are_original_publisher_readbacks": true
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"author": "Codex-9e8r6t",
|
||||
"body": "Standalone Windows x64 tools for `.arcadia` projects: `check`/`lint`, missing-ID stabilization and semantic alias rename. Editing commands preview by default; `--write` saves through the shared source conflict/recovery guards. Studio and a server are not required.\n\nExtract the complete ArcadiaCLI ZIP, keep `libunwind.dll` beside `arcadia.exe`, and open a terminal in that folder:\n\n```powershell\n.\\arcadia.exe --help\n.\\arcadia.exe check examples/text-first/project.arcadia\n```\n\nCopy a complete example folder before editing. Read `docs/source-cli.md` for command, diagnostic and exit-code contracts. Preview IDs remain provisional until saved; a later invocation can generate different missing IDs.\n\nVerified: 12 source CLI tests, strict lint/format/build, independent 183 semantic assertions across 21 processes, all 114 packaged files and 27 dependency packages, plus independent source/default compatibility and 156 assertions across 10 clean extracted CLI invocations. Preview, exact stabilization/rename, preserved identities/comments/Unicode/CRLF, no-op timestamps and invalid-source refusal passed. ZIP, checksum and validation asset were downloaded and hash-verified after upload.\n\nThis is a development-profile Windows preview. It does not provide a saved-plan/digest protocol, complete large-model text ergonomics or current Linux runtime acceptance. It is separate from the [Studio preview](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/releases/tag/v0.2.0-preview.authoring.20260911). The full OA/SA release remains under development.\n\nRelease checkpoint: [27df4a3](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/27df4a3945ebc97cd7cbde61f6aeea7a91c680d3). Preserved semantic build source is `01b76a1`; packaging-only assembly is `a0a48e8`. Attached `VALIDATION.md` records exact evidence and the distinct source/build roles.\n\nZIP size: **5,091,267 bytes**. SHA256:\n\n```text\n2B051F8CE1EA4F59EE7E233E1FBD516D423AADBFBCA5D549755CBE78FCDE1AF6\n```\n",
|
||||
"created_at": "2026-09-11T12:50:39Z",
|
||||
"draft": false,
|
||||
"html_url": "http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/releases/tag/cli-v0.2.0-preview.authoring.20260911",
|
||||
"id": 2,
|
||||
"prerelease": true,
|
||||
"published_at": "2026-09-11T12:50:39Z",
|
||||
"tag_name": "cli-v0.2.0-preview.authoring.20260911",
|
||||
"target": "27df4a3945ebc97cd7cbde61f6aeea7a91c680d3",
|
||||
"title": "Arcadia CLI — standalone Windows authoring preview"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"commit_sha": "27df4a3945ebc97cd7cbde61f6aeea7a91c680d3",
|
||||
"message": "Package standalone source CLI with verified runtime and notices\n",
|
||||
"name": "cli-v0.2.0-preview.authoring.20260911"
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
Initial preservation checker stopped after copying the four files unchanged:
|
||||
|
||||
Traceback (most recent call last):
|
||||
File "C:\Users\User\Documents\Git\ARCADIA-Studio\harness\experiments\cli-prerelease-20260911\preserve.py", line 35, in <module>
|
||||
assert hashlib.sha256(notes).hexdigest() == publication['notes_sha256']
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
AssertionError
|
||||
|
||||
The checker incorrectly assumed notes_sha256 meant local raw Markdown bytes.
|
||||
Read-only comparison established that it instead exactly matches the LF public
|
||||
release body. Local CRLF bytes remain preserved unchanged; CRLF-to-LF conversion
|
||||
alone yields the public body and the publisher's recorded hash. The corrected
|
||||
checker records both identities, without changing any publication asset or the
|
||||
four source records. A subsequent temporary PowerShell comparison command had
|
||||
an empty-pipeline parse error and was corrected before producing the comparison;
|
||||
it made no file changes.
|
||||
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"result": "PASS",
|
||||
"copied_files": [
|
||||
{
|
||||
"path": "upload-binaries-verified.json",
|
||||
"source": ".local/cli-packaging-20260911/upload-binaries-verified.json",
|
||||
"bytes": 678,
|
||||
"sha256": "e945e2724020c48bfe15be7b4258861bd6c01291b98eae036eca786bb022ebde",
|
||||
"crlf_sequences": 17,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "upload-validation-verified.json",
|
||||
"source": ".local/cli-packaging-20260911/upload-validation-verified.json",
|
||||
"bytes": 277,
|
||||
"sha256": "73581acbb5b5fe4aca1fda1b626f80a28bcb3d6c036f7ce793c62bf5a8ef4a72",
|
||||
"crlf_sequences": 9,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "published-verified.json",
|
||||
"source": ".local/cli-packaging-20260911/published-verified.json",
|
||||
"bytes": 382,
|
||||
"sha256": "b5fe8a38579fb8399c78bca9db9fd91b64e8b7b7de7c664049cf5e615a671100",
|
||||
"crlf_sequences": 9,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
},
|
||||
{
|
||||
"path": "RELEASE-NOTES.md",
|
||||
"source": ".local/cli-packaging-20260911/RELEASE-NOTES.md",
|
||||
"bytes": 2010,
|
||||
"sha256": "86a1b5b0744c8f63f6ed640e14b23bdbcb34b63a25320d67eb1fa7da4128a0a5",
|
||||
"crlf_sequences": 22,
|
||||
"bare_lf_sequences": 0,
|
||||
"method": "exact byte copy; source and destination reread equal"
|
||||
}
|
||||
],
|
||||
"release_target": "27df4a3945ebc97cd7cbde61f6aeea7a91c680d3"
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
"""Preserve four sanitized publication records; never read credentials or upload."""
|
||||
import hashlib
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
destination = Path(__file__).resolve().parent
|
||||
repository = destination.parents[2]
|
||||
source = repository / '.local/cli-packaging-20260911'
|
||||
names = ['upload-binaries-verified.json', 'upload-validation-verified.json',
|
||||
'published-verified.json', 'RELEASE-NOTES.md']
|
||||
records = []
|
||||
for name in names:
|
||||
data = (source / name).read_bytes()
|
||||
target = destination / name
|
||||
if not target.exists():
|
||||
with target.open('xb') as output:
|
||||
output.write(data)
|
||||
assert target.read_bytes() == data
|
||||
records.append({'path': name, 'source': '.local/cli-packaging-20260911/' + name,
|
||||
'bytes': len(data), 'sha256': hashlib.sha256(data).hexdigest(),
|
||||
'crlf_sequences': data.count(b'\r\n'),
|
||||
'bare_lf_sequences': data.count(b'\n') - data.count(b'\r\n'),
|
||||
'method': 'exact byte copy; source and destination reread equal'})
|
||||
def read(name):
|
||||
return json.loads((destination / name).read_text(encoding='utf-8-sig'))
|
||||
publication = read('published-verified.json')
|
||||
release = read('mcp-release-readback.json')
|
||||
tag = read('mcp-tag-readback.json')
|
||||
assert publication['id'] == release['id'] == 2
|
||||
assert publication['tag'] == release['tag_name'] == tag['name'] == 'cli-v0.2.0-preview.authoring.20260911'
|
||||
assert publication['draft'] is release['draft'] is False
|
||||
assert publication['prerelease'] is release['prerelease'] is True
|
||||
assert release['target'] == tag['commit_sha'] == '27df4a3945ebc97cd7cbde61f6aeea7a91c680d3'
|
||||
assert publication['published_at'] == release['published_at'] == '2026-09-11T12:50:39Z'
|
||||
notes = (destination / 'RELEASE-NOTES.md').read_bytes()
|
||||
# The publisher's recorded hash binds the LF public body, not the local CRLF
|
||||
# file. Keep both exact identities and prove the sole normalization explicitly.
|
||||
normalized_notes = notes.decode('utf-8-sig').replace('\r\n', '\n')
|
||||
assert hashlib.sha256(normalized_notes.encode('utf-8')).hexdigest() == publication['notes_sha256']
|
||||
assert normalized_notes == release['body']
|
||||
assets = read('upload-binaries-verified.json') + read('upload-validation-verified.json')
|
||||
assert len(assets) == publication['asset_count'] == 3
|
||||
assert all(item['readback'] == 'PASS' for item in assets)
|
||||
assert assets[0]['sha256'] == '2b051f8ce1ea4f59ee7e233e1fbd516d423aadbfbca5d549755cbe78fcde1af6'
|
||||
assert assets[0]['bytes'] == 5091267
|
||||
for name in ['mcp-release-readback.json', 'mcp-tag-readback.json']:
|
||||
data = (destination / name).read_bytes()
|
||||
records.append({'path': name, 'bytes': len(data), 'sha256': hashlib.sha256(data).hexdigest(),
|
||||
'method': 'MCP read-only parsed response, locally serialized as UTF-8 JSON; not original HTTP wire bytes'})
|
||||
result = {'scope': 'Publication evidence preservation and read-only MCP release/tag comparison; no runtime tests or asset re-download.',
|
||||
'release_id': 2, 'tag': tag['name'], 'publication_url': release['html_url'],
|
||||
'published_at': release['published_at'], 'source_roles': {
|
||||
'semantic_source': '01b76a1e89e93b7992f39e63560aa8b2ca2f69e0',
|
||||
'packaging_assembly': 'a0a48e82bd43be181caca1fe2c1514c21f2bc405',
|
||||
'release_integration': release['target']},
|
||||
'assets': assets, 'files': records,
|
||||
'checks': {'four_exact_copies': True, 'release_and_tag_match': True,
|
||||
'published_flags_and_time_match': True, 'normalized_notes_hash_matches_publisher_record': True,
|
||||
'notes_match_public_body_after_CRLF_to_LF_only': True,
|
||||
'asset_records_are_original_publisher_readbacks': True}}
|
||||
(destination / 'manifest.json').write_text(json.dumps(result, indent=2) + '\n', encoding='utf-8', newline='\n')
|
||||
print(json.dumps({'result': 'PASS', 'copied_files': records[:4], 'release_target': release['target']}, indent=2))
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"id": 2,
|
||||
"tag": "cli-v0.2.0-preview.authoring.20260911",
|
||||
"url": "http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/releases/tag/cli-v0.2.0-preview.authoring.20260911",
|
||||
"draft": false,
|
||||
"prerelease": true,
|
||||
"asset_count": 3,
|
||||
"notes_sha256": "1b83b9c904a79ff7acbde421851c9da9b520f3fa0aea920bf55fb71bea392a9d",
|
||||
"published_at": "2026-09-11T12:50:39Z"
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
[
|
||||
{
|
||||
"id": 4,
|
||||
"name": "ArcadiaCLI-0.2.0-preview.authoring.20260911-x86_64-pc-windows-gnullvm.zip",
|
||||
"bytes": 5091267,
|
||||
"sha256": "2b051f8ce1ea4f59ee7e233e1fbd516d423aadbfbca5d549755cbe78fcde1af6",
|
||||
"url": "http://217.177.34.108:3000/attachments/024ac74c-8806-4da2-9ca4-726c01a7735f",
|
||||
"readback": "PASS"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "ArcadiaCLI-0.2.0-preview.authoring.20260911-x86_64-pc-windows-gnullvm.zip.sha256",
|
||||
"bytes": 140,
|
||||
"sha256": "0dc3f12d2f79edfb735e311298d1528cbdb828b775ec885b3badde24e66bceef",
|
||||
"url": "http://217.177.34.108:3000/attachments/24af1b92-ce23-41e3-bc25-60fed95a6270",
|
||||
"readback": "PASS"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"id": 6,
|
||||
"name": "VALIDATION.md",
|
||||
"bytes": 50297,
|
||||
"sha256": "5a0206b493bf1ca98fe931243452a9092cdf2acf10f4e3fd0a7ee9a7d8f56ec8",
|
||||
"url": "http://217.177.34.108:3000/attachments/628863de-e4ff-4fc7-afdb-45b071705d7b",
|
||||
"readback": "PASS"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,52 @@
|
||||
# Published standalone CLI prerelease — 2026-09-11
|
||||
|
||||
Owner: Codex-9e8r6t /root/palette_finish. This task preserves publication evidence and independently checks read-only release/tag metadata. It performs no production edits, Git operations, compiler or native input, credential access, upload, asset download or repeated runtime tests.
|
||||
|
||||
## Published milestone
|
||||
|
||||
[Arcadia CLI — standalone Windows authoring preview](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/releases/tag/cli-v0.2.0-preview.authoring.20260911) is release **2**, published **2026-09-11 12:50:39 UTC**, `draft: false`, `prerelease: true`. Fresh Gitea MCP `get_release(id:2)` and `get_tag` readbacks independently agree on tag `cli-v0.2.0-preview.authoring.20260911` and target `27df4a3945ebc97cd7cbde61f6aeea7a91c680d3`.
|
||||
|
||||
The publication roles are deliberately distinct:
|
||||
|
||||
| Role | Commit | Meaning |
|
||||
| --- | --- | --- |
|
||||
| Semantic source | `01b76a1e89e93b7992f39e63560aa8b2ca2f69e0` | Preserved source CLI implementation, workspace and lock corresponding to the verified BAD169F8 executable |
|
||||
| Packaging assembly | `a0a48e82bd43be181caca1fe2c1514c21f2bc405` | Isolated packaging-only changes used to assemble the verified ZIP |
|
||||
| Release integration | `27df4a3945ebc97cd7cbde61f6aeea7a91c680d3` | Published tag checkpoint integrating the packaging files and evidence; not relabeled as original compiler inputs |
|
||||
|
||||
## Preserved upload results
|
||||
|
||||
Root's original readback records report three uploaded assets, each downloaded and hash-verified by the publisher. This preservation task does not repeat those downloads.
|
||||
|
||||
| Asset / id | Bytes | SHA256 |
|
||||
| --- | ---: | --- |
|
||||
| `ArcadiaCLI-0.2.0-preview.authoring.20260911-x86_64-pc-windows-gnullvm.zip` / 4 | 5091267 | `2b051f8ce1ea4f59ee7e233e1fbd516d423aadbfbca5d549755cbe78fcde1af6` |
|
||||
| ZIP `.sha256` / 5 | 140 | `0dc3f12d2f79edfb735e311298d1528cbdb828b775ec885b3badde24e66bceef` |
|
||||
| `VALIDATION.md` / 6 | 50297 | `5a0206b493bf1ca98fe931243452a9092cdf2acf10f4e3fd0a7ee9a7d8f56ec8` |
|
||||
|
||||
The ZIP contains 114 files and the exact BAD169F8 CLI plus F456 runtime, with 27 dependency packages. Author packaging and independent runtime gates are documented in `release-cli-packaging-20260911.md` and `release-cli-packaging-review-20260911.md`; the latter records 156 assertions across 10 fresh extracted CLI processes. These existing results are attributed to those runs, not newly executed here.
|
||||
|
||||
## Exact-byte evidence
|
||||
|
||||
New durable directory: `harness/experiments/cli-prerelease-20260911/`. `README.md` and `manifest.json` inventory the exact copies, source paths, byte lengths and hashes:
|
||||
|
||||
| Copied record | Bytes | SHA256 |
|
||||
| --- | ---: | --- |
|
||||
| `upload-binaries-verified.json` | 678 | `e945e2724020c48bfe15be7b4258861bd6c01291b98eae036eca786bb022ebde` |
|
||||
| `upload-validation-verified.json` | 277 | `73581acbb5b5fe4aca1fda1b626f80a28bcb3d6c036f7ce793c62bf5a8ef4a72` |
|
||||
| `published-verified.json` | 382 | `b5fe8a38579fb8399c78bca9db9fd91b64e8b7b7de7c664049cf5e615a671100` |
|
||||
| `RELEASE-NOTES.md` | 2010 | `86a1b5b0744c8f63f6ed640e14b23bdbcb34b63a25320d67eb1fa7da4128a0a5` |
|
||||
|
||||
All four copies match their private originals byte for byte and retain CRLF. Only these sanitized records were copied; no credentials or upload helpers were read or included. Additional files hold the preserving checker, its result, disclosed initial checker failure, parsed MCP observations and the inventory.
|
||||
|
||||
One evidence distinction was verified explicitly: `published-verified.json` stores `notes_sha256 = 1b83b9c904a79ff7acbde421851c9da9b520f3fa0aea920bf55fb71bea392a9d`, which matches the **1988-byte LF public release body**. It does not equal the 2010-byte raw CRLF Markdown hash above. CRLF-to-LF conversion alone reproduces the public body exactly, including the final newline. An initial checker incorrectly assumed this was a raw-file hash and stopped; its failure is retained, and the corrected check passed without changing any source record or public content. A temporary comparison command also had a corrected PowerShell syntax error and made no changes.
|
||||
|
||||
Recommended exact-byte rule for root to add before Git integration:
|
||||
|
||||
```gitattributes
|
||||
harness/experiments/cli-prerelease-20260911/** -text
|
||||
```
|
||||
|
||||
This worker did not edit attributes or Git state. Root owns integration, common ledger/Wiki updates and any further publication work.
|
||||
|
||||
This is a development-profile Windows CLI milestone. It is not full OA/SA product acceptance, current Linux runtime acceptance, a saved-plan/digest protocol, or complete large-model textual ergonomics acceptance.
|
||||
Reference in New Issue
Block a user