feat(native): durable external-owner updates, CLI, admin command and opt-in automation #340
Open
karsten
wants to merge 7 commits from
feat/native-update-surface into main
pull from: feat/native-update-surface
merge into: harness:main
harness:main
harness:fix/cron-role-context
harness:fix/dispatch-control-contract
harness:fix/context-budgets-main-workers
harness:fix/compaction-handover-session-epoch
harness:fix/remove-self-update-test-gate
harness:fix/native-update-npm12-crypto
harness:fix/durable-self-lifecycle
harness:fix/worker-context-test-isolation
harness:fix/dispatcher-worker-token-bounds
harness:feat/native-api-tls
harness:fix/launcher-shutdown-exit
harness:fix/durable-update-maintenance
harness:feat/completion-validator-plugin
harness:fix/mandatory-compaction-recovery-696297dc
harness:fix/nested-workspace-file-export
harness:feat/channel-policy-files
harness:fix/slack-channel-capabilities
harness:fix/cron-release-plugin-pin
harness:fix/cron-dispatch-mandate
harness:fix/stale-worker-reactivation
harness:fix/stale-task-reactivation
harness:fix/technical-paused-recovery
harness:fix/skill-default-settings-boundary
harness:fix/durable-dispatcher-continuation
harness:fix/execution-context-isolation
harness:fix/parent-execution-decisions
harness:fix/dispatcher-concurrency
harness:fix/scheduled-origin-room-routing
harness:fix/main-wait-continuation-deadline
harness:fix/stale-continuation-foreground
harness:fix/benchmark-run-isolation
harness:fix/remove-tracked-node-modules
harness:feat/model-benchmark
harness:fix/validator-durable-continuation
harness:fix/mcp-auth-server-name
harness:feat/dispatcher-background-accounting
harness:feat/memory-consolidation-host
harness:test/memory-retention-contract
harness:feat/memory-usage-ranking
harness:fix/native-mcp-managed-tool-exposure
harness:feat/native-mcp-user-management
harness:fix/no-evaluator-review-obligation
harness:fix/operator-owned-review-policy
harness:local/matrix-media
harness:fix/default-review-execution-context
harness:feat/project-execution-context
harness:fix/typed-settings-optional-defaults
harness:feat/package-optional-webui
harness:local/validator-ui-integration-d4c9688
harness:fix/main-validator-authority
harness:feat/webui-onboarding
harness:test/all-dispatcher-fixtures-stop-before-remove
harness:test/dispatcher-fixture-stop-before-remove
harness:test/lifecycle-fixture-readiness
harness:fix/fresh-session-and-terminal-exit
harness:fix/os-session-locks-no-sqlite
harness:fix/single-main-activity
harness:feat/slack-inbound-attachments
harness:integration/activity-one-bubble-7edb348
harness:fix/publisher-scheduler-portable-temp
harness:fix/core-review-policy-forgejo
harness:fix/scheduler-timeout-portable-tmp
harness:fix/peter-ci-counterexample
harness:fix/peter-unscoped-task-isolation
harness:fix/dispatcher-activity-anchor
harness:fix/natural-budget-reset-matrix-id
harness:fix/quiet-run-lifecycle-chat
harness:fix/session-binding-conversation
harness:fix/skill-frontmatter-closing-fence
harness:fix/skill-search-trim-query
harness:fix/dispatcher-retain-builtin-strategies
harness:feat/http-planner-recovery
harness:feat/sequential-planned-dispatch
harness:fix/validation-precedence-context
harness:fix/exhausted-recovery-attention
harness:fix/stop-durability
harness:fix/session-reset-notice-work
harness:fix/technical-continue-recovery
harness:fix/activity-model-pending
harness:fix/contextless-tag-inheritance
harness:fix/night-start-catchup
harness:fix/independent-parent-admission
harness:fix/blocked-child-parent-reconciliation
harness:fix/host-result-original-anchor
harness:fix/custom-matrix-update-owner
harness:feat/dispatcher-visible-context
harness:fix/topic-label-intake-repair
harness:fix/codereview429
harness:fix/initial429-adapter
harness:fix/validator-agent-stall
harness:integration/classifier-actual-display-main
harness:integration/roles-on-actual-display
harness:feat/persistent-model-roles
harness:feat/actual-execution-display
harness:fix/supervisor-prompt-budget
harness:fix/mandatory-supervisor-admission
harness:feat/worker-board-model-tool
harness:docs/public-installation-correction
harness:snape/dispatch-diagnostic
harness:fix/topic-followup-context
harness:fix/tasks-command-startup
harness:feat/internal-worker-tasks
harness:fix/safe-host-guard-codes
harness:feat/automatic-topic-labels
harness:feat/semantic-independent-fanout
harness:fix/task-wide-hold-validation
harness:feat/hayate-naming-slice-1793571266
harness:rename/hayate-public-product
harness:fix/memory-write-contract-pin
harness:fix/home-lock-owner-incarnation
harness:feat/hashtag-context-selection
harness:fix/minato-result-status-authority
harness:feat/hashtag-status-labels
harness:feat/hashtag-output-labels
harness:feat/hashtags-reference-index
harness:feat/model-file-overlays
harness:commission/minato-room-tests
harness:feat/plugin-file-overlays
harness:feat/persona-settings-overlays
harness:feat/minato-native-matrix-e2ee
harness:docs/canonical-github-repositories
harness:feat/hayate-agent-naming
harness:fix/reconcile-uncertain-completion
harness:fix/context-ownership-and-checker
harness:fix/recovery-failed-only-warning
harness:fix/recovery-inconclusive-real-behavior
harness:fix/nongit-snapshot-fixture
harness:fix/taskscope-archive-safe-compat-test
harness:fix/cron-result-test-barrier
harness:fix/continuation-explicit-task-scope
harness:fix/productive-continuation-nongit
harness:fix/productive-continuation-budget
harness:fix/completion-nudge-retry-separation
harness:fix/integrated-ci-8061-contract-regressions
harness:fix/completion-reviewer-false-blocked
harness:feat/host-update-admission
harness:fix/runtime-overlay-tolerant
harness:feat/runtime-config-overlay-request
harness:fix/recovery-truthful-diagnostic
harness:fix/completion-integrated-receipt-replay
harness:fix/semantic-turn-continuation
harness:fix/image-gate-nested-process
harness:fix/targeted-runner-ci
harness:fix/small-pr-default-rule
harness:fix/skill-autoload-size
harness:investigate/completion-monitor-stop
harness:fix/image-fullsuite-pr165
harness:fix/targeted-test-policy
harness:feat/vertical-kiss-rule
harness:fix/chat-ack-recovery
harness:fix/repetition-budget-integrated
harness:feat/authenticated-natural-budget-reset
harness:feat/adaptive-skills-integrated
harness:fix/operator-reset-compatibility
harness:feat/operator-task-budget-reset
harness:fix/actionable-recovery-integrated
harness:fix/continuity-bounded-reconciliation
harness:fix/crash-safe-continuity
harness:fix/nudge-budget-stall-repair
harness:fix/wait-authority-denial-receipts
harness:fix/improvement-default-enabled
harness:fix/human-night-report
harness:proposal/nightly-20261028-atomic-usage
harness:fix/context-foreground-stall-0101
harness:fix/context-foreground-backoff-0100
harness:fix/context-maintenance-root-0199
harness:fix/context-maintenance-critical
harness:fix/result-authority-lifecycle
harness:fix/severus-reviewed-model-routing
harness:fix/severus-private-api-reviewed
harness:fix/review-notification-main-integration
harness:fix/wait-accounting-budget
harness:fix/dispatcher-model-rules
harness:fix/operator-foreground-integration
harness:fix/live-parent-result-authority-integration
harness:docs/cron-local-contract
harness:test/zero-gateway-acceptance
harness:feat/compaction-selection-lifecycle
harness:feat/context-strategy-lifecycle
harness:feat/nightly-strategy-lifecycle
harness:feat/completion-strategy-lifecycle
harness:test/maintenance-cli-lifecycle
harness:fix/maintenance-receipt-validation
harness:feat/maintenance-client
harness:fix/review-sampling-newbase
harness:feat/local-maintenance-control
harness:fix/maintenance-admission
harness:feat/session-observer
harness:docs/semantic-assessment-lifecycle
harness:test/semantic-correction-boundary
harness:fix/semantic-resumption-context
harness:fix/context-maintenance-recovery
harness:feat/memory-orchestration-live
harness:fix/reload-restart-alias
harness:fix/stop-stale-reply
harness:fix/session-open-cleanup
harness:fix/session-provider-lifecycle
harness:refactor/cron-report-plugin
harness:feat/cron-follow-through
harness:fix/durable-task-resumption
harness:fix/session-model-precedence
harness:feat/provider-lifecycle
harness:feat/tool-catalog-generations
harness:feat/runtime-extension-modules
harness:fix/plugin-lifecycle-drain
harness:refactor/nightly-strategy
harness:refactor/completion-strategy
harness:refactor/context-strategy-plugins
harness:feat/review-engine-selection
harness:refactor/review-engine-plugin
harness:feat/durable-task-waits
harness:fix/single-activity-status
harness:fix/night-report-receipts
harness:feat/runtime-policy-overlays
harness:feat/policy-generation-lifecycle
harness:refactor/default-memory-engine
harness:feat/replaceable-memory-orchestration
harness:refactor/matrix-gateway-ownership
harness:fix/gateway-default-route-lifecycle
harness:feat/worker-native-activity
harness:feat/matrix-native-activity
harness:feat/native-turn-activity
harness:feat/composable-policy-contract
harness:fix/context-maintenance-coexistence
harness:fix/recovery-claim-evidence
harness:fix/recheck-stalled-continuation
harness:fix/review-json-admin-extension
harness:fix/deliver-startup-recovery
harness:fix/validate-explicit-completion
harness:fix/main-result-followup
harness:fix/deliver-sanitized-diagnostics
harness:feat/automatic-build-version
harness:feat/bounded-upgrade-handover
harness:fix/registry-layer-size
harness:feat/gateway-progress
No reviewers
Labels
Clear labels
No items
No labels
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
harness/core!340
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/native-update-surface"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Operator scope
Native non-immutable-container Hayate updates: product CLI, authenticated admin request, opt-in automatic discovery, and a durable external OS-user owner. Not an external release-publisher fix. No merge or live activation is requested from this worker.
Product changes
hayate-agent update [check|status|update|automatic]and no-argument admin/update-restartpersist deterministic singleton requests before acknowledgement; no in-process self-restart or model-supplied shell/path.docs/native-update.md,native/README.md, anddocs/native-update-handoff.mdcover actual commands/config, refusal behavior, default unit paths and explicit parent deployment gates.Evidence (isolated clone, not deployment)
--dry-runreturned ten-file plan withactivation: false; target remained absent.Required review / deploy handoff
Review admission races and recovery, protected path/receipt handling, extraction/ELF closure, unit/identity fencing, acknowledgement-before-exit and nonstandard variant compatibility. Home/config/crypto/credentials/productive queues/pending approvals/native MCP/local TUI are not migration inputs and must pass target acceptance. Fixture tests are not published OCI, real systemd or local-variant acceptance.
Parent retains merge and external-owner installation/activation after normal CI and scoped independent review. Initial adoption/rollback qualification and the actual unit binding are a separate supervised OS-owner transaction. Automatic discovery stays disabled until that acceptance. No agent process was signaled, restarted or updated; no live units/timers were installed or enabled. Dirty operator workspace and paused historical worker ledgers were not touched.
Exact-head CI verified
At
e11756e0c4c09200045e922fa4d6f47669fda54d, both checks are green:Merge, independent parent review, deployment acceptance and external-owner activation remain outstanding. No running agent was updated or restarted.
View command line instructions
Manual merge helper
Use this merge commit message when completing the merge manually.
Checkout
From your project repository, check out a new branch and test the changes.