@inerrata-corporation/errata 2.0.23-dev.4682 → 2.0.23-dev.4734

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/errata.mjs CHANGED
@@ -30469,9 +30469,11 @@ var init_env_paths = __esm({
30469
30469
  // src/paths.ts
30470
30470
  var paths_exports = {};
30471
30471
  __export(paths_exports, {
30472
+ attribHasNotIndexed: () => attribHasNotIndexed,
30472
30473
  daemonLogPath: () => daemonLogPath,
30473
30474
  ensureDir: () => ensureDir,
30474
30475
  ensureParent: () => ensureParent,
30476
+ excludeFromIndexing: () => excludeFromIndexing,
30475
30477
  globalConfigPath: () => globalConfigPath,
30476
30478
  globalDaemonLock: () => globalDaemonLock,
30477
30479
  globalDir: () => globalDir,
@@ -30479,6 +30481,7 @@ __export(paths_exports, {
30479
30481
  workspaceDir: () => workspaceDir,
30480
30482
  workspacePaths: () => workspacePaths
30481
30483
  });
30484
+ import { execFile } from "node:child_process";
30482
30485
  import { mkdirSync as mkdirSync5 } from "node:fs";
30483
30486
  import { dirname as dirname5, join as join6 } from "node:path";
30484
30487
  function globalDir() {
@@ -30509,6 +30512,20 @@ function ensureParent(p) {
30509
30512
  mkdirSync5(dirname5(p), { recursive: true });
30510
30513
  return p;
30511
30514
  }
30515
+ function attribHasNotIndexed(attribOutput, path3) {
30516
+ const at = attribOutput.toLowerCase().indexOf(path3.toLowerCase());
30517
+ return at > 0 && /\bI\b/.test(attribOutput.slice(0, at));
30518
+ }
30519
+ function excludeFromIndexing(dir, run3 = execFile) {
30520
+ if (process.platform !== "win32") return;
30521
+ run3("attrib", [dir], { windowsHide: true }, (err2, stdout) => {
30522
+ if (err2 || attribHasNotIndexed(String(stdout), dir)) return;
30523
+ run3("attrib", ["+I", join6(dir, "*"), "/S", "/D"], { windowsHide: true }, () => {
30524
+ run3("attrib", ["+I", dir], { windowsHide: true }, () => {
30525
+ });
30526
+ });
30527
+ });
30528
+ }
30512
30529
  function workspacePaths(root) {
30513
30530
  const dir = workspaceDir(root);
30514
30531
  return {
@@ -79377,9 +79394,9 @@ var NodeFsHandler = class {
79377
79394
  if (this.fsw.closed) {
79378
79395
  return;
79379
79396
  }
79380
- const dirname20 = sysPath.dirname(file2);
79397
+ const dirname21 = sysPath.dirname(file2);
79381
79398
  const basename10 = sysPath.basename(file2);
79382
- const parent = this.fsw._getWatchedDir(dirname20);
79399
+ const parent = this.fsw._getWatchedDir(dirname21);
79383
79400
  let prevStats = stats;
79384
79401
  if (parent.has(basename10))
79385
79402
  return;
@@ -79406,7 +79423,7 @@ var NodeFsHandler = class {
79406
79423
  prevStats = newStats2;
79407
79424
  }
79408
79425
  } catch (error48) {
79409
- this.fsw._remove(dirname20, basename10);
79426
+ this.fsw._remove(dirname21, basename10);
79410
79427
  }
79411
79428
  } else if (parent.has(basename10)) {
79412
79429
  const at = newStats.atimeMs;
@@ -84914,10 +84931,10 @@ function startGitSensor(gitDir, onEvent, opts = {}) {
84914
84931
  }
84915
84932
 
84916
84933
  // src/git-delta.ts
84917
- import { execFile } from "node:child_process";
84934
+ import { execFile as execFile2 } from "node:child_process";
84918
84935
  function git(repoDir, args2) {
84919
84936
  return new Promise((resolve10, reject) => {
84920
- execFile(
84937
+ execFile2(
84921
84938
  "git",
84922
84939
  ["-C", repoDir, ...args2],
84923
84940
  {
@@ -85878,7 +85895,7 @@ init_git_remote();
85878
85895
 
85879
85896
  // src/history-bundle.ts
85880
85897
  init_src();
85881
- import { execFile as execFile2 } from "node:child_process";
85898
+ import { execFile as execFile3 } from "node:child_process";
85882
85899
  import { readFileSync as readFileSync26 } from "node:fs";
85883
85900
  import { join as join30 } from "node:path";
85884
85901
  var DEFAULT_MAX_TOKENS = 6e3;
@@ -86097,7 +86114,7 @@ function headerPaths(diff) {
86097
86114
  var GIT_MAX_BUFFER = 64 * 1024 * 1024;
86098
86115
  function git2(repoDir, args2, maxBuffer = GIT_MAX_BUFFER) {
86099
86116
  return new Promise((resolve10, reject) => {
86100
- execFile2(
86117
+ execFile3(
86101
86118
  "git",
86102
86119
  ["-C", repoDir, ...args2],
86103
86120
  { encoding: "utf8", maxBuffer, windowsHide: true },
@@ -87463,7 +87480,7 @@ function createWatchBreaker(deps) {
87463
87480
  }
87464
87481
 
87465
87482
  // src/engine.ts
87466
- var DAEMON_VERSION = true ? "2.0.23-dev.4682" : "2.0.0-alpha.0";
87483
+ var DAEMON_VERSION = true ? "2.0.23-dev.4734" : "2.0.0-alpha.0";
87467
87484
  var IGNORED_PATH = /[\\/](?:\.git|node_modules|\.errata|\.claude|\.codex|\.cursor|\.turbo|\.next|dist|coverage|test-results|playwright-report|__pycache__)(?:[\\/]|$)/;
87468
87485
  var IGNORED_NOISE = /castalia\.db|eventlog\.sqlite|turn-cursors/;
87469
87486
  var GIT_OP_MUTE_MS = 4e3;
@@ -90383,9 +90400,9 @@ init_profile2();
90383
90400
 
90384
90401
  // src/project-link.ts
90385
90402
  init_profile2();
90386
- import { execFile as execFile3 } from "node:child_process";
90403
+ import { execFile as execFile4 } from "node:child_process";
90387
90404
  import { promisify as promisify2 } from "node:util";
90388
- var execFileAsync = promisify2(execFile3);
90405
+ var execFileAsync = promisify2(execFile4);
90389
90406
  function isClaimedElsewhere(err2) {
90390
90407
  if (!err2 || typeof err2 !== "object") return false;
90391
90408
  const e = err2;
@@ -90886,7 +90903,7 @@ function invalidateInstanceReceipt(current, destination, failedId, mirrorLegacy)
90886
90903
  init_dist();
90887
90904
  init_src5();
90888
90905
  import { existsSync as existsSync34, readFileSync as readFileSync40, writeFileSync as writeFileSync29 } from "node:fs";
90889
- import { join as join47, resolve as pathResolve } from "node:path";
90906
+ import { dirname as dirname17, join as join47, resolve as pathResolve } from "node:path";
90890
90907
 
90891
90908
  // src/principle-sync.ts
90892
90909
  init_src5();
@@ -93012,7 +93029,7 @@ async function hydrateProject(opts) {
93012
93029
  // src/history-reconcile.ts
93013
93030
  init_src11();
93014
93031
  init_src();
93015
- import { execFile as execFile5 } from "node:child_process";
93032
+ import { execFile as execFile6 } from "node:child_process";
93016
93033
  import { promisify as promisify4 } from "node:util";
93017
93034
  import { extname as extname3, join as join43 } from "node:path";
93018
93035
  import { createHash as createHash19 } from "node:crypto";
@@ -93020,9 +93037,9 @@ import { readFileSync as readFileSync38 } from "node:fs";
93020
93037
 
93021
93038
  // src/history-dependency-snapshot.ts
93022
93039
  init_src();
93023
- import { execFile as execFile4 } from "node:child_process";
93040
+ import { execFile as execFile5 } from "node:child_process";
93024
93041
  import { promisify as promisify3 } from "node:util";
93025
- var exec = promisify3(execFile4);
93042
+ var exec = promisify3(execFile5);
93026
93043
  async function readHistoryDependencySnapshot(opts) {
93027
93044
  const git3 = opts.git ?? (async (args2) => (await exec("git", ["-C", opts.root, ...args2], { windowsHide: true, maxBuffer: 16 * 1024 * 1024 })).stdout);
93028
93045
  const read2 = opts.readBlob ?? (async (oid) => git3(["show", oid]));
@@ -93120,7 +93137,7 @@ async function readHistoryDependencySnapshot(opts) {
93120
93137
 
93121
93138
  // src/history-reconcile.ts
93122
93139
  init_profile2();
93123
- var exec2 = promisify4(execFile5);
93140
+ var exec2 = promisify4(execFile6);
93124
93141
  var KINDS = { function: "Function", class: "Class", method: "Method", interface: "Interface", const: "Const", enum: "Enum", typealias: "TypeAlias", namespace: "Namespace", property: "Property" };
93125
93142
  var inFlight = /* @__PURE__ */ new Map();
93126
93143
  var carryRefused = /* @__PURE__ */ new Set();
@@ -93512,7 +93529,7 @@ ${await git3(["rev-list", "--parents", "-1", from])}`.split("\n").map((row) => r
93512
93529
  // src/project-history.ts
93513
93530
  init_src7();
93514
93531
  init_src();
93515
- import { execFile as execFile6 } from "node:child_process";
93532
+ import { execFile as execFile7 } from "node:child_process";
93516
93533
  import { readFileSync as readFileSync39 } from "node:fs";
93517
93534
  import { join as join44 } from "node:path";
93518
93535
  import { promisify as promisify5 } from "node:util";
@@ -94056,7 +94073,7 @@ async function historicalAnchors(input) {
94056
94073
 
94057
94074
  // src/project-history.ts
94058
94075
  init_profile2();
94059
- var execFileAsync2 = promisify5(execFile6);
94076
+ var execFileAsync2 = promisify5(execFile7);
94060
94077
  var HISTORY_EXTRACTOR_VERSION = "history-2";
94061
94078
  var LEASE_POLL_MS = 2e4;
94062
94079
  var RECOVERY_DEADLINE_MS = 15 * 6e4;
@@ -95560,6 +95577,7 @@ async function startMultiDaemon(opts = {}) {
95560
95577
  };
95561
95578
  const sharedDbPath = sharedStorePath();
95562
95579
  ensureParent(sharedDbPath);
95580
+ if (sharedDbPath !== ":memory:") excludeFromIndexing(dirname17(sharedDbPath));
95563
95581
  await prepareStore(sharedDbPath, process.cwd(), "shared");
95564
95582
  const sharedStore = openGraphStore({ path: sharedDbPath });
95565
95583
  const bundledRun = import.meta.url.endsWith(".mjs");
@@ -95771,6 +95789,7 @@ async function startMultiDaemon(opts = {}) {
95771
95789
  const id = entry.id;
95772
95790
  const castaliaPath = workspacePaths(entry.path).castalia;
95773
95791
  ensureParent(castaliaPath);
95792
+ excludeFromIndexing(dirname17(castaliaPath));
95774
95793
  await prepareStore(castaliaPath, entry.path, id);
95775
95794
  if (stopping) throw new Error("daemon stopping");
95776
95795
  const wsIdentity = identityFor(entry);
@@ -98009,7 +98028,7 @@ import { join as join50 } from "node:path";
98009
98028
  // src/claude-statusline.ts
98010
98029
  import { existsSync as existsSync35, mkdirSync as mkdirSync9, readFileSync as readFileSync41, writeFileSync as writeFileSync30 } from "node:fs";
98011
98030
  import { homedir as homedir7 } from "node:os";
98012
- import { dirname as dirname17, join as join49 } from "node:path";
98031
+ import { dirname as dirname18, join as join49 } from "node:path";
98013
98032
  var STATUSLINE_RELAY_SOURCE = String.raw`// errata-managed: regenerated by errata init / install-hooks claude
98014
98033
  import { readFileSync } from 'node:fs';
98015
98034
 
@@ -98093,7 +98112,7 @@ function ensureUserStatusLine(opts) {
98093
98112
  return ownMain ? "kept-own" : "unchanged";
98094
98113
  }
98095
98114
  Object.assign(settings, next);
98096
- mkdirSync9(dirname17(settingsPath), { recursive: true });
98115
+ mkdirSync9(dirname18(settingsPath), { recursive: true });
98097
98116
  writeFileSync30(settingsPath, JSON.stringify(settings, null, 2) + "\n", "utf8");
98098
98117
  return "installed";
98099
98118
  }
@@ -99485,7 +99504,7 @@ enabled = ${enabled}
99485
99504
  // src/codex-hook-refresh.ts
99486
99505
  init_checkout_root();
99487
99506
  import { existsSync as existsSync38, readdirSync as readdirSync14, readFileSync as readFileSync46 } from "node:fs";
99488
- import { dirname as dirname18, join as join54, resolve as resolve8 } from "node:path";
99507
+ import { dirname as dirname19, join as join54, resolve as resolve8 } from "node:path";
99489
99508
  init_registry();
99490
99509
  function codexHookRoots(roots) {
99491
99510
  const found = new Set(roots.map((root) => resolve8(root)));
@@ -99502,7 +99521,7 @@ function codexHookRoots(roots) {
99502
99521
  }
99503
99522
  for (const name2 of names) {
99504
99523
  try {
99505
- const checkout = dirname18(readFileSync46(join54(dir, name2, "gitdir"), "utf8").trim());
99524
+ const checkout = dirname19(readFileSync46(join54(dir, name2, "gitdir"), "utf8").trim());
99506
99525
  if (mainCheckoutOfWorktree(checkout) === main2) found.add(checkout);
99507
99526
  } catch {
99508
99527
  }
@@ -99526,7 +99545,7 @@ function refreshInstalledCodexRelays(roots = listWorkspaceEntries().map((entry)
99526
99545
  // src/claude-mods.ts
99527
99546
  import { createHash as createHash22 } from "node:crypto";
99528
99547
  import { cpSync as cpSync3, existsSync as existsSync39, mkdirSync as mkdirSync12, readFileSync as readFileSync47, readdirSync as readdirSync15, rmSync as rmSync4, statSync as statSync15, writeFileSync as writeFileSync33 } from "node:fs";
99529
- import { delimiter as delimiter2, dirname as dirname19, join as join55, relative as relative7, resolve as resolve9, sep as sep6 } from "node:path";
99548
+ import { delimiter as delimiter2, dirname as dirname20, join as join55, relative as relative7, resolve as resolve9, sep as sep6 } from "node:path";
99530
99549
  import { fileURLToPath as fileURLToPath4 } from "node:url";
99531
99550
  var CLAUDE_PLUGIN_DIRS_ENV = "CLAUDE_CODE_PLUGIN_DIRS";
99532
99551
  var HASH_FILE = ".errata-mod-hash";
@@ -99601,7 +99620,7 @@ function currentDirs(settings) {
99601
99620
  return raw2.split(delimiter2).map((s) => s.trim()).filter(Boolean);
99602
99621
  }
99603
99622
  function writeSettings(path3, settings) {
99604
- mkdirSync12(dirname19(path3), { recursive: true });
99623
+ mkdirSync12(dirname20(path3), { recursive: true });
99605
99624
  writeFileSync33(path3, JSON.stringify(settings, null, 2) + "\n", "utf8");
99606
99625
  }
99607
99626
  function ensureClaudeMods(opts) {
@@ -102323,9 +102342,9 @@ async function installClaudeHooks(port) {
102323
102342
  }
102324
102343
  async function installClaudeMcpConfig() {
102325
102344
  const { mkdirSync: mkdirSync13, existsSync: existsSync41, readFileSync: readFileSync49, writeFileSync: writeFileSync34 } = await import("node:fs");
102326
- const { join: join57, dirname: dirname20 } = await import("node:path");
102345
+ const { join: join57, dirname: dirname21 } = await import("node:path");
102327
102346
  const file2 = join57(ROOT, ".mcp.json");
102328
- const dir = dirname20(file2);
102347
+ const dir = dirname21(file2);
102329
102348
  if (!existsSync41(dir)) mkdirSync13(dir, { recursive: true });
102330
102349
  let cfg = {};
102331
102350
  if (existsSync41(file2)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inerrata-corporation/errata",
3
- "version": "2.0.23-dev.4682",
3
+ "version": "2.0.23-dev.4734",
4
4
  "description": "errata - local-first observation engine for AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "errata-context",
3
- "version": "2.0.23-dev.4682",
3
+ "version": "2.0.23-dev.4734",
4
4
  "description": "A minimal 3D view of loaded Errata priors and recent graph bursts.",
5
5
  "author": {
6
6
  "name": "inErrata"
@@ -1,4 +1,4 @@
1
- 51434f3e703060bee5abb7c7eebe1446b66132c9cb7e43ae630daf855d83bc02 .codex-plugin/plugin.json
1
+ 1cf9b23c192fdd174ce8e6758c456f5406439ff585d252e1765cdd7707583657 .codex-plugin/plugin.json
2
2
  a7bebae9fb01c838d6c75fc784129e28be571233fa66ff5ee8039b574f35ccf7 assets/icon.png
3
3
  fc38b64e4df1e0b72c35764bef6c4c05430d97c9009ad0ecc8a9e75b4deab232 configure-local.mjs
4
4
  73dc6028b3b070257c7c31f252d11e55a9e096f4aed0f187f10cb21716e1e6d7 dist/client.js