Repository navigation
Add opt-in Gather/Reason/Render orchestration harness - #1521
Merged
Paul Lizer (paullizer) merged 9 commits intoSep 23, 2026
Merged
Paul Lizer (paullizer) merged 9 commits into
Paul Lizer (paullizer) merged 9 commits into
Conversation
Implement M0/M1 typed named outputs, strict completeness and bindings, authorized private retained-result readers, and lifecycle-fenced commits. Preserve production v1 execution, saved Analyze, workflows, and exact_records_v1 JSON behavior. Document foundation-only scope at version 0.261.125. Refs microsoft#1509 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Refs microsoft#1509. Add explicit ten-format source profiles, headless Office services, strict complete-source handoff and fidelity/cleanup regressions without activating new orchestration behavior. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Preserve resumed native attempt guards, atomically bind committed results to exact producer/input receipts, and admit bounded external provenance with current access callbacks. Preserve v1 result bytes and checkpoint fingerprints; leave version ownership and runtime/export integration to the parent. Refs microsoft#1509 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Integrate durable typed results, dependency execution, model-free exports in ten formats, independent file recovery, native continuation, and V2 authoring. Keep both administrator switches default-off and preserve legacy orchestration and workflow behavior. Refs microsoft#1509. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Persist initial execution timing with the owning claim and recover the first checkpoint binding without weakening claim fences. Revalidate acquisition and export boundaries, preserve retained results and exact citations, and initialize durable deletion enrollment through the existing service. Include focused recovery/race coverage and documentation at version 0.261.129. Refs microsoft#1509. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Preserve the delayed recovery-guide clarification while distinguishing unconfirmed staged publication from earlier authority refusals. Publication-only recovery does not replay content generation. Documentation only; application version remains 0.261.129. Refs microsoft#1509. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Bind initialized result storage under the original approved claim, preserve typed control and read uncertainty without replay, and forward exact saved Render checkpoints and diagnostics. Retain the verified four-callback acquisition contract. Correct offline fixture import lifetimes and cover original-claim takeover and actual download/recovery paths. Version 0.261.130. Refs microsoft#1509. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…n harness Integrates the target branch through cc64974 (v0.261.128): model catalog profiles with per-step Auto routing, configurable chat content checks with admin rechecks, the admin settings/Key Vault fix, V2 admin version status, and the ACR Dockerfile fix. Conflict resolutions (13 files) keep both lines of work: plan revision and checkpoint fields carry model_binding alongside the v2 role/inputs/outputs contract without changing existing fingerprints, step events and executor records keep both blocks, run summaries hide files for removed or pending replies, and the V2 plan, stream and message-list code keeps model bindings plus managed outputs. Integration changes: - Auto model routing stays on the standard (contract v1) planner. v2 planning rejects Auto, and a v2 plan carrying Auto fails closed with model_routing_changed, because the dependency executor has no per-step model scope. - Harness replies pass chat output checks before publication. Blocked replies become the safety notice with no files or citations, check-before-display withholds output until checked, admin retractions are preserved, and private check metadata never reaches stream frames. - The publish_message retraction probe no longer masks typed authority uncertainty when the probe read fails after a failed batch. - Stale route extraction tests, streaming test frames, and the research planning evaluation script were updated for the merged contracts. Version 0.261.131. Refs microsoft#1509 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Integrates the target branch through 543de8a (v0.261.129, microsoft#1524): M365 agent stream failure persistence, mail and calendar history search, and the caller-owned stream Context for chat-root agent streaming. Only the version line and the delegation runtime test imports conflicted. The target's stream Context changes auto-merged beside the harness invocation-capture checks in agent_delegation_runtime. Harness agent steps use the non-streaming invoke_scoped_agent path, and await_agent_operation keeps its positional contract. Orchestration actions load plugin functions generically, so the new read-only M365 search functions need no harness classification. The docs inventory is unchanged. Version stays 0.261.131, above the target's 0.261.129; no published build carries 0.261.131 without these changes. Refs microsoft#1509 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Paul Lizer (paullizer)
marked this pull request as ready for review
September 23, 2026 18:10
Paul Lizer (paullizer)
merged commit Sep 23, 2026
ee7906f
into
microsoft:paullizer-react-v2-ui
2 checks passed
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.
Summary
paullizer-react-v2-uithrough543de8a7(v0.261.129). Harness replies now pass chat content checks, and Auto model routing stays on standard orchestration.Linked issue
Refs #1509. Includes all of draft #1510's foundation work:
18fc08acdirectly and9d978a9a, which is patch-identical to #1510'sb43164d9. Merging this PR delivers the foundation as well, so #1510 does not need to merge separately; it is left untouched as a draft.Target branch integration
The branch now contains the current target through
543de8a7daff0f12369d72a0fd482dd68acb2012via two non-force merge commits. The reviewed harness history is unchanged. GitHub reports the PR as mergeable (clean), andgit merge-treeagainst the target is conflict-free. The base branch has no protection rules, rulesets, or required checks;license/claandenforce-branch-flowpass.28b231dfcc649740(v0.261.128): model catalog profiles and per-step Auto routing, configurable chat content checks and admin rechecks, the admin settings/Key Vault fix, V2 admin version status, and the ACR build fixc79d22e8543de8a7(v0.261.129, #1524): M365 agent stream failure persistence, mail/calendar history search, and a caller-owned stream ContextIntegration decisions:
model_routing_changed. Per-step model scopes for dependency tasks are a follow-up.model_bindingbeside the v2 role/inputs/outputs fields without changing existing fingerprints.publish_messageretraction probe could raise not-found. That masked typed authority uncertainty and produced a durable failed publication. A failed probe now re-raises the original error; the scheduler uncertainty tests caught this.invoke_scoped_agentpath, and orchestration actions load the new read-only M365 functions generically.Recovery hardening
The earlier
403c4820follow-up atomically persists the original v2 start/deadline/lease and admits a guarded first checkpoint binding after an early interruption. It also preserves retained maps and exact citations, refreshes active export admission, and safely initializes default deletion enrollment.993a5730clarifies the authority-uncertainty documentation.Commit
e8104416f12695d334e5af8fa6d110b02db63dbfcompletes the reviewed 14-file, version 0.261.130 reconciliation:Native producer tokens, result-store claim protocol, checkpoint wire versions, legacy fingerprints, and standalone/workflow behavior remain unchanged. Historical started records without valid timing are refused rather than assigned a fresh budget.
Release Notes & Latest Features
Visible to users: Yes, only after explicit administrator opt-in. Both
enable_chat_orchestrationandenable_chat_orchestration_harnessmust be enabled; both default to false. Saved-contract dispatch remains independent of new-plan admission.Latest Feature card: Not added. Screenshot: N/A. Release notes and issue comments remain deliberately untouched under the delivery boundary.
Version bump
0.261.124, foundation.125, shared renderer.126, integration.127, first recovery hardening.129, reconciliation.130, target integration0.261.131. The target independently uses.128and.129.deployers/files were changed.Testing / validation
External storage/model/directory/provider I/O is doubled. Tests exercise real production modules, initialization, authorization, lifecycle fences, persistence, dependency execution, and downloads. No paid model calls, deployments, tenant permission changes, or cloud-throughput claims. Live-environment validation is performed by the maintainer and is not recorded here.
Target integration
test_client()with the installed Werkzeug, release-checker network probe)543de8a7, except one pre-existing stale-stub elicitation case and one target-only cold-import timeoutcc649740. The target's new chat stream banner test passes 11/11; the V2 content-check Node test passestsc -bclean; production build succeedsPre-integration branch validation (
e8104416)Selections overlap historical coverage; these are not additive unique-test totals. The nine-suite run retains the exact ordering that previously failed rather than relying on a larger collection order to hide it.
The real HTTP acceptance starts at
/planwithout a fabricated run or readiness override, ignores a browser-supplied legacy contract version, and creates no files before approval. It checks the configured budget before preparation and verifies unchanged timing afterward. One retained draft produces Markdown and PDF without replay on fresh observation. Other actual pipelines cover Analyze → CSV/Markdown, Compare → JSON/Markdown, native wait → CSV/JSON, and URL Gather → JSON.Known unchanged baseline limits:
NameError(enabled_required); normal web and separate scheduler entry points pass.check_chat_content,M365ApprovalRequired,resolve_action_type), credential-boundmsgraphsuites, Flasktest_client()with the installed Werkzeug, and content-screening browser assertions.test_orchestration_elicitation_context(stalefunctions_source_reviewstub) and the standalonetest_orchestration_conversation_contextrunner fail identically on the pre-merge head and the target.Documentation
Primary references:
docs/explanation/features/ORCHESTRATION_RENDERING_HARNESS.mddocs/explanation/features/ORCHESTRATION_CHECKPOINT_RECOVERY.mddocs/explanation/fixes/ORCHESTRATION_INITIAL_RESULT_BINDING_FIX.mddocs/explanation/fixes/ORCHESTRATION_RUNTIME_BOUNDARY_HARDENING_FIX.mddocs/explanation/fixes/ORCHESTRATION_HARNESS_CHAT_CHECKS_ROUTING_INTEGRATION_FIX.mdSecurity checklist
Ready for review. Auto-merge is off, and no deployment or issue closure is part of this PR.