Commit 3feb0da
Phase A: registry + sha256 verification + omc --init + README rewrite
Three pieces that move OMC from "interesting research artifact" to
"thing you can actually distribute and have other people use":
1. Central registry at registry/index.json
Maps short package names → {url, sha256, version, description}.
Resolved by `omc --install <name>`. The registry itself lives in
this repo so any fork can serve it; OMC_REGISTRY=<url> overrides
for private installs. Initial entries: np, pd, sk, sklearn (alias),
requests, sqlite, torch — covering the integration libs we already
shipped.
Submission flow documented in registry/README.md: PR an entry,
host the .omc file anywhere with HTTPS.
2. sha256 verification on install
`install_url_via_python` takes an optional expected_sha256 and
refuses to write the file on mismatch. Hashes computed via
embedded Python's hashlib (no Rust crypto crate). Output now
shows " (sha256 ok)" suffix when verification ran. Tested with
a deliberately tampered registry — caught correctly.
3. `omnimcode-standalone --init`
Scaffolds a new project: writes omc.toml (with commented examples
of registry-name and explicit-URL deps) plus main.omc (hello
world with embedded Python preview). Refuses to overwrite either
if they exist. The "first 30 seconds with OMC" workflow.
Help text updated to document --init / --install / --list.
4. README rewrite
The old README led with "research artifact, demonstrable claims
above" — true but burying the lede. New version leads with what
OMC IS now: self-hosting + self-healing + embedded CPython +
package manager + harmonic primitives. 30-second hello, 60-second
wow, full demo table.
Honest about limits at the end (single-developer, experimental,
no formal type system) — credibility costs nothing and pays for
itself.
Length cut from 284 to ~210 lines, mostly by collapsing the
Phase V/H milestone-by-milestone arc into a CHANGELOG.md link.
End-to-end verified: spun up local registry, installed `np` by
short name (sha256-verified), used it from OMC code, deliberately
broke the hash and confirmed install refused. 43/43 functional
examples produce identical output under tree-walk and VM. 92/92
unit tests pass.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent a0c56c2 commit 3feb0da
5 files changed
Lines changed: 459 additions & 256 deletions
0 commit comments