mirror of
https://github.com/aphrody-labs/bun-distribution.git
synced 2026-10-13 23:56:39 +00:00
distribution: align Material source ownership
This commit is contained in:
1 parent
3fb464e7ae
commit
93d500888b
5 files changed
+73
-17
No files matched your search
@@ -1,5 +1,19 @@
|
||||
# Project decisions and session evidence
|
||||
|
||||
## Material source and checkout alignment — 2026-10-13
|
||||
|
||||
- Advanced Bun OS's Material export pin from `1e65a503` to the current owner
|
||||
revision `e858361d`. The canonical M3 package is `393d3970`; both its nested
|
||||
and top-level theme references resolve to the same `aphrody-m3-os-themes`
|
||||
commit `27b36bd3`. The source lock now records 84 mounts, 77 unique
|
||||
repository/revision pairs and 75 gitlinks.
|
||||
- `runtimeCheckout()` now prefers the workspace path when a stale configured
|
||||
alias resolves to that same physical checkout; a distinct explicit checkout
|
||||
still wins. The full Windows plan resolves `C:\src\bun` and Material at
|
||||
`e858361d`.
|
||||
- The distribution plan validated all 84 source entries. Native Bun typecheck
|
||||
passed on 91 files, lint and format passed. No tests or builds were run.
|
||||
|
||||
## Shared quality owner, 2026-10-13
|
||||
|
||||
- Bun Libraries commit 89731c4 aligns its check/lint/format runner with the
|
||||
|
||||
@@ -12,6 +12,15 @@
|
||||
- [x] Configure shared Cargo build and install destinations and ignore rules.
|
||||
- [x] Preserve first-party attribution and imported licenses/notices.
|
||||
|
||||
## Material source ownership follow-up — 2026-10-13
|
||||
|
||||
- [x] Advance the exported Material pin to the current `os` owner revision and
|
||||
synchronize both M3 references to the single `aphrody-m3-os-themes` owner.
|
||||
- [x] Resolve equivalent stale machine aliases to the selected workspace Bun
|
||||
checkout while preserving explicit per-build checkout configuration.
|
||||
- [x] Validate the source graph through the distribution plan and run native
|
||||
Bun typecheck, lint and format gates.
|
||||
|
||||
## Integrated Craft fonts and shared quality — 2026-10-13
|
||||
|
||||
- [x] Integrate `craft-fonts` and its licensed assets into the Bun OS Cargo workspace; preserve the source repository and publish its `os` integration commit `f1bfd5fd75f24619cad085230c7290f17ee7821e`.
|
||||
|
||||
@@ -25,15 +25,15 @@ libm3 and WASM adapter; it retains its web package submodules. Linux, WSL,
|
||||
WSLg, the WSL kernel, COSMIC and official APT remain distinct sources with
|
||||
their own histories and licenses.
|
||||
|
||||
The final source lock contains **83 mounts, 77 repository/revision pairs and
|
||||
74 gitlinks across nine roots**. The original four-root audit had 78 mounts
|
||||
and 71 pairs. Different revisions of libcosmic/iced/icons remain separate
|
||||
mounts; deduplication does not collapse version-specific topology.
|
||||
The source lock now contains **84 mounts, 77 repository/revision pairs and
|
||||
75 gitlinks across nine roots**. The initial consolidated lock had 83 mounts,
|
||||
77 pairs and 74 gitlinks. Different revisions of libcosmic/iced/icons remain
|
||||
separate mounts; deduplication does not collapse version-specific topology.
|
||||
|
||||
| Root | Locked revision |
|
||||
| --- | --- |
|
||||
| Bun | c209b95eb0dcc964745f4684f127abb83cbe2697 |
|
||||
| Material/os | 1e65a503420e4a8962b8ceaa18819eedbc280454 |
|
||||
| Material/os | e858361dfd2597b067eea56d471ff4caab7442f8 |
|
||||
| COSMIC epoch | cfa498958dc8aeac73aa911cbd318c01e47ac957 |
|
||||
| libcosmic/os | 7f715bc5d2d383a070fd8c760aa52c5627df96b6 |
|
||||
| Linux aphrody-bun | 47f637c546bf4bb274c7149815ed66d748e4f325 |
|
||||
@@ -42,6 +42,14 @@ mounts; deduplication does not collapse version-specific topology.
|
||||
| WSL kernel aphrody-wsl-6.18 | e5043002ed6f0b0eb17a0fb9efafa794045853ed |
|
||||
| APT main | 745fc126218c7cb3df48b22bbc7c7098fa2f7966 |
|
||||
|
||||
The follow-up pin advances Material to its current owner revision. Its M3
|
||||
package is `393d397037dace7a13eb2bee29e43a3a67d176f8`; the top-level and nested
|
||||
M3 theme references both resolve to `aphrody-labs/aphrody-m3-os-themes` at
|
||||
`27b36bd34253da5010ec2855403852ba6e97d6e6`. The Bun OS plan validates all 84
|
||||
locked mounts. Its Windows runtime build path now resolves through the selected
|
||||
workspace checkout (`C:\\src\\bun`) when the machine alias points to the same
|
||||
physical repository; explicit per-build checkout configuration remains first.
|
||||
|
||||
The APT GitHub mirror used initially was archived. The owner fork was then
|
||||
fast-forwarded from official live Salsa main, normally pushed and checked by
|
||||
remote ref. That Git source is distinct from Ubuntu's authenticated apt 3.2.0
|
||||
@@ -89,9 +97,10 @@ References: [source lock](../sources.lock.json),
|
||||
4.62 s. The independent no_std libm3 gate passed in 0.47 s. Complete metadata
|
||||
resolves 217 packages and one local token 1.4.4 owner; the earlier filtered
|
||||
graph had 197 packages. No unit tests or displayed GUI were run.
|
||||
7. Final Material/os consolidation **1e65a503420e4a8962b8ceaa18819eedbc280454**
|
||||
was normally pushed and independently verified by remote ref. The OS lock
|
||||
now pins it. It contains the 79-source-hash native consolidation receipt.
|
||||
7. Material/os consolidation **1e65a503420e4a8962b8ceaa18819eedbc280454**
|
||||
was normally pushed and independently verified by remote ref. It contains
|
||||
the 79-source-hash native consolidation receipt. The source lock has since
|
||||
advanced to `e858361dfd2597b067eea56d471ff4caab7442f8`.
|
||||
The public scalar WASM remains the exact earlier ce47e503 artifact; no fresh
|
||||
scalar artifact from 1e65a503 is claimed.
|
||||
8. Three unqualified Aphrody consumer manifest changes were reverted exactly.
|
||||
@@ -214,8 +223,8 @@ Gzip and bounded Zstandard use runtime APIs. XZ/bzip2 require an explicitly
|
||||
selected native 7-Zip executable, including the actual APT .tar.xz inspection.
|
||||
That external decoder remains part of the source-inspection dependency contract.
|
||||
|
||||
The final build uses the current 1e65a503 Material source lock and app catalog;
|
||||
its native version, source/DLL conversions and WinGet validation passed.
|
||||
The qualified APT build used the then-current 1e65a503 Material source lock and
|
||||
app catalog; its native version, source/DLL conversions and WinGet validation passed.
|
||||
It supersedes the earlier 994dd5f2 artifact. Conditional R2 publication created
|
||||
one content-addressed object. Public HTTPS retrieval returned HTTP 200,
|
||||
171469824 bytes and the exact SHA256, with an immutable one-year cache policy.
|
||||
|
||||
+19
-5
@@ -83,7 +83,7 @@
|
||||
{
|
||||
"id": "material",
|
||||
"repository": "aphrody-labs/material",
|
||||
"revision": "1e65a503420e4a8962b8ceaa18819eedbc280454",
|
||||
"revision": "e858361dfd2597b067eea56d471ff4caab7442f8",
|
||||
"mount": "sources/material",
|
||||
"gitlinks": [
|
||||
{
|
||||
@@ -114,7 +114,7 @@
|
||||
{
|
||||
"path": "packages/m3",
|
||||
"repository": "aphrody-labs/aphrody-m3",
|
||||
"revision": "b6e01a8df4da20314757c5505b224f553c68483d"
|
||||
"revision": "393d397037dace7a13eb2bee29e43a3a67d176f8"
|
||||
},
|
||||
{
|
||||
"path": "packages/m3-ai",
|
||||
@@ -204,7 +204,7 @@
|
||||
{
|
||||
"path": "packages/m3-os-themes",
|
||||
"repository": "aphrody-labs/aphrody-m3-os-themes",
|
||||
"revision": "a218bd6db5327603e503d46ebe1ee6804959c351"
|
||||
"revision": "27b36bd34253da5010ec2855403852ba6e97d6e6"
|
||||
},
|
||||
{
|
||||
"path": "packages/m3-primitives",
|
||||
@@ -272,7 +272,7 @@
|
||||
{
|
||||
"id": "material/packages/m3",
|
||||
"repository": "aphrody-labs/aphrody-m3",
|
||||
"revision": "b6e01a8df4da20314757c5505b224f553c68483d",
|
||||
"revision": "393d397037dace7a13eb2bee29e43a3a67d176f8",
|
||||
"mount": "sources/material/packages/m3",
|
||||
"parent": "material",
|
||||
"submodulePath": "packages/m3",
|
||||
@@ -296,9 +296,23 @@
|
||||
"path": "forks/material-web",
|
||||
"repository": "aphrody-labs/material-web",
|
||||
"revision": "a06811ee5dad1a670d99e5faf14cdf7082a70a10"
|
||||
},
|
||||
{
|
||||
"path": "packages/m3-os-themes",
|
||||
"repository": "aphrody-labs/aphrody-m3-os-themes",
|
||||
"revision": "27b36bd34253da5010ec2855403852ba6e97d6e6"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "material/packages/m3/packages/m3-os-themes",
|
||||
"repository": "aphrody-labs/aphrody-m3-os-themes",
|
||||
"revision": "27b36bd34253da5010ec2855403852ba6e97d6e6",
|
||||
"mount": "sources/material/packages/m3/packages/m3-os-themes",
|
||||
"parent": "material/packages/m3",
|
||||
"submodulePath": "packages/m3-os-themes",
|
||||
"gitlinks": []
|
||||
},
|
||||
{
|
||||
"id": "material/packages/m3/forks/fonts",
|
||||
"repository": "aphrody-labs/fonts",
|
||||
@@ -491,7 +505,7 @@
|
||||
{
|
||||
"id": "material/packages/m3-os-themes",
|
||||
"repository": "aphrody-labs/aphrody-m3-os-themes",
|
||||
"revision": "a218bd6db5327603e503d46ebe1ee6804959c351",
|
||||
"revision": "27b36bd34253da5010ec2855403852ba6e97d6e6",
|
||||
"mount": "sources/material/packages/m3-os-themes",
|
||||
"parent": "material",
|
||||
"submodulePath": "packages/m3-os-themes",
|
||||
|
||||
+12
-2
@@ -2,7 +2,7 @@ import { exportPinnedSources, type SourceExportOptions } from "../factory/source
|
||||
import { hashStream } from "@aphrody/bun-workspace/hash";
|
||||
import { runProcess } from "@aphrody/bun-workspace/process";
|
||||
import { mkdir, lstat, copyFile, open, unlink, cp } from "node:fs/promises";
|
||||
import { existsSync } from "node:fs";
|
||||
import { existsSync, realpathSync } from "node:fs";
|
||||
import { dirname, join, resolve, relative, isAbsolute } from "node:path";
|
||||
import { sourceIntegrity } from "../container/source-integrity.ts";
|
||||
import { inspectLinuxABI } from "./elf.ts";
|
||||
@@ -18,13 +18,23 @@ export function materialCheckout(config: Config = {}): string {
|
||||
return checkout;
|
||||
}
|
||||
export function runtimeCheckout(config: Config = {}): string {
|
||||
const configured = config.checkouts?.bun ?? Bun.env.APHRODY_BUN_CHECKOUT;
|
||||
const explicitCheckout = config.checkouts?.bun;
|
||||
const configured = explicitCheckout ?? Bun.env.APHRODY_BUN_CHECKOUT;
|
||||
const workspaceCheckout = resolve(packageRoot, "../bun");
|
||||
if (configured) {
|
||||
const root = resolve(configured);
|
||||
if (!existsSync(join(root, "scripts/build.ts")))
|
||||
throw new Error("Configured Bun checkout has no native build owner");
|
||||
if (!explicitCheckout && existsSync(join(workspaceCheckout, "scripts/build.ts"))) {
|
||||
try {
|
||||
if (realpathSync.native(root) === realpathSync.native(workspaceCheckout)) return workspaceCheckout;
|
||||
} catch {
|
||||
// Keep the explicit checkout when its physical path cannot be resolved.
|
||||
}
|
||||
}
|
||||
return root;
|
||||
}
|
||||
if (existsSync(join(workspaceCheckout, "scripts/build.ts"))) return workspaceCheckout;
|
||||
let root = dirname(process.execPath);
|
||||
for (let depth = 0; depth < 8; depth++) {
|
||||
if (existsSync(join(root, "scripts/build.ts")) && existsSync(join(root, "src/runtime/Cargo.toml"))) return root;
|
||||
|
||||
Reference in new issue
Block a user