@kabmo-labs/kabmo 0.3.0 → 0.3.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kabmo-labs/kabmo",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Web console and diagnostic workbench for AI coding agents — Elysia + Preact on Bun.",
5
5
  "license": "UNLICENSED",
6
6
  "author": "Wijanarko Putra Rajeb <wijanarko.rajeb@gmail.com>",
@@ -16,7 +16,7 @@
16
16
  * environment condition, not a bug, so the suite is skipped rather than failed.
17
17
  */
18
18
 
19
- import { afterEach, beforeEach, describe, expect, test } from 'bun:test';
19
+ import { afterEach, beforeEach, describe, expect, setDefaultTimeout, test } from 'bun:test';
20
20
  import fs from 'node:fs';
21
21
  import { tmpdir } from 'node:os';
22
22
  import { join } from 'node:path';
@@ -29,6 +29,23 @@ import { removeDir } from '@/test-support/remove-dir';
29
29
 
30
30
  const hasGit = Boolean(Bun.which('git'));
31
31
 
32
+ /**
33
+ * The suite drives REAL git processes — `init`, `add`, `commit`, `ls-remote`,
34
+ * `fetch`, `reset`, and a plugin build — and one test of it pays for most of
35
+ * them. Bun's default per-test budget is 5s, which a Linux runner clears in
36
+ * ~1.2s and a Windows runner does not: measured on `windows-latest`, the update
37
+ * test timed out at 5072ms and failed `expect(result.ok).toBe(true)` because the
38
+ * timeout fired mid-await (the run reported 1 fail + 1 unhandled error, and the
39
+ * suite is green locally). Process spawn on that runner costs several times what
40
+ * it does on POSIX, and this is the only suite here that spawns this many.
41
+ *
42
+ * A budget, not a skip: the behaviour under test — a shallow clone advancing past
43
+ * its boundary — is identical on both platforms, and skipping it there would
44
+ * report the update path as unverified on the platform the CLI ships to.
45
+ */
46
+ const GIT_TEST_TIMEOUT_MS = 30_000;
47
+ setDefaultTimeout(GIT_TEST_TIMEOUT_MS);
48
+
32
49
  let root = '';
33
50
  let work = '';
34
51