Skip to content

LoopX v0.4.2

Choose a tag to compare

@huangruiteng huangruiteng released this 06 Aug 19:54

LoopX v0.4.2

LoopX v0.4.2 broadens the host and workflow surface while tightening the same local-first control-plane contract. It adds first-class Pi and TraeX paths, adaptive child admission, durable PR review/program workflows, safer issue-fix and resume behavior, and clearer public documentation without granting new implicit external authority.

State Kernel & Control Plane

  • Add adaptive child-worker admission with explicit domain, capability, repository, write-scope, exclusion, readiness, and capacity checks; registered peers remain equal and the coordinator alone accepts evidence and spends quota (#2774).
  • Make paused goals authoritative, bound file-lock acquisition, keep Todo JSON identities unique, and preserve selected sandbox/project context on resume (#2755, #2779, #2765, #2810).
  • Default new onboarding to fresh agent identities while preserving explicit existing identity choices, and keep heartbeat/registry command output inside agent-facing budgets (#2773, #2803, #2802, #2799).

Capabilities & Workflows

  • Add a provider-neutral autonomous PR queue observation contract with exact-head cursors, complete-snapshot protection, causal/execution-chain review guidance, and no implicit review, comment, push, or merge authority (#2777, #2778, #2771, #2813).
  • Add the loopx-pr-program workflow for multi-PR/MR inventory, dependency-aware roadmaps, grouped monitoring, and provider-neutral material-change reconciliation (#2814).
  • Pin Issue Fix work to the approved base snapshot and require guarded promotion of discovered issues (#2804, #2805).
  • Extend the optional Finance Value Discovery package with deterministic contract gates, replay, layered beta attribution, and industry metric packs over caller-supplied frozen public evidence (#2642).
  • Accept the shared-goal authority/pluggable-state-provider RFC with a bounded NoKV shadow reference; it is contract evidence, not a shipped runtime migration or production provider claim (#2787).

Quality & Testing

  • Restore release-facing installer, bootstrap, paused-goal, dashboard-locale, and host-skill smoke expectations, including the loopx-pr-program delivery contract fixed during v0.4.2 preparation (#2780, #2797, #2809).
  • Upgrade PostCSS to 8.5.18 to address GHSA-r28c-9q8g-f849 (#2812).

Benchmarks & Integrations

  • Add Pi as a first-class visible Goal host with project-scoped install/uninstall, quota-gated continuation, session-safe teardown, and no transcript or credential copying (#2775).
  • Add TraeX as a first-class host plus an optional scheduler-hint-aware shell worker and bounded headless Turn adapter; failed wakes remain observable and independent validation is required before material writeback (#2768, #2776).
  • Scope Claude MCP registration to the selected project rather than mutating broader host state (#2767).
  • This release makes no benchmark-score, leaderboard, or long-horizon outcome-uplift claim.

Documentation & Compatibility

  • Launch the public homepage and hosted documentation, promote them from README entry points, and govern the generated documentation index (#2770, #2789, #2792, #2796).
  • Localize the operator dashboard for Chinese readers and document reusable public/private boundary examples (#2793, #2808).
  • Align the architecture inventory and add dynamic star history, a Trendshift badge, and a tighter community QR layout (#2763, #2820, #2826, #2827).
  • v0.4.2 requires no persisted-state migration. Existing explicit agent identities remain valid; only new onboarding defaults to a fresh identity.

Community Contributors

  • External contributor @cocolord added adaptive child admission, TraeX host/worker integration, paused-goal precedence, and Finance contract-gate/replay extensions (#2774, #2768, #2776, #2755, #2642).
  • External contributor @xiaods added Pi as a first-class LoopX host (#2775).
  • External contributor @Ray0907 scoped Claude MCP registration to the target project and preserved sandbox/project selection on resume (#2767, #2810).
  • External contributor @superche kept Todo list JSON identities unique (#2765).
  • External contributor @maxliux5 launched the LoopX public homepage (#2770).
  • External contributor @hezihua aligned the public architecture inventory with shipped Turn contracts (#2763).
  • External contributor @steven-kid added the hosted documentation site (#2789).
  • External contributor @ACanvasHERE localized the LoopX dashboard for Chinese operators (#2793).
  • External contributor @CooperSheroy documented reusable public/private boundary examples (#2808).
  • External contributor @anupamme upgraded PostCSS for GHSA-r28c-9q8g-f849 (#2812).
  • External contributor @wchwawa authored the shared-goal authority and pluggable state-provider RFC plus its NoKV shadow reference (#2787).

Optional Capability Activation & Use

PR Program

Activation: The release installer delivers loopx-pr-program; invoke $loopx-pr-program only when one delivery goal spans multiple PRs/MRs. The workflow has no persistent enable switch.

Validation: Read back the installed skill with loopx doctor, then validate a first provider-neutral snapshot with the bundled delta helper.

Disable / rollback: Stop invoking the workflow and remove only the installed loopx-pr-program skill; rerun the release installer to restore it.

Authority boundary: The skill ships no GitHub/GitLab adapter and grants no read, comment, review, push, retarget, close, or merge authority. Raw snapshots and credentials remain host-local.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/guides/getting-started.md

loopx doctor
python skills/loopx-pr-program/scripts/diff_snapshot.py \
  --current current-snapshot.json \
  --output first-delta.json
rm -rf ~/.codex/skills/loopx-pr-program

Pull Request Review Queue

Activation: Opt in per command with --autonomous-observation; no persistent monitor or provider access is enabled automatically.

Validation: Save the complete first packet, then pass it back with --previous-observation-json and confirm the second packet reports observed_unchanged or a typed material transition.

Disable / rollback: Stop passing --autonomous-observation and discard the caller-owned previous packet or monitor Todo.

Authority boundary: Observation grants no Todo write, review, comment, push, merge, or quota-spend authority. Incomplete source scans cannot advance the trusted baseline.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/reference/protocols/pr-review-command-v0.md

loopx --format json pr-review --repo owner/repo --state open \
  --autonomous-observation > previous.json
loopx --format json pr-review --repo owner/repo --state open \
  --autonomous-observation \
  --previous-observation-json previous.json

Adaptive Child Orchestration

Activation: Explicitly enable bounded child admission for a goal, set capacity, and allow only the required task domains.

Validation: Run quota should-run with the host-observed subagent_spawn capability and inspect task_orchestration_contract_v2, admitted lanes, and typed blocked/deferred reasons.

Disable / rollback: Set --multi-subagent-feature off; registered-peer v1 behavior remains available.

Authority boundary: Admission is permission and capacity, not a spawn command. Workers report evidence only; the coordinator owns accepted writeback/spend, and user/repository/production gates remain in force.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/integrations/codex-subagent-orchestration.md

loopx configure-goal --goal-id <goal-id> \
  --multi-subagent-feature enabled --max-children 2 \
  --allowed-domain docs --allowed-domain validation --execute
loopx --format json quota should-run --goal-id <goal-id> \
  --agent-id <agent-id> --available-capability subagent_spawn
loopx configure-goal --goal-id <goal-id> \
  --multi-subagent-feature off --execute

Pi Agent Host

Activation: Install the project-scoped Pi Goal extension, then use /loopx <task> inside a trusted Pi project.

Validation: Confirm both managed extension files exist and run loopx doctor; Pi exposes visible extension status and compact LoopX state.

Disable / rollback: Uninstall the project-scoped Pi surface. The command removes only LoopX-managed Pi files.

Authority boundary: The adapter does not copy raw transcripts, credentials, or session paths. Quota and active LoopX state govern continuation; external writes still require owner authorization.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/loopx/pi_goal_mode/README.md

loopx slash-commands --install --surface pi --pi-project .
test -f .pi/extensions/loopx-goal.ts && loopx doctor
loopx slash-commands --uninstall --surface pi --pi-project .

TraeX Host and External Scheduler Worker

Activation: TraeX visible-host selection is available through normal onboarding. The reusable shell worker is observe-only by default; pass --wake-cmd only for an explicitly configured bounded headless Turn.

Validation: Run one observe-only tick and inspect its public-safe status and exit code; use the focused adapter/worker smokes before configuring a scheduler.

Disable / rollback: Remove the cron/launchd/service entry or stop the worker process and delete its caller-owned state file. Do not use --wake-cmd for observe-only operation.

Authority boundary: The worker cannot drive the visible TraeX TUI, read Todo text, spend quota, or self-validate. The adapter receives one bounded Turn envelope, and material writeback requires an independent validator.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/integrations/runtime-connector-catalog.md

python3 scripts/external_scheduler_worker.py \
  --goal-id <goal-id> --agent-id <agent-id> --once
python3 examples/external-scheduler-worker-smoke.py
python3 examples/traex-turn-host-adapter-smoke.py

Finance Value Discovery Extension

Activation: Install the co-located package into the same Python environment, then register its manifest explicitly with the extension runtime.

Validation: Run extension doctor and replay a frozen gate input through the managed entrypoint.

Disable / rollback: Disable the extension through the managed lifecycle; package removal is separate and does not mutate LoopX goals.

Authority boundary: The manifest declares zero permissions. The reducer performs no collection, advice, trade, account read, or continuous watch; it accepts only caller-supplied frozen public evidence.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/packages/loopx-finance-value-discovery/README.md

python3 -m pip install ./packages/loopx-finance-value-discovery
loopx extension install \
  --manifest packages/loopx-finance-value-discovery/extension.toml \
  --execute --format json
loopx extension doctor loopx-finance-value-discovery --execute --format json
loopx extension disable loopx-finance-value-discovery --execute --format json

NoKV Shadow Provider Probe

Activation: There is no runtime activation. Developers may run the deterministic contract probe directly from a v0.4.2 checkout.

Validation: The contract probe checks bootstrap eligibility, CAS replay, competing/independent claims, stale preconditions, bounded contention, ambiguity recovery, and version-domain separation.

Disable / rollback: Stop running the probe or remove the checkout. It writes no LoopX runtime configuration and does not promote a provider.

Authority boundary: This is a storage-contract reference, not a production NoKV integration, state migration, HA claim, live-stack result, or authority grant. It excludes credentials, raw evidence, host-local state, quota, run history, and delivery queues.

Docs: https://github.com/huangruiteng/loopx/blob/v0.4.2/examples/nokv-shadow-provider/README.md

python3 examples/nokv-shadow-provider/probes.py contract

Install / Update

New users should install from the named stable ref. Existing users should preview the update, then execute it explicitly:

loopx update --check --ref stable
loopx update --execute --ref stable
loopx doctor

中文摘要

状态内核与控制面

  • 新增按 domain、capability、repository、write scope、readiness 与 capacity 收紧的子 worker 准入;临时协调者只负责当前 task bundle,注册 peer 仍然平等(#2774)。
  • paused Goal、文件锁、Todo JSON identity 与 resume 上下文更稳健;新 onboarding 默认 fresh identity,但保留显式已有 identity(#2755#2779#2765#2810#2773#2803)。
  • heartbeat 与 registry CLI 继续遵守 agent-facing 输出预算(#2802#2799)。

能力与工作流

  • PR review 新增 provider-neutral 的完整队列观测、exact-head cursor 与 causal/execution-chain 指引,但不隐式授予 review/comment/push/merge 权限(#2777#2778#2771#2813)。
  • 新增 loopx-pr-program,统一多 PR/MR 清单、依赖优先级、roadmap 与 grouped monitor(#2814)。
  • Issue Fix 固定 approved base snapshot 并保护 discovered issue promotion;Finance 扩展加入 deterministic gate/replay、beta attribution 与 industry metric pack(#2804#2805#2642)。
  • 合入 shared-goal authority / pluggable state-provider RFC 与 NoKV shadow reference;它是合同证据,不是运行时迁移或生产 provider 声明(#2787)。

质量与测试

  • 修复 installer、bootstrap、paused-goal、dashboard locale 与 host skill 的发布 smoke 预期,包括 v0.4.2 准备阶段补齐 loopx-pr-program 交付合同(#2780#2797#2809)。
  • PostCSS 升级到 8.5.18,处理 GHSA-r28c-9q8g-f849#2812)。

基准与集成

  • Pi 成为 first-class 可见 Goal host;TraeX 加入 first-class host、可选 shell worker 与 bounded Turn adapter(#2775#2768#2776)。
  • Claude MCP 注册范围收紧到目标项目(#2767)。
  • 本版本不声明 benchmark 分数、排行榜或长程 outcome uplift。

文档与兼容性

  • 发布公开主页与托管文档、README 入口和受治理的文档索引(#2770#2789#2792#2796)。
  • Dashboard 完成中文本地化,并补充 public/private boundary 示例与架构清单(#2793#2808#2763)。
  • README 加入 star history、Trendshift badge 与更紧凑的社区二维码布局(#2820#2826#2827)。
  • v0.4.2 无需持久状态迁移;已有显式 agent identity 保持有效。

社区贡献者

  • 外部贡献者 @cocolord 实现 adaptive child admission、TraeX host/worker、paused-goal precedence 与 Finance contract-gate/replay 扩展(#2774#2768#2776#2755#2642)。
  • 外部贡献者 @xiaods 将 Pi 加入为 first-class LoopX host(#2775)。
  • 外部贡献者 @Ray0907 将 Claude MCP 注册限定到目标项目,并修复 resume 时 sandbox/project 丢失(#2767#2810)。
  • 外部贡献者 @superche 保证 Todo list JSON identity 唯一(#2765)。
  • 外部贡献者 @maxliux5 发布 LoopX 公开主页(#2770)。
  • 外部贡献者 @hezihua 让公开架构清单对齐已交付的 Turn 合同(#2763)。
  • 外部贡献者 @steven-kid 新增托管文档站点(#2789)。
  • 外部贡献者 @ACanvasHERE 完成面向中文 operator 的 Dashboard 本地化(#2793)。
  • 外部贡献者 @CooperSheroy 补充可复用的 public/private boundary 示例(#2808)。
  • 外部贡献者 @anupamme 升级 PostCSS 以处理 GHSA-r28c-9q8g-f849#2812)。
  • 外部贡献者 @wchwawa 编写 shared-goal authority / pluggable state-provider RFC 与 NoKV shadow reference(#2787)。

可选能力启用与使用

PR Program

**启用:**release installer 会交付 loopx-pr-program;只有一个 delivery goal 跨多个 PR/MR 时才调用 $loopx-pr-program,无持久开关。

**验证:**用 loopx doctor 读回已安装 skill,再用内置 delta helper 验证首个 provider-neutral snapshot。

**停用 / 回退:**停止调用该 workflow,只移除已安装的 loopx-pr-program skill;重新运行 release installer 可恢复。

**权限边界:**该 skill 不携带 GitHub/GitLab adapter,也不授予读取、评论、review、push、retarget、close 或 merge 权限;raw snapshot 与凭据留在 host 本地。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/guides/getting-started.md

loopx doctor
python skills/loopx-pr-program/scripts/diff_snapshot.py \
  --current current-snapshot.json \
  --output first-delta.json
rm -rf ~/.codex/skills/loopx-pr-program

Pull Request Review Queue

**启用:**每次命令通过 --autonomous-observation 显式启用;不会自动创建持久 monitor 或 provider 权限。

**验证:**保存完整首包,再通过 --previous-observation-json 回传,确认第二包为 observed_unchanged 或 typed material transition。

**停用 / 回退:**停止传入 --autonomous-observation,并删除调用方持有的 previous packet 或 monitor Todo。

**权限边界:**观测不授予 Todo write、review、comment、push、merge 或 quota spend;不完整 source scan 不能推进可信 baseline。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/reference/protocols/pr-review-command-v0.md

loopx --format json pr-review --repo owner/repo --state open \
  --autonomous-observation > previous.json
loopx --format json pr-review --repo owner/repo --state open \
  --autonomous-observation \
  --previous-observation-json previous.json

Adaptive Child Orchestration

**启用:**为目标显式打开 bounded child admission,设置容量,并只允许所需 task domain。

**验证:**在 quota should-run 中声明 host 实际观测到的 subagent_spawn,检查 task_orchestration_contract_v2、admitted lanes 与 typed blocked/deferred reason。

**停用 / 回退:**设置 --multi-subagent-feature off;registered-peer v1 路径保持可用。

**权限边界:**admission 只是权限与容量,不是 spawn 命令;worker 只返回 evidence,协调者负责 accepted writeback/spend,user/repository/production gate 继续生效。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/integrations/codex-subagent-orchestration.md

loopx configure-goal --goal-id <goal-id> \
  --multi-subagent-feature enabled --max-children 2 \
  --allowed-domain docs --allowed-domain validation --execute
loopx --format json quota should-run --goal-id <goal-id> \
  --agent-id <agent-id> --available-capability subagent_spawn
loopx configure-goal --goal-id <goal-id> \
  --multi-subagent-feature off --execute

Pi Agent Host

**启用:**安装 project-scoped Pi Goal extension,然后在受信任的 Pi project 内调用 /loopx <task>

**验证:**确认两个 managed extension 文件存在并运行 loopx doctor;Pi 会展示 extension status 与 compact LoopX state。

**停用 / 回退:**卸载 project-scoped Pi surface;命令只移除 LoopX-managed Pi 文件。

**权限边界:**adapter 不复制 raw transcript、凭据或 session path;continuation 由 quota 与 active LoopX state 治理,外部写仍需 owner 授权。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/loopx/pi_goal_mode/README.md

loopx slash-commands --install --surface pi --pi-project .
test -f .pi/extensions/loopx-goal.ts && loopx doctor
loopx slash-commands --uninstall --surface pi --pi-project .

TraeX Host and External Scheduler Worker

**启用:**TraeX 可通过普通 onboarding 选择为可见 host;通用 shell worker 默认只观测,只有显式配置 bounded headless Turn 时才传 --wake-cmd

**验证:**先运行一次 observe-only tick,检查 public-safe status 与退出码;配置 scheduler 前运行 adapter/worker focused smoke。

**停用 / 回退:**移除 cron/launchd/service entry,或停止 worker 并删除调用方持有的 state file;observe-only 场景不要传 --wake-cmd

**权限边界:**worker 不能驱动可见 TraeX TUI、读取 Todo text、spend quota 或自验证;adapter 只接收一个 bounded Turn envelope,material writeback 必须经过独立 validator。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/docs/integrations/runtime-connector-catalog.md

python3 scripts/external_scheduler_worker.py \
  --goal-id <goal-id> --agent-id <agent-id> --once
python3 examples/external-scheduler-worker-smoke.py
python3 examples/traex-turn-host-adapter-smoke.py

Finance Value Discovery Extension

**启用:**把 co-located package 安装到同一个 Python 环境,再通过 extension runtime 显式注册 manifest。

**验证:**运行 extension doctor,并通过 managed entrypoint replay 一个 frozen gate input。

**停用 / 回退:**通过 managed lifecycle disable extension;卸载 package 是独立动作,不修改 LoopX goal。

**权限边界:**manifest 声明零权限;reducer 不执行 collection、advice、trade、account read 或 continuous watch,只接受调用方提供的 frozen public evidence。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/packages/loopx-finance-value-discovery/README.md

python3 -m pip install ./packages/loopx-finance-value-discovery
loopx extension install \
  --manifest packages/loopx-finance-value-discovery/extension.toml \
  --execute --format json
loopx extension doctor loopx-finance-value-discovery --execute --format json
loopx extension disable loopx-finance-value-discovery --execute --format json

NoKV Shadow Provider Probe

**启用:**没有 runtime activation;开发者可直接在 v0.4.2 checkout 运行 deterministic contract probe。

验证:contract probe 覆盖 bootstrap eligibility、CAS replay、竞争/独立 claim、stale precondition、bounded contention、ambiguity recovery 与 version-domain separation。

**停用 / 回退:**停止运行 probe 或移除 checkout;它不会写 LoopX runtime 配置,也不会 promote provider。

**权限边界:**这是 storage-contract reference,不是 production NoKV integration、state migration、HA 声明、live-stack 结果或权限授予;它排除凭据、raw evidence、host-local state、quota、run history 与 delivery queue。

**文档:**https://github.com/huangruiteng/loopx/blob/v0.4.2/examples/nokv-shadow-provider/README.md

python3 examples/nokv-shadow-provider/probes.py contract

发布验证

  • Package version and public tag: 0.4.2 / v0.4.2.
  • Tag target: c94e188fa484fbf79a5e6190942162810861ad29.
  • Focused release, host, public-boundary, and Full Public validation passed locally on the exact release target.
  • GitHub-hosted checks were unavailable during the official GitHub Actions incident; no hosted-green claim is made.
  • No benchmark or long-horizon outcome uplift is claimed, so a matched stable-versus-candidate outcome baseline was not required.

Compare: v0.4.1...v0.4.2