humanish 0.79.0 → 0.81.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.
- package/README.md +11 -2
- package/dist/actor-contract.d.ts +16 -0
- package/dist/actor-contract.js.map +1 -1
- package/dist/chrome-cdp-probe.js +13 -0
- package/dist/chrome-cdp-probe.js.map +1 -1
- package/dist/computer-use.d.ts +7 -1
- package/dist/computer-use.js +156 -13
- package/dist/computer-use.js.map +1 -1
- package/dist/concurrent-shared-world-lab.js +1 -0
- package/dist/concurrent-shared-world-lab.js.map +1 -1
- package/dist/cua-actor-lab.d.ts +7 -6
- package/dist/cua-actor-lab.js +95 -21
- package/dist/cua-actor-lab.js.map +1 -1
- package/dist/e2b-desktop-launch.d.ts +28 -1
- package/dist/e2b-desktop-launch.js +88 -1
- package/dist/e2b-desktop-launch.js.map +1 -1
- package/dist/e2b-desktop-screenshot-cleanup.d.ts +15 -0
- package/dist/e2b-desktop-screenshot-cleanup.js +67 -0
- package/dist/e2b-desktop-screenshot-cleanup.js.map +1 -0
- package/dist/e2b-terminal-lab.d.ts +3 -2
- package/dist/e2b-terminal-lab.js +176 -85
- package/dist/e2b-terminal-lab.js.map +1 -1
- package/dist/first-run-path.js +2 -2
- package/dist/first-run-path.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lab-config.d.ts +11 -14
- package/dist/lab-config.js +2 -2
- package/dist/lab-config.js.map +1 -1
- package/dist/openai-responses-cu.js +76 -49
- package/dist/openai-responses-cu.js.map +1 -1
- package/dist/program.js +16 -7
- package/dist/program.js.map +1 -1
- package/dist/run.d.ts +1 -1
- package/dist/shared-world-lab.d.ts +3 -1
- package/dist/shared-world-lab.js +16 -1
- package/dist/shared-world-lab.js.map +1 -1
- package/dist/terminal-node-bootstrap.d.ts +4 -0
- package/dist/terminal-node-bootstrap.js +58 -0
- package/dist/terminal-node-bootstrap.js.map +1 -0
- package/dist/terminal-runtime-auth.d.ts +13 -0
- package/dist/terminal-runtime-auth.js +24 -0
- package/dist/terminal-runtime-auth.js.map +1 -0
- package/docs/architecture/actor-contract.md +22 -0
- package/docs/architecture/terminal-product-lane.md +108 -7
- package/docs/contracts/feedback.md +14 -0
- package/docs/contracts/schemas.md +1 -1
- package/docs/goals/current.md +57 -13
- package/docs/ramp/README.md +1 -1
- package/package.json +4 -2
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Date: 2026-06-02 (current-state note updated 2026-07-14)
|
|
4
4
|
|
|
5
5
|
Status: reference map for the major contracts shipped through source version
|
|
6
|
-
`0.
|
|
6
|
+
`0.81.0`; it is not an exhaustive inventory of command/result envelopes. Exported types,
|
|
7
7
|
schema constants, parsers, and validators in `src/` are authoritative. Rows
|
|
8
8
|
marked "reserved" name layering intent only — no code emits or validates them
|
|
9
9
|
yet. Do not emit a reserved schema.
|
package/docs/goals/current.md
CHANGED
|
@@ -29,11 +29,19 @@ study completed, reproduced, and produced a real accessibility finding via a
|
|
|
29
29
|
keyboard-first participant
|
|
30
30
|
([docs/goals/email-gated-signup/receipts/](email-gated-signup/receipts/)).
|
|
31
31
|
|
|
32
|
-
## Current Program Truth (source `0.
|
|
32
|
+
## Current Program Truth (source `0.81.0`)
|
|
33
33
|
|
|
34
34
|
The package source and repository implementation in this tree agree on these
|
|
35
35
|
points:
|
|
36
36
|
|
|
37
|
+
**Mobile input correction, 2026-09-05 (#676).** The historical 4/4 TodoMVC phone-lane rename
|
|
38
|
+
failures describe the shipped desktop pointer-to-touch conversion path. In two new hosted
|
|
39
|
+
conformance probes, SDK double click emitted two single clicks; direct touch opened the same
|
|
40
|
+
original editor in both. A separate local native-X control reproduced the difference by toggling
|
|
41
|
+
conversion. Mobile viewport and touch flags do not certify gesture equivalence or establish a
|
|
42
|
+
physical-device app defect. Mobile lanes using touch conversion now carry that advisory in run
|
|
43
|
+
warnings. [Method, traces summary and limits](computer-use-actor/receipts/mobile-input-conformance-2026-09-05.md).
|
|
44
|
+
|
|
37
45
|
The immutable 2026-06-10 proof-roadmap packet is paired with a
|
|
38
46
|
[current implementation checkpoint](https://github.com/danielgwilson/humanish/blob/main/docs/goals/proof-roadmap/README.md).
|
|
39
47
|
|
|
@@ -463,6 +471,35 @@ Stop and correct course if:
|
|
|
463
471
|
|
|
464
472
|
## Best Next Work
|
|
465
473
|
|
|
474
|
+
**2026-09-05 (0.81.0).** First use now distinguishes the free evidence preview
|
|
475
|
+
from a live participant study, with concise successful setup output and complete JSON details
|
|
476
|
+
(#660). The website has runnable docs and a generated CLI reference (#661, #668). Retained participant
|
|
477
|
+
reports survive automatic stops. Supported providers with retained history can add one closing
|
|
478
|
+
report when time and known budget remain; clean reports such as “no confusion or hesitation”
|
|
479
|
+
stay clean (#658, #670, #671). Desktop startup cleanup retains acquired handles and records
|
|
480
|
+
confirmed or unknown reclamation. The SDK's detached screenshot-file cleanup rejection is
|
|
481
|
+
handled (#665, #666).
|
|
482
|
+
Terminal output reconciles SDK callbacks with returned aggregates, preserving legitimate
|
|
483
|
+
repeated lines and usage turns while avoiding doubled capture (#672). Opt-in `openai-egress`
|
|
484
|
+
auth keeps the raw OpenAI runtime key outside the sandbox; every sandbox process can still
|
|
485
|
+
spend through the proxy, so this is not a provider spending limit (#663). Stock terminal
|
|
486
|
+
startup installs a checksum-verified Node archive without refreshing unrelated package mirrors
|
|
487
|
+
and gives newly installed npm a default global prefix on the standard PATH (#677, #680). Mobile studies warn that desktop pointer-to-touch conversion can change repeated-tap
|
|
488
|
+
behavior; gesture failures require direct or native touch confirmation before app attribution
|
|
489
|
+
(#678).
|
|
490
|
+
|
|
491
|
+
**2026-09-04, night (0.80.0).** The observation window reaches every desktop route: the
|
|
492
|
+
sequential and concurrent shared-world seats forward `dwell` the way they forward `stopWhen`
|
|
493
|
+
(#645), with a plumbing test per route and two live receipts, three participants holding together
|
|
494
|
+
on one shared board whose checkpoint digest stood still until they acted, and two seats holding
|
|
495
|
+
in turn on one sandbox (`receipts/dwell-window-2026-09-04.md`). The sequential route refuses a
|
|
496
|
+
sandbox request over the provider's 60-minute cap before any call and names the per-role ceiling
|
|
497
|
+
(#649); the provider's refusal had surfaced as a bundle that failed verification. The planted-defect
|
|
498
|
+
benchmark ran with a second brain, the operator's own Claude Code as the participant: 14 of 15
|
|
499
|
+
reported, nothing invented in three clean runs, 72 of 75 across both brains
|
|
500
|
+
(`bench/RESULTS-2026-09-04-claude.md`). A two-minute window and a camera feed of the adopter's own
|
|
501
|
+
are live receipts too.
|
|
502
|
+
|
|
466
503
|
**2026-09-04, evening (0.79.0).** Two of the operator's own asks, each with a live receipt. A
|
|
467
504
|
declared observation window (#510): `dwell` on an actor or a lane holds the page once its condition
|
|
468
505
|
matches (or from the start), captures a frame on a cadence, takes no action and requests no model
|
|
@@ -478,8 +515,9 @@ gives a hosted Chrome lane a capture device (ffmpeg's test pattern generated in
|
|
|
478
515
|
`desktopBrowser.media`; a microphone is refused without an image that has an audio stack, before
|
|
479
516
|
any spend. Live, Chrome raised its real dialog with a preview of the feed, the participant chose
|
|
480
517
|
"Allow this time" and read back 640x480 (`receipts/participant-camera-2026-09-04.md`). Under
|
|
481
|
-
mobile
|
|
482
|
-
at 12 of 12.
|
|
518
|
+
the then-shipped mobile-emulation input path, TodoMVC rename had stopped 3 of 3 phone
|
|
519
|
+
participants at this checkpoint; Excalidraw read 12 of 12. The 2026-09-05 input-conformance
|
|
520
|
+
correction above qualifies attribution of those mobile failures.
|
|
483
521
|
|
|
484
522
|
**2026-09-04, later (0.78.0).** `@e2b/desktop` moved from 2.2.3 to 2.3.3 (#638): its 2.3.1
|
|
485
523
|
changelog names the socket #581 found today, a background command's event stream the SDK kept
|
|
@@ -514,10 +552,10 @@ mobile-emulated browser: `execution.desktop.fidelity.mobileEmulation: true` appl
|
|
|
514
552
|
CSS viewport, the preset's device pixel ratio, touch events and a mobile user agent before the
|
|
515
553
|
participant's first observation, and the bundle records what the page then reported about itself
|
|
516
554
|
under `desktopGeometry.fidelity` (#221, `docs/goals/computer-use-actor/receipts/mobile-emulation-2026-09-03.md`).
|
|
517
|
-
On the published 0.76.0,
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
555
|
+
On the published 0.76.0, neither phone participant could rename through the emulated input path,
|
|
556
|
+
where the 500 px runs without touch had finished. Those are historical instrument observations:
|
|
557
|
+
the 2026-09-05 conformance check found SDK double click and direct touch differ on the original
|
|
558
|
+
editor, so the earlier outcome does not establish a touch-device app defect.
|
|
521
559
|
The persona axis was replicated the same evening on drawDB and TodoMVC and given a third app,
|
|
522
560
|
Excalidraw, as the clean control (`persona-axis-phone-2026-09-03.md`); a multi-lane study's
|
|
523
561
|
second and third findings reach `feedback draft` through `--candidate` (#609); a negated report
|
|
@@ -554,16 +592,22 @@ and a Claude participant with no memory across turns (#520). `humanish stats` (#
|
|
|
554
592
|
|
|
555
593
|
The standing queue, in rough order:
|
|
556
594
|
|
|
557
|
-
1. #
|
|
595
|
+
1. #509, the microphone tier: a custom desktop image with an audio stack
|
|
596
|
+
(`execution.desktop.template`), then `media.microphone` threaded into the launch the way the
|
|
597
|
+
camera is; the parse-time refusal stands until then;
|
|
598
|
+
2. #581, the remaining half: a `Sandbox.create` that fails after the API allocated the sandbox
|
|
558
599
|
(the desktop SDK's own startup) leaves a sandbox this run never learned the id of, reclaimed only
|
|
559
600
|
by the provider's timeout; the linger itself is the SDK's held command stream, closed by the
|
|
560
|
-
2.3.3 bump (0.78.0), and `doctor` names an older SDK;
|
|
561
|
-
|
|
601
|
+
2.3.3 bump (0.78.0), and `doctor` names an older SDK; the upstream ask is drafted for the
|
|
602
|
+
operator;
|
|
603
|
+
3. #221's later tier, a real device or simulator behind the emulated lane, and #623's
|
|
604
|
+
scripted-browser route, which has no model loop and so no dwell or later-tab applier;
|
|
605
|
+
4. #513: there is still nowhere to read the docs on humanish.dev (site copy is locked; a docs
|
|
562
606
|
route needs the operator's sign-off);
|
|
563
|
-
|
|
564
|
-
|
|
607
|
+
5. the TUI views over `stats` and `export` (#455's metrics screen and `s` key), design-gated;
|
|
608
|
+
6. the launch post: a draft with every number and its receipt path sits outside the public repo,
|
|
565
609
|
awaiting the operator; nothing has been announced;
|
|
566
|
-
|
|
610
|
+
7. registry promotions (#431) and the shared-world honesty half (#365, #446), unchanged.
|
|
567
611
|
|
|
568
612
|
Earlier state, kept for the record:
|
|
569
613
|
|
package/docs/ramp/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Status: public-safe contributor and agent ramp.
|
|
4
4
|
|
|
5
|
-
Package/source version in this tree: `0.
|
|
5
|
+
Package/source version in this tree: `0.81.0` (2026-09-05). The Observer is phone-usable as a stated requirement (observer/AGENTS.md); interactive primitives start from Base UI. The Observer renderer is the observer/ workspace artifact only; the legacy string-concat renderer was deleted at cutover (#426), and rollback is a version pin to 0.42.0. The containment boundary introduced in
|
|
6
6
|
`0.15.1` remains in force: managed run and output paths bind to validated
|
|
7
7
|
physical filesystem identities, and stored provider IDs are evidence, not
|
|
8
8
|
cleanup authority. The bundled OSS meta-lab is dry-run only until
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "humanish",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.81.0",
|
|
4
4
|
"description": "Open-source-safe CLI for persona simulation, observer review, and public-safe feedback drafts.",
|
|
5
5
|
"author": "Daniel G Wilson <daniel@danielgwilson.com>",
|
|
6
6
|
"keywords": [
|
|
@@ -73,7 +73,9 @@
|
|
|
73
73
|
"tui:typecheck": "pnpm --filter humanish-tui typecheck",
|
|
74
74
|
"tui:smoke": "node scripts/tui-smoke.mjs",
|
|
75
75
|
"tui:test": "pnpm --filter humanish-tui test",
|
|
76
|
-
"release:dogfood": "node scripts/release-dogfood.mjs"
|
|
76
|
+
"release:dogfood": "node scripts/release-dogfood.mjs",
|
|
77
|
+
"docs:generate": "tsx scripts/generate-cli-docs.ts",
|
|
78
|
+
"docs:check": "tsx scripts/generate-cli-docs.ts --check"
|
|
77
79
|
},
|
|
78
80
|
"repository": {
|
|
79
81
|
"type": "git",
|