feat: expose durable material-progress state - #2689
Closed
timigod wants to merge 12 commits into
Closed
Conversation
the repo-pinned Node 22 runtime is not already available.
11 tasks
Author
|
Superseded by #2721, which contains only the material-progress protocol, persistence, inspection, docs, and tests. The provider-history hydration, quarantine, and lifecycle work bundled into this draft has been removed into separate independently reviewable units. #2721 preserves an exact-v0.2.5 candidate in ancestry and then integrates current main normally. |
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.
Linked discussion
Discussion #2690: Workflow: distinguish material agent progress from transport activity
The initial feature-shaped issue #2688 was automatically closed under Paseo's issue-intake policy and redirected to Discussions. This draft now follows that product workflow.
Type of change
What does this PR do
This draft exposes a provider-agnostic, read-only
materialProgresssnapshot through the existing agent protocol and inspect path. It lets an orchestrator distinguish useful output from running/retry/compaction activity without parsing provider-specific logs.The snapshot reports:
none,progressing,warning, orstalled;The classifier reads a bounded timeline back to the current real-user continuation boundary. Reads, writes, completed tests, decisions, and requested deliverables can count as progress; provider status, retries, commentary, and compaction alone do not.
The branch also makes provider-history trust explicit:
The feature is observational only. It does not automatically stop, retry, archive, route, or gate an agent. It contains no Plexer policy, fleet topology, host naming, or machine-local configuration.
This draft is intentionally opened for design and review-shape feedback. I can split protocol/classifier work from the history-lifecycle correctness work if that is easier to review upstream.
How did you verify it
The exact branch tip is
465efcf9d4704ffa515850caedda3b7fa9e5e608, rooted directly at latest stablev0.2.5(6fc491e6220fba6543bbbe4bf1b1f58cfe59228b).mainatb6f1274f47ba15eb81010e3ae01291ef5532eeec.The lifecycle regressions include failed/partial hydration, live-event interleaving before and during hydration, forced replacement, overlapping normal/forced calls, concurrent close, durable mutation ordering, restart trust, and provider-subagent ordering.
No UI or desktop bundle is changed. This stable-derived branch has not been installed or activated on either live daemon.
Checklist
npm run typecheckpassesnpm run lintpassesnpm run formatran (Biome)This contribution was developed with AI assistance; the commands and results above are from actual runs against the exact submitted branch.