humanish 0.49.0 → 0.51.0

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.
Files changed (65) hide show
  1. package/README.md +52 -3
  2. package/dist/concurrent-shared-world-lab.d.ts +5 -0
  3. package/dist/concurrent-shared-world-lab.js +28 -0
  4. package/dist/concurrent-shared-world-lab.js.map +1 -1
  5. package/dist/cua-actor-lab.d.ts +7 -0
  6. package/dist/cua-actor-lab.js +64 -3
  7. package/dist/cua-actor-lab.js.map +1 -1
  8. package/dist/e2b-terminal-lab.d.ts +7 -0
  9. package/dist/e2b-terminal-lab.js +54 -0
  10. package/dist/e2b-terminal-lab.js.map +1 -1
  11. package/dist/init-templates.js +7 -2
  12. package/dist/init-templates.js.map +1 -1
  13. package/dist/lab-engine.d.ts +11 -0
  14. package/dist/lab-engine.js +18 -0
  15. package/dist/lab-engine.js.map +1 -1
  16. package/dist/lab-summary.d.ts +36 -0
  17. package/dist/lab-summary.js +86 -0
  18. package/dist/lab-summary.js.map +1 -0
  19. package/dist/oss-lab.d.ts +3 -0
  20. package/dist/oss-lab.js.map +1 -1
  21. package/dist/oss-meta-lab.d.ts +3 -0
  22. package/dist/oss-meta-lab.js +13 -0
  23. package/dist/oss-meta-lab.js.map +1 -1
  24. package/dist/program.d.ts +14 -0
  25. package/dist/program.js +131 -9
  26. package/dist/program.js.map +1 -1
  27. package/dist/run-detail.d.ts +59 -0
  28. package/dist/run-detail.js +108 -0
  29. package/dist/run-detail.js.map +1 -0
  30. package/dist/run-index.d.ts +71 -0
  31. package/dist/run-index.js +206 -0
  32. package/dist/run-index.js.map +1 -0
  33. package/dist/run-paths.js +16 -1
  34. package/dist/run-paths.js.map +1 -1
  35. package/dist/run-projection.d.ts +182 -0
  36. package/dist/run-projection.js +349 -0
  37. package/dist/run-projection.js.map +1 -0
  38. package/dist/run-status.d.ts +139 -0
  39. package/dist/run-status.js +218 -0
  40. package/dist/run-status.js.map +1 -0
  41. package/dist/run.d.ts +15 -0
  42. package/dist/run.js +91 -6
  43. package/dist/run.js.map +1 -1
  44. package/dist/scripted-browser-lab.d.ts +5 -0
  45. package/dist/scripted-browser-lab.js +27 -0
  46. package/dist/scripted-browser-lab.js.map +1 -1
  47. package/dist/shared-world-lab.d.ts +5 -0
  48. package/dist/shared-world-lab.js +27 -0
  49. package/dist/shared-world-lab.js.map +1 -1
  50. package/dist/tui-app.js +402 -0
  51. package/dist/tui-contract.d.ts +84 -0
  52. package/dist/tui-contract.js +32 -0
  53. package/dist/tui-contract.js.map +1 -0
  54. package/dist/tui-launch.d.ts +48 -0
  55. package/dist/tui-launch.js +159 -0
  56. package/dist/tui-launch.js.map +1 -0
  57. package/dist/tui-project.d.ts +9 -0
  58. package/dist/tui-project.js +18 -0
  59. package/dist/tui-project.js.map +1 -0
  60. package/docs/contracts/run-bundle.md +8 -0
  61. package/docs/contracts/schemas.md +70 -1
  62. package/docs/goals/current.md +3 -2
  63. package/docs/ramp/README.md +1 -1
  64. package/package.json +8 -5
  65. package/skills/humanish/SKILL.md +19 -0
@@ -0,0 +1,36 @@
1
+ export declare const LAB_SUMMARY_SCHEMA = "humanish.lab-summary.v1";
2
+ export interface LabCaps {
3
+ /** Per-lane blast-radius budget. */
4
+ laneUsd?: number;
5
+ /** Shared study budget across every lane. */
6
+ studyUsd?: number;
7
+ }
8
+ export interface LabSummary {
9
+ schema: typeof LAB_SUMMARY_SCHEMA;
10
+ labId: string;
11
+ title?: string;
12
+ description?: string;
13
+ /** "clone drawdb-io/drawdb", "app-url http://127.0.0.1:3000/", "this-repo". */
14
+ subject?: string;
15
+ /** How many participants and who they are: `1 × synthetic-new-user`. */
16
+ participants?: string;
17
+ /** The model that will actually run, override or default. */
18
+ model?: string;
19
+ caps: LabCaps;
20
+ /**
21
+ * Whether every key a LIVE run of this lab needs is resolvable right now. `undefined` when not
22
+ * checked. Names only — a value never leaves the key layer.
23
+ */
24
+ keysReady?: boolean;
25
+ missingKeys?: string[];
26
+ }
27
+ export interface ReadLabSummaryOptions {
28
+ /** Skip the key probe (it touches vendor stores); the screen then shows no keys line. */
29
+ checkKeys?: boolean;
30
+ env?: NodeJS.ProcessEnv;
31
+ }
32
+ /**
33
+ * Describe one lab. Returns null when the manifest cannot be resolved — the caller already knows
34
+ * the lab exists from the listing, so this failing means the file changed underneath them.
35
+ */
36
+ export declare function readLabSummary(cwd: string, lab: string, options?: ReadLabSummaryOptions): Promise<LabSummary | null>;
@@ -0,0 +1,86 @@
1
+ // What a lab IS, for the surface that has to describe it before you spend money (#455).
2
+ //
3
+ // The run index and run detail answer questions about runs. This answers a question about the LAB
4
+ // itself — what it drives, who is in it, which model, and what it is allowed to spend — which is
5
+ // what a stakeholder reads on the screen where they decide whether to press Start.
6
+ //
7
+ // Every field is optional and omitted when the manifest does not declare it. A cap that is not
8
+ // declared is not "unlimited" and not "$0"; it is a line the screen does not draw.
9
+ import { DEFAULT_OPENAI_CU_MODEL } from "./openai-responses-cu.js";
10
+ import { inspectLabManifest } from "./labs.js";
11
+ import { probeKeySources } from "./key-resolution.js";
12
+ export const LAB_SUMMARY_SCHEMA = "humanish.lab-summary.v1";
13
+ /** One short phrase for what the lab drives. */
14
+ function subjectOf(config) {
15
+ const subject = config.subject;
16
+ if (subject?.source === undefined)
17
+ return undefined;
18
+ const repo = subject.repos?.[0];
19
+ if (repo !== undefined)
20
+ return `${subject.source} ${repo}`;
21
+ if (subject.appUrl !== undefined)
22
+ return `${subject.source} ${subject.appUrl}`;
23
+ return subject.source;
24
+ }
25
+ /** How many participants, and who — collapsed when they are all the same persona. */
26
+ function participantsOf(config) {
27
+ const actors = config.actors;
28
+ const actor = actors?.[0];
29
+ if (actor === undefined)
30
+ return undefined;
31
+ const lanePersonas = (actor.lanes ?? []).map((lane) => lane.persona).filter((persona) => typeof persona === "string");
32
+ const personas = lanePersonas.length > 0 ? lanePersonas : actor.persona === undefined ? [] : [actor.persona];
33
+ const count = actor.count ?? actor.lanes?.length ?? personas.length ?? 1;
34
+ const unique = [...new Set(personas)];
35
+ if (unique.length === 0)
36
+ return `${count} participant${count === 1 ? "" : "s"}`;
37
+ // Several lanes of ONE persona reads as "3 × skeptical-power-user"; genuinely different people
38
+ // are named, because which personas are in a study is the study's design.
39
+ return unique.length === 1 ? `${count} × ${unique[0]}` : unique.join(" · ");
40
+ }
41
+ function capsOf(config) {
42
+ const caps = config.policies?.caps
43
+ ?? config.caps;
44
+ return {
45
+ ...(typeof caps?.maxUsd === "number" ? { laneUsd: caps.maxUsd } : {}),
46
+ ...(typeof caps?.maxTotalUsd === "number" ? { studyUsd: caps.maxTotalUsd } : {})
47
+ };
48
+ }
49
+ /**
50
+ * Describe one lab. Returns null when the manifest cannot be resolved — the caller already knows
51
+ * the lab exists from the listing, so this failing means the file changed underneath them.
52
+ */
53
+ export async function readLabSummary(cwd, lab, options = {}) {
54
+ const inspected = await inspectLabManifest(cwd, lab).catch(() => null);
55
+ if (inspected === null || !inspected.ok || inspected.config === undefined)
56
+ return null;
57
+ const config = inspected.config;
58
+ const actors = config.actors;
59
+ let keysReady;
60
+ let missingKeys;
61
+ if (options.checkKeys === true) {
62
+ // Only the keys a live run of THIS lab would need. Names only; no value is read or returned.
63
+ const needed = ["OPENAI_API_KEY", "E2B_API_KEY"];
64
+ const probes = await probeKeySources(needed, { cwd, env: options.env ?? process.env }).catch(() => []);
65
+ const missing = probes.filter((probe) => probe.source === null).map((probe) => probe.name);
66
+ keysReady = probes.length > 0 && missing.length === 0;
67
+ if (missing.length > 0)
68
+ missingKeys = missing;
69
+ }
70
+ // Computed once: a test-then-use pair reads as though the two calls could differ.
71
+ const subject = subjectOf(config);
72
+ const participants = participantsOf(config);
73
+ return {
74
+ schema: LAB_SUMMARY_SCHEMA,
75
+ labId: String(config.id ?? lab),
76
+ ...(typeof config.title === "string" ? { title: config.title } : {}),
77
+ ...(typeof config.description === "string" ? { description: config.description.trim() } : {}),
78
+ ...(subject === undefined ? {} : { subject }),
79
+ ...(participants === undefined ? {} : { participants }),
80
+ model: actors?.[0]?.model ?? DEFAULT_OPENAI_CU_MODEL,
81
+ caps: capsOf(config),
82
+ ...(keysReady === undefined ? {} : { keysReady }),
83
+ ...(missingKeys === undefined ? {} : { missingKeys })
84
+ };
85
+ }
86
+ //# sourceMappingURL=lab-summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lab-summary.js","sourceRoot":"","sources":["../src/lab-summary.ts"],"names":[],"mappings":"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"}
package/dist/oss-lab.d.ts CHANGED
@@ -1,6 +1,9 @@
1
+ import type { RunLabProvenance } from "./run-status.js";
1
2
  export declare const OSS_LAB_SCHEMA = "humanish.oss-lab-result.v1";
2
3
  export declare const DEFAULT_OSS_REPOS: readonly ["CorentinTh/it-tools", "drawdb-io/drawdb", "maciekt07/TodoApp", "lissy93/dashy"];
3
4
  export interface OssLabOptions {
5
+ /** Which manifest produced this run (#455). */
6
+ lab?: RunLabProvenance;
4
7
  cwd: string;
5
8
  keep?: boolean;
6
9
  limit?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"oss-lab.js","sourceRoot":"","sources":["../src/oss-lab.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oss-lab.js","sourceRoot":"","sources":["../src/oss-lab.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
+ import { type RunLabProvenance } from "./run-status.js";
1
2
  import type { ObserverResult } from "./observer.js";
2
3
  import type { E2BSandboxInfo } from "./e2b-desktop-launch.js";
3
4
  import type { RunBundle, RunSetupQualitySnapshot } from "./run.js";
4
5
  export declare const OSS_META_LAB_SCHEMA = "humanish.oss-meta-lab-result.v1";
5
6
  export interface OssMetaLabOptions {
7
+ /** Which manifest produced this run (#455). */
8
+ lab?: RunLabProvenance;
6
9
  codexAppServer?: boolean;
7
10
  completionTimeoutMs?: number;
8
11
  count?: number;
@@ -3,6 +3,7 @@ import { randomBytes } from "node:crypto";
3
3
  import { lstat, mkdir, readFile, readdir, realpath, rm, stat, writeFile } from "node:fs/promises";
4
4
  import path from "node:path";
5
5
  import { runDesktopCommandOrThrow } from "./command-failure.js";
6
+ import { beginRunStatus } from "./run-status.js";
6
7
  import { promisify } from "node:util";
7
8
  import { fileURLToPath } from "node:url";
8
9
  import { attachObserverRuntimeStreamUrls, renderObserver } from "./observer.js";
@@ -412,6 +413,7 @@ export async function runOssMetaLab(options) {
412
413
  const physicalCwd = await realpath(cwd);
413
414
  const runResult = await runDryRun({
414
415
  cwd: physicalCwd,
416
+ ...(options.lab === undefined ? {} : { lab: options.lab }),
415
417
  dryRun: true,
416
418
  runId,
417
419
  simCount: count
@@ -435,6 +437,14 @@ export async function runOssMetaLab(options) {
435
437
  };
436
438
  }
437
439
  const preparedRunPaths = await bindExistingRunArtifactPaths(physicalCwd, runId);
440
+ // The dry-run route created (and finalized) this run dir; the meta lab now keeps working in it
441
+ // for minutes. Re-open the status record so a watcher sees a LIVE run rather than a finished one
442
+ // (#455) — the same file, honestly re-stated.
443
+ const runStatus = beginRunStatus(preparedRunPaths, {
444
+ runId,
445
+ mode: dryRun ? "dry-run" : "live",
446
+ ...(options.lab === undefined ? {} : { lab: options.lab })
447
+ });
438
448
  const artifactRoot = preparedRunPaths;
439
449
  const createdAt = new Date().toISOString();
440
450
  const source = await buildRunSource({
@@ -629,6 +639,9 @@ export async function runOssMetaLab(options) {
629
639
  source
630
640
  });
631
641
  await writeMetaBundleArtifacts(artifactRoot, bundle);
642
+ await runStatus.finish({
643
+ ...(bundle.review?.verdict === undefined ? {} : { verdict: bundle.review.verdict })
644
+ });
632
645
  const finalObserver = await renderObserver(physicalCwd, runId, { open: options.open === true });
633
646
  Object.assign(observer, finalObserver);
634
647
  if (observer.ok) {