Skip to content

ElastOS 0.7: protected-content foundation, collaboration, and runtime lifecycle - #38

Merged
irzhywau merged 291 commits into
mainfrom
upstream/0.7-dev
Aug 31, 2026
Merged

irzhywau merged 291 commits into
mainfrom
upstream/0.7-dev

Conversation

@irzhywau

@irzhywau irzhywau commented Aug 28, 2026 •

Copy link
Copy Markdown
Collaborator

This PR tracks the 0.7 release line: everything reviewed and integrated on upstream/0.7-dev, proposed for main. Merging is the chain owner's decision; this PR exists so the remaining 0.7 work is visible and checkable in one place.

What this contains

Remaining for 0.7 completion

Working checklist — items get checked as they land on this branch:

Verification at this tip

Full workspace suite + all 25 own-workspace capsule suites + elastos/tools/browser-local-exit: zero failures. Alignment, entropy, system-map, vendor-ui, close-handshake, product-UI proofs, and the provisional-retirement guard: green. state.md / TASKS.md carry the review-complete truth.

andersalm and others added 30 commits August 14, 2026 16:02
Add the canonical system-map navigation, layered C4 model, hash-bound interactive viewer, and code-path index. Define human/agent parity, durable task and approval recovery, model-provider lifecycle, and private-network membership without collapsing Profile identity, capsules, transport, or Runtime authority. Clarify destination admission and the first-party dKMS-over-Carrier boundary.
andersalm and others added 20 commits August 31, 2026 08:19
Review checks: cargo test -p elastos-server browser_reconciliation. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: node --test capsules/library/browser/src/events.test.mjs; node scripts/library-menu-smoke.mjs. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: node scripts/library-product-layout-smoke.mjs. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: cargo test -p elastos-server gateway_home_terminal; node scripts/home-cli-browser-smoke.mjs; node scripts/home-cli-fallback-recovery-smoke.mjs. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: cargo test -p elastos-server runtime_control; cargo test -p elastos-server home_cmd. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: cargo test -p elastos-server home_cmd; node scripts/home-cli-browser-smoke.mjs. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: node scripts/home-shell-recovery-smoke.mjs; node scripts/home-shell-post-attach-recovery-smoke.mjs; node scripts/home-shell-switchback-recovery-smoke.mjs. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: cargo test --manifest-path capsules/home-cli/Cargo.toml; node scripts/inbox-product-behavior-smoke.mjs. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Review checks: git diff --check. Rust workspace commands run from elastos/. Installed product acceptance is tracked separately.
Keep protection and create-only behavior unchanged while satisfying the workspace Clippy argument limit.

Verified: full workspace Clippy, cargo check and workspace tests with Rust 1.91.0 and warnings denied; all 25 capsule workspace suites.
Read the checkout manifest directly in the content test. Keep the extracted collaboration setup fixture rooted in the repository and reuse the existing toolchain. Record remaining platform CI and installed acceptance gates.

Verified: full workspace tests, Clippy and cargo check with warnings denied; collaboration setup smoke; source gates and formatting.
Keep all 61 findings, seven sheets and 1046 formulas. Replace 75 private evidence paths with labels, reconcile stale merged notes and identify the installed audit snapshot separately from later PR39 source.

Verified: full XLSX package privacy scan, cell/formula/metric and conditional-style comparison, all-sheet visual review, and Home entropy checks.
…tion mark

A crash between the protect session's close settlement and
mark_intent_completed leaves the runtime mint intent at
SettledBeforeDraft(Closed) while every durable step of the mint (draft,
custody provisioning, availability evidence) may already be persisted.
The deterministic intent identity then bricks the source object
permanently with "Runtime custody mint was settled before draft
persistence" (ELACITY-2307).

The intent never records a mint id before completion, so recovery
re-links the two through their shared content-access identity:
RuntimeMintJournal::find_mint_record_for_intent performs a bounded,
validated scan under the store lock and matches on content_access_id
plus the full custody selection (nodes, pool, epoch, committee),
failing closed on ambiguity and unreadable records.

publish_runtime_custody_library_object now adopts the record for a
Closed-settled intent when it is fully terminal (custody provisioned,
availability recorded): the intent is completed and the publish returns
the same completed facts a normal replay would. A record that is not
fully terminal cannot roll forward (the content key material is gone),
so it fails closed with the reconciliation-required message and the
orphaned custody evidence logged via tracing. With no record at all the
terminal abort stands unchanged, so the existing settled-before-draft
expectations keep holding.

Covered by five journal unit tests for the new lookup and two server
regression tests seeding the exact crash state, one per window.
Keep Recovery and Profile ownership explicit, record the planned content-capsule distribution and WSL-first contracts, and retain current source and installed readiness limits.

Carry the reviewed documentation from f4ebe53, b513eee and 17fc7de without their stale release-state claims. Record the remaining Carrier and logger integration work.
Require 10% free source/data volume capacity before builds. Retain one default Browser VM backup set and reject invalid retention before mutation. Remove the private Runtime staging directory on success and controlled failure; preserve the original build.

Verified: installation receipt smoke; collaboration configuration, capacity and retention smoke; Mac restart fixture including pre-existing recovery data; shell syntax.
Preserve the operator rules and align the current source, PR stack and deferred work across the active documentation. Separate source integration from installed acceptance and release publication; correct the request-framing security note and the matching documentation guards.
Remove release and branch snapshots from general documentation and retire the duplicate protected-content extraction ledger. Keep current proof in state.md, open work in TASKS.md, and contract and artifact identifiers with their owners. Replace assertions that required stale prose and reject release snapshots in standing docs.
Anders' privacy-reviewed Home journey workbook becomes the standing
reference for stability and correctness. An e2e-audit skill carries
the working rules and a stdlib workbook reader, AGENTS.md gains the
Journey Register Gate, and TASKS.md records the automated pre-release
extraction of scriptable journey checks.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants