Repository navigation
feat(zcode-herdr-status): add opt-in Linux lifecycle bridge - #129
Draft
binliu-udacity wants to merge 2 commits into
Draft
binliu-udacity wants to merge 2 commits into
binliu-udacity wants to merge 2 commits into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Plugin type (required) / 插件类型(必填)
Affected plugin:
zcode-herdr-status. Category:developer-tools.What
Adds an explicitly enabled Linux bridge from ZCode lifecycle Hooks to the current inherited Herdr pane. An operator can observe activity/permission waits without giving the bridge permission to approve tools, inject prompts, or control other sessions. This is a community plugin under
external_plugins/, version 0.2.1, with equivalent English/Chinese READMEs, Apache-2.0 license and matching marketplace registration.Related interface proposal: #128. Please keep this draft pending maintainer guidance on the experimental status interface and outstanding validation below.
Stopas proven completion. It reports completion unverified, and expires activity hints after 30 seconds without a new Hook. Consequently long legitimate generation/permission waits can also become unknown; this is documented, not hidden behind an optimistic green status.--experimental-db-statusis explicitly selected and pinned to ZCode 3.16.3 / CLI 0.17.0. It reads only exact-session/current-parent lifecycle projections from a same-user SQLite database. It does not read message text, reasoning, tool parameters/outputs or credentials. This private-schema dependency needs maintainers' approval or replacement with a stable lifecycle API.Validation
python3 -B -m unittest discover -s external_plugins/zcode-herdr-status/tests -v: 39 passed. Covers session/parent isolation, stale events, permission rejection/cancellation classifications, hook-hint expiry, process exit, plugin disable, observer stop, deadline, socket replacement, transport failure, unsupported versions, private state and unbound Hooks.python3 scripts/validate.py: 52 plugins validated.git diff --check: passed.build_dist.build_zipon this plugin: built twice with identical bytes; SHA256dbd8f895ab132d638e61eff746d4de2c055368a72c5c81293fee949dd6ccb5f7.pnpm install --frozen-lockfile: completed. This environment has Node 22.22.0, below the repository's Node >=24 requirement.pnpm build: blocked, at unrelatedphotocraftsource build:rustup is required to compile Craft Web snapshots.python3 scripts/build_dist.py: blocked by that existing UI plugin's incomplete build. No catalogue entries were removed and no upstream build checks were weakened to claim success.project_token_login_failedwas reproduced. Hooks-only activity correctly expired to unknown rather than staying working forever; explicit observer stop was acknowledged and left the native process alive. A separate untouched shell pane retained its identity.idle / failed(not successful completion), with acknowledged Herdr reason metadata.plugin-disabled, acknowledged source release, and left native ZCode alive. The test pane was then closed and the candidate uninstalled; previous plugin installations were retained.Side effects and provenance
Python standard library only. Writes private metadata/lock/receipt files; optionally opens the same user's metadata DB read-only; executes local ZCode/Herdr argv commands and a bounded observer. No observer network requests, telemetry, model calls, runtime downloads or service installation. Native ZCode retains its normal account/network/usage behavior. Logs may contain local paths/session IDs and must remain private. Source is derived from an internal observational prototype under Apache-2.0; no third-party runtimes or UI assets are bundled.
Self-check
external_plugins/validate.pyandbuild_dist.pypass (validator passes; whole distribution build blocked as above)