0438ee61c6
* Revise Python hosting channels ADR Refocus the accepted-but-unreleased Python hosting channels ADR on protocol-specific Agent Framework conversion helpers and an optional execution-state host instead of a channel route-contribution framework. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Align hosting ADR with split state helpers Update the protocol-helper ADR to reflect AgentState and WorkflowState, plain SessionStore and CheckpointStore behavior, explicit post-run session storage, workflow checkpoint storage, and direct WorkflowBuilder/orchestration-builder support. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Generalize protocol helper taxonomy Add protocol-neutral helper families for run conversion, result rendering, streaming, session-id extraction, and command/action parsing. Classify protocol-specific helpers based on quick scans across Activity/Bot Framework, Discord, A2A, and MCP. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Simplify stream helper naming Use the single <protocol>_stream_from_run(...) helper naming convention in the hosting protocol-helper ADR. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Use state-level storage helpers in hosting ADR Update ADR examples so app code calls AgentState.set_session and WorkflowState.set_checkpoint_storage instead of reaching into underlying stores directly. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address hosting ADR review comments Clarify fail-closed Foundry isolation helpers, fix workflow checkpoint resume examples, describe durable checkpoint cursor storage, add caller-owned session authorization comments, and switch the Django sketch to an async view. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Simplify workflow checkpoint state in hosting ADR Keep WorkflowState focused on resolving workflow targets, use existing CheckpointStorage directly, describe app-owned checkpoint cursor storage, and mark appendix code as minimum-shape sketches rather than runtime-ready samples. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Rename stream helper convention Use <protocol>_from_streaming_run(...) as the protocol-helper naming convention for rendering streaming run output. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * added notes on state and continuity * updates based on review * added consulted * updates based on review * remove pyright for illustrative code * Add streaming to Responses ADR sketch Extend the FastAPI appendix sketch with the streaming branch and note that the Django sketch omits streaming to avoid duplicating the same state/finalization pattern. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * added note on extending the server * added note on responsible for --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Architectural Decision Records (ADRs)
An Architectural Decision (AD) is a justified software design choice that addresses a functional or non-functional requirement that is architecturally significant. An Architectural Decision Record (ADR) captures a single AD and its rationale.
For more information see
How are we using ADRs to track technical decisions?
- Copy docs/decisions/adr-template.md to docs/decisions/NNNN-title-with-dashes.md, where NNNN indicates the next number in sequence.
- Check for existing PR's to make sure you use the correct sequence number.
- There is also a short form template docs/decisions/adr-short-template.md
- Edit NNNN-title-with-dashes.md.
- Status must initially be
proposed - List of
decidersmust include the github ids of the people who will sign off on the decision. - The relevant EM and architect must be listed as deciders or informed of all decisions.
- You should list the names or github ids of all partners who were consulted as part of the decision.
- Keep the list of
decidersshort. You can also list people who wereconsultedorinformedabout the decision.
- Status must initially be
- For each option list the good, neutral and bad aspects of each considered alternative.
- Detailed investigations can be included in the
More Informationsection inline or as links to external documents.
- Detailed investigations can be included in the
- Share your PR with the deciders and other interested parties.
- Deciders must be listed as required reviewers.
- The status must be updated to
acceptedonce a decision is agreed and the date must also be updated. - Approval of the decision is captured using PR approval.
- Decisions can be changed later and superseded by a new ADR. In this case it is useful to record any negative outcomes in the original ADR.