humanish 0.19.0 → 0.20.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 (37) hide show
  1. package/dist/command-failure.d.ts +14 -0
  2. package/dist/command-failure.js +19 -0
  3. package/dist/command-failure.js.map +1 -1
  4. package/dist/computer-use-actor.d.ts +3 -0
  5. package/dist/computer-use-actor.js +2 -1
  6. package/dist/computer-use-actor.js.map +1 -1
  7. package/dist/computer-use.d.ts +9 -0
  8. package/dist/computer-use.js +57 -2
  9. package/dist/computer-use.js.map +1 -1
  10. package/dist/concurrent-shared-world-lab.d.ts +23 -1
  11. package/dist/concurrent-shared-world-lab.js +431 -41
  12. package/dist/concurrent-shared-world-lab.js.map +1 -1
  13. package/dist/cua-actor-lab.d.ts +7 -0
  14. package/dist/cua-actor-lab.js +4 -1
  15. package/dist/cua-actor-lab.js.map +1 -1
  16. package/dist/index.d.ts +3 -3
  17. package/dist/index.js +2 -2
  18. package/dist/index.js.map +1 -1
  19. package/dist/init-templates.js +52 -0
  20. package/dist/init-templates.js.map +1 -1
  21. package/dist/lab-config.d.ts +54 -3
  22. package/dist/lab-config.js +162 -9
  23. package/dist/lab-config.js.map +1 -1
  24. package/dist/run.d.ts +46 -2
  25. package/dist/run.js +226 -1
  26. package/dist/run.js.map +1 -1
  27. package/dist/shared-world-lab.d.ts +8 -0
  28. package/dist/shared-world-lab.js.map +1 -1
  29. package/docs/architecture/external-public-shared-world.md +117 -0
  30. package/docs/architecture/state-driven-executor.md +33 -0
  31. package/docs/contracts/schemas.md +64 -5
  32. package/docs/goals/current.md +1 -1
  33. package/docs/principles/invariants-and-defaults.md +16 -0
  34. package/docs/product/cineguessr-3player-external-public.md +67 -0
  35. package/docs/ramp/README.md +1 -1
  36. package/docs/release/0.20.0-external-public-shared-world.md +43 -0
  37. package/package.json +1 -1
@@ -0,0 +1,43 @@
1
+ # 0.20.0 — External-public shared-world plane + CDP lobby-code handoff
2
+
3
+ Additive minor release. No breaking change to the provisioned-getHost path, its schema, or its verify
4
+ asserts (byte-stable; a snapshot regression pins it).
5
+
6
+ ## Highlights
7
+
8
+ - **External-public shared-world plane class** (`sharedWorld.planeClass: "external-public"`). A real,
9
+ operator-OWNED public deployment can now be the shared plane DIRECTLY: `subject.source: app-url` +
10
+ `subject.topology: shared-world` + `policies.allowPublicTargets: true` +
11
+ `execution.concurrency > 1`. NO getHost, NO clone, NO subject sandbox, NO seed. The N>1 +
12
+ `allowPublicTargets` refusal now ROUTES here when `topology: shared-world` is declared, instead of
13
+ failing.
14
+ - **Operator-ownership attestation** `subject.publicTarget: { owner, authorized: true }` — the honest
15
+ analog of `exposure: synthetic` for a plane the harness does not own (author-trust, unverifiable).
16
+ - **CDP lobby-code handoff barrier.** A new runtime-only `CuaLoopOptions.onObservedUrl(url)` callback
17
+ (fired after every `executor.observe()`, never persisted) feeds a host-first barrier: the host seat
18
+ creates the shared lobby, the orchestrator extracts `/lobby/CODE` from its CDP-observed URL and
19
+ threads the code into the follower JOIN missions; followers fail closed WITHOUT opening on
20
+ `HUMANISH_CONCURRENT_SHARED_WORLD_LAB_HANDOFF_TIMEOUT`.
21
+ - **3-mobile cineguessr example** (`humanish/labs/cineguessr-3player.yaml` + an init template): 3
22
+ mobile-LAYOUT personas play the same multiplayer lobby on a real public app at once. Dry-run $0.
23
+ - **Honest evidence class.** Attribution stays `shared-world`; every strength claim degrades honestly
24
+ and is asserted-ABSENT by verify: `subject.state.provenance == external-public` (not seeded);
25
+ `plane.exposure` ABSENT (no synthetic claim on a real site); `plane.publicOriginDigest` is the
26
+ OBSERVED origin the seats converged on (redirect-tolerant — a cross-origin apex→www/http→https
27
+ redirect is normal; the declared origin is recorded separately as `plane.declaredOriginDigest` and
28
+ is never asserted equal) with every observed `routeHostDigest` converging on it (operator-attested,
29
+ not harness-controlled); NO
30
+ authoritative `stateSeries` (Option A); relaxed concurrency-on-pass (temporal co-occupancy only);
31
+ optional `lobbyConvergenceDigest`. The getHost synthetic gate stays UNCHANGED and is deliberately
32
+ unreachable from the app-url branch.
33
+
34
+ ## Watch-from-phone
35
+
36
+ `humanish serve --expose` covers the evolving Observer/artifacts from a phone TODAY. Native
37
+ live-desktop `--expose` streaming on the concurrent path is a clean 0.20.1 fast-follow reusing
38
+ `startExposedObserver` on the concurrent observer server.
39
+
40
+ ## Notes
41
+
42
+ - Cost tracking (0.19.0) and the CommandExitError resilience fix (0.19.1) remain in place.
43
+ - `execution.timeoutMs` caps the host-first handoff deadline (default 120s).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "humanish",
3
- "version": "0.19.0",
3
+ "version": "0.20.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": [