Dashboard › opencode-lore › Distillation
8411283e-7ccb-4aae-9edd-1373574b8341["lore_tm_v1_iNchR8F3k1P7jWtRU8iZ8gJjzuKC7QPRacxNSScfQ1Y","lore_tm_v1_Kn95llgHFoASOUNJcbCTLAYW_Zkvs84_d5R6dB-70d0","lore_tm_v1_BEPQO3t3Y0GJqJOo2aAlhE7WDd2SuPsFos5ax5VUIoc","lore_tm_v1_z23zslKgYHIELfjjOLQuQEwNJX8YuePupsWishnqM74","lore_tm_v1_zdd49FUqxSctEwwcnnOewwb6-ds-5n-aN4_IaPVWqV8","lore_tm_v1_-Ahz0ol0D0nWQT3E2XjeQL3Y-5H3Vfzl-P80cMhOr7w","lore_tm_v1_2l-pPoRFvhkPYXpWKGJIK26oQr6HUI8er4fy91GX7Bs","lore_tm_v1_98Ne18Kp6kSmk9NGPxF4LzoGqvTu83T0Ione5NxXSjs","lore_tm_v1_0LYpwAlOmtFvrNVA7OHJ7nAbu6hMWltWTVeps-PrYjE","lore_tm_v1_Mb-S1t95UAX7J1ubmtFLbtpDb67Mr6NwNCXLFjGjn7U","lore_tm_v1_DHKRLRPyYaTnNUqvxwZkWCD2PX8ybmxIWG5OZPwgHbI"]
Date: Sep 16, 2026
Fix cgroup hierarchy, mount selection, root-boundary, and cache-refresh defects with fail-first regressions (in_progress, high); 2. Make constrained primary-worker sizing fail closed under unknown or conflicting headroom (pending, high); 3. Prevent repeated spending of unreflected worker-memory headroom during pool growth (pending, high); 4. Finish native resolver and malformed-native fallback regressions (pending, high); 5. Run mutation proofs and complete validation on the final tree (pending, high); 6. Freeze the exact candidate and obtain independent correctness and security reviews (pending, high); 7. Commit the completed Jujutsu change and report runtime guidance (pending, medium).packages/core/src/cgroup-memory.ts parses /proc/self/cgroup memberships, prefers an explicit cgroup v1 memory controller over a unified v2 membership on hybrid hosts, decodes procfs octal escapes, and rejects paths that are non-absolute, contain NUL, or include a .. segment.resolveLinuxCgroupMemoryFiles(cgroupContent, mountInfoContent) matches v2 memberships only to cgroup2 mounts and v1 memory memberships only to cgroup mounts whose super-options include memory; it prefers direct mounts, selecting the longest matching root, and accepts an out-of-root namespaced interpretation only when exactly one candidate is available.memoryFiles(readText) re-reads /proc/self/cgroup and /proc/self/mountinfo on every headroom read because membership can change during process lifetime, ensuring a worker is “never admitted from a stale cgroup directory or a cached discovery miss.”readLinuxCgroupMemoryHeadroomBytes() reads memory.current, memory.high, and memory.max for cgroup v2 or memory.usage_in_bytes and memory.limit_in_bytes for cgroup v1, walks from the process directory through inherited boundaries to the mount point, and returns the tightest finite max(0, limit − usage) headroom.undefined for malformed counters, unreadable constrained/inherited boundaries, unsafe numeric byte values, discovery errors, or parent traversal outside the selected mount. Only an unresource-controlled cgroup v2 filesystem root with root === "/" may omit its own control files, ensuring sibling usage is “never subtracted from the wrong scope.”readLimit() treats literal max and decimal limits exceeding Number.MAX_SAFE_INTEGER as Number.POSITIVE_INFINITY; readBytes() accepts only nonnegative decimal strings representable as safe integers.packages/core/test/cgroup-memory.test.ts contains resolver regressions for: 1. resolving cgroup v2 from the process mount instead of a fixed path; 2. namespaced cgroup v2 with escaped mount paths; 3. selecting only the v1 memory controller; 4. preferring explicit v1 memory ownership on a hybrid host; 5. preferring the mount whose root contains the process cgroup; 6. returning null for malformed, unrelated, or traversal-containing controller data.packages/core/test/cgroup-memory.test.ts contains headroom regressions for: 1. tightest inherited v2 limit (100 bytes); 2. honoring memory.high before memory.max reclaim (50 bytes); 3. returning undefined with no finite visible limit; 4. failing closed when an inherited boundary is unreadable; 5. allowing absent v2 root control files while returning 400 bytes; 6. failing closed when a constrained mount root is unreadable; 7. v1 inherited headroom with the oversized unlimited sentinel 9223372036854771712, returning 400 bytes.jj operations never fail on conflict; conflicts are recorded in the resulting commit and must be detected with jj st and resolved by manually editing files rather than using interactive jj resolve.jj rather than git for mutations when .jj/ exists, forbids interactive flags, requires -m "msg" for describe/commit operations, prefers stable change IDs over hexadecimal commit IDs, and requires verifying mutations with jj st and jj log.tmzmtlss / commit 4d3c8a62, description fix(core): correct embedding runtime selection and admission, remained conflict-free on top of pxrvwsvv / 2cbf4006 (main); the unrelated bookmark fix/responses-private-references was conflicted but did not affect the working-copy change.1789 insertions(+) and 90 deletions(-): added packages/core/src/cgroup-memory.ts and packages/core/test/cgroup-memory.test.ts; modified packages/core/src/embedding/local.ts, packages/core/src/embedding/pool.ts, packages/core/src/embedding-cap.ts, packages/core/src/embedding-worker-types.ts, packages/core/src/embedding-worker.ts, packages/core/src/embedding.ts, packages/core/src/ort-native.ts, packages/core/test/embedding-cap.test.ts, packages/core/test/embedding-pool-memory.test.ts, packages/core/test/embedding-pool.test.ts, packages/core/test/embedding-worker-types.test.ts, packages/core/test/ort-native.test.ts, packages/gateway/script/bundle.ts, packages/gateway/script/ort-platform-package.ts, packages/gateway/test/bundle-exports.test.ts, and packages/gateway/test/ort-platform-package.test.ts.quality/REVIEW.md.>= 22.5, uses TypeScript with pnpm workspaces, and stores SQLite WAL/FTS5 data at ~/.local/share/lore/lore.db; root package.json pins Volta Node 24.16.0 and pnpm 10.28.0.packages/core/test/setup.ts and never the production DB.pnpm test, pnpm run typecheck, pnpm run lint, pnpm run format, and pnpm run build; mutation testing uses pnpm mutation backed by stryker run, with pnpm --filter @loreai/gateway run bundle as premutation.scripts/bump-version.sh to update all package.json versions; 2. generate the changelog from conventional commits; 3. create and push release/X.Y.Z; 4. run CI tests and build npm tarballs, standalone binaries, and delta patches; 5. Craft opens a publish issue and the Publish workflow starts when labeled accepted; 6. publish npm packages via OIDC trusted publishing and create a GitHub Release with binaries and patches. Release triggers are gh workflow run release.yml -f version=auto or an explicit version such as gh workflow run release.yml -f version=0.23.0.