Dashboard › opencode-lore › Distillation
0f72f6a2-87f7-4536-8352-949a6fdf81f8["lore_tm_v1_JRf44icmT7YNSvJ6cytOTgdz0M17rLWyyQBdUjPg3ik","lore_tm_v1_1aHJJ-lH3h2bYV3MpG6tFCI700SJyTK5PoTXRWHfDOk","lore_tm_v1_ns7Qh0Y7cEqbw0Qfo0504nQ3YY_e6f13jV2nXPsOdtg","lore_tm_v1_urPYVoYgNPBAwq68dbhG7plTaV3JNr4qxM-KYV9Iobw","lore_tm_v1_ZdHAdyp-tvy8WTaIj9AqjM5o3M25n9n3bU7bEUiGjkI","lore_tm_v1__NCtyfP2RlrlcAxGgm48MkFX2WY1u7sJIXSIdcgOGf8","lore_tm_v1_rDZTYCkiUL7oVHUFidMWIoDEmpe3Cdq22JulD4QBI-w"]
Date: September 17, 2026
jj never fails on conflict; rebase/new/squash records conflicts in the resulting commit, after which jj st must be checked and files resolved manually rather than with interactive jj resolve..jj/: use jj rather than git for mutations; never use interactive flags such as -i or --interactive; always pass -m "msg" when describing or committing; verify mutations with jj st and jj log; prefer stable change IDs over commit IDs; never rebase or describe immutable commits; and use jj undo, jj op log, or jj op restore <op-id> for recovery.@ becomes empty after jj commit while committed content resides in @-, jj new creates a new empty change rather than committing, and stale working copies should be repaired with jj workspace update-stale./home/byk/Code/opencode-lore-provider-error is colocated, containing both .jj/ and .git/; mutations must therefore go through jj.>=22.5, TypeScript with pnpm workspaces, and SQLite in WAL mode with FTS5; its database is stored at ~/.local/share/lore/lore.db.@loreai/core at packages/core/ for the shared memory engine; @loreai/gateway at packages/gateway/ for the transparent LLM proxy and lore CLI; @loreai/opencode at packages/opencode/ for the OpenCode plugin adapter; and @loreai/pi at packages/pi/ for the Pi extension adapter.@loreai/core into a single CJS file via esbuild, while @loreai/opencode ships raw TypeScript.packages/core/test/setup.ts and never the production DB.CHANGELOG.md; Sentry Craft handles both automatically through GitHub Actions.gh workflow run release.yml -f version=auto for conventional-commit-derived semver or gh workflow run release.yml -f version=0.23.0 for an explicit version.scripts/bump-version.sh updates all package.json versions; 2. changelog generation from conventional commits; 3. creation and push of release/X.Y.Z; 4. CI builds/tests npm tarballs, standalone binaries, and delta patches; 5. Craft opens a publish issue; 6. applying label accepted triggers npm publishing through OIDC trusted publishing plus a GitHub Release containing binaries and patches.package.json pins package manager pnpm@10.28.0, defines "pnpm": "10.28.0", and includes scripts test: "vitest run", build: "pnpm -r run build", format: "oxfmt", premutation: "pnpm --filter @loreai/gateway run bundle", and check:docs: "tsx scripts/generate-config-docs.ts --check && tsx scripts/generate-env-docs.ts --check".packages/gateway/package.json identifies @loreai/gateway version 0.40.0, requires Node.js >=22.15, uses ./dist/index.cjs as main, and exports ./dist/index.bun.js for Bun while require and default resolve to ./dist/index.cjs.@loreai/gateway scripts are typecheck: "tsc --noEmit", build: "tsx script/build.ts", bundle: "tsx script/bundle.ts", build:binary: "tsx script/build.ts --binary", build:binary:sea: "tsx script/build-binary-sea.ts", and start: "tsx src/index.ts".@loreai/gateway declares undici: "^8.9.0" as a devDependency and publishes these files: dist/bin.cjs, dist/embedding-worker.cjs, dist/embedding-worker.js, dist/index.bun.js, dist/index.cjs, dist/index.d.cts, dist/ort-wasm-simd-threaded.mjs, dist/ort-wasm-simd-threaded.wasm, dist/vector-worker.cjs, and dist/vector-worker.js.node22, emits dist/index.cjs, and injects Sentry debug IDs into JavaScript and its sourcemap after bundling.undici remains external and is lazily imported only on the Node path in fetch.ts, so it is never bundled or evaluated under Bun; real undici@7 behavior is isolated to Node.fetch and never touches undici, making undici safe as a devDependency only.