Skip to content

docs(a2a-demo): refresh narration + lineage for ADK 1.33 + AI.GENERATE rewrite#149

Merged
haiyuan-eng-google merged 2 commits into
GoogleCloudPlatform:mainfrom
caohy1988:feat/a2a-demo-doc-refresh-adk-1.33
May 12, 2026
Merged

docs(a2a-demo): refresh narration + lineage for ADK 1.33 + AI.GENERATE rewrite#149
haiyuan-eng-google merged 2 commits into
GoogleCloudPlatform:mainfrom
caohy1988:feat/a2a-demo-doc-refresh-adk-1.33

Conversation

@caohy1988
Copy link
Copy Markdown
Contributor

@caohy1988 caohy1988 commented May 12, 2026

Follow-up to #147. The two narrative docs (DEMO_NARRATION.md, DATA_LINEAGE.md) still described the pre-#147 data model — remote_agent_invocations in particular still showed the old FROM <CALLER>.agent_events WHERE event_type='A2A_INTERACTION' join that #147 replaced with the supervisor_a2a_invocations mapping read. This PR aligns both docs with the merged code.

DATA_LINEAGE.md (factual fixes)

  • Layer 1 note — add the ADK 1.33 caller-side telemetry shape paragraph: the A2A_INTERACTION row lives in a sibling caller session (agent='audience_risk_reviewer'), not under the supervisor; user_id/app_name shared, no FK link.
  • Layer 2 table — add the supervisor_a2a_invocations row with full schema, per-tool-call time-window pairing rule (supervisor_ts <= a2a_ts < next_supervisor_ts partitioned by user_id), and the G1.5 gate it backstops.
  • Layer 3 section — add the receiver-side dual-path writer paragraph: primary AI.GENERATE path now uses SQL-style output_schema => 'decisions ARRAY<STRUCT<...>>' with deterministic model_params (temperature=0.0, topP=0.1); fallback parser in build_org_graphs._repair_receiver_extraction_from_prompt_contract re-stores via store_decision_points, which deletes existing decision rows for the parsed session_ids and appends replacements via a BigQuery load job.
  • Layer 4 table — fix the remote_agent_invocations source-projection SQL to match build_joint_graph.py: reads from <CALLER>.supervisor_a2a_invocations and joins through caller_campaign_runs. The pre-fix(a2a-demo): adapt joint graph to ADK 1.33 RemoteA2aAgent sub-session telemetry #147 SQL was a real factual error.

DEMO_NARRATION.md (preserves the 5-min flow)

  • Beat 1 — single optional follow-up paragraph that names the ADK 1.33 split-session shape and the bridge table. Gated by a technical Q&A audience asking.
  • Beat 2 — single optional follow-up paragraph that names the AI.GENERATE typed output_schema rewrite and the fallback parser. Same gating.
  • New 'Presenter aside — robustness' section between Close and Questions: names both design choices (ADK 1.33 bridge + receiver fallback) as deliberate resilience to runtime/model shifts.
  • Questions To Invite — add 'How does this hold up when ADK or the model changes shape?' and refresh the closing answer.

The 5-minute spoken talk track itself is unchanged. All additions are presenter-aside material.

Verification

  • build_joint_graph.py:123-137 confirms the remote_agent_invocations CTAS reads from <CALLER>.supervisor_a2a_invocations and joins through caller_campaign_runs (matches the updated Layer 4 SQL in DATA_LINEAGE.md).
  • run_caller_agent.py:126 confirms the supervisor_a2a_invocations table is written by run_caller_agent.py (matches the new Layer 2 row).
  • build_org_graphs.py:249 confirms _repair_receiver_extraction_from_prompt_contract is the fallback writer (matches the new Layer 3 paragraph).
  • context_graph.py:2147-2224 confirms store_decision_points is delete-by-session plus load-job append, not table truncation.

Test plan

  • Layer 4 source-projection SQL re-checked against the actual code in build_joint_graph.py
  • Layer 2 row matches the CTAS template in run_caller_agent.py
  • Layer 3 fallback write contract re-checked against ContextGraphManager.store_decision_points
  • DEMO_NARRATION.md 5-min flow unchanged (no edits inside any existing beat's quoted talk-track)
  • git diff --check origin/main...HEAD
  • No code changes; docs-only PR

caohy1988 added 2 commits May 12, 2026 01:20
…E rewrite

PR GoogleCloudPlatform#147 landed the supervisor↔A2A-sub-session mapping table and the
receiver-extraction fallback parser, but the two narrative docs still
described the pre-GoogleCloudPlatform#147 state. This commit aligns them.

DATA_LINEAGE.md:
  * Layer 1 (agent_events): add the ADK 1.33 caller-side telemetry
    note. The A2A_INTERACTION row lives in a sibling caller session,
    not the supervisor's.
  * Layer 2 (Demo metadata): add the supervisor_a2a_invocations
    mapping table row with full schema, the per-tool-call time-window
    pairing rule, and the G1.5 gate it backstops.
  * Layer 3 (SDK extraction outputs): add the receiver-side dual-path
    writer section — primary AI.GENERATE path now uses SQL-style
    output_schema with deterministic model_params, and the demo
    fallback parser in build_org_graphs._repair_receiver_extraction_
    from_prompt_contract re-stores via store_decision_points
    (WRITE_TRUNCATE; cited as a sharp edge).
  * Layer 4 (Auditor projections): fix the remote_agent_invocations
    source projection SQL — it no longer reads from
    <CALLER>.agent_events. The SQL in the table now matches
    build_joint_graph.py byte-for-byte: reads from
    <CALLER>.supervisor_a2a_invocations and joins through
    caller_campaign_runs.

DEMO_NARRATION.md:
  * Beat 1: keep the 5-min flow; add a single optional follow-up
    paragraph for technical Q&A that names the ADK 1.33 split-session
    shape and the bridge table.
  * Beat 2: add a single follow-up paragraph for the AI.GENERATE
    typed output_schema + fallback parser story.
  * New "Presenter aside — robustness" section between Close and
    Questions: names both design choices (ADK 1.33 bridge + receiver
    fallback) as deliberate resilience to runtime/model shifts.
  * Questions To Invite: add a question about ADK/model shape changes
    and refresh the closing answer.

The 5-minute talk track itself is unchanged. The additions are
all presenter-aside / Q&A material, gated by the audience asking.
@caohy1988 caohy1988 force-pushed the feat/a2a-demo-doc-refresh-adk-1.33 branch from 56e3f49 to a33095b Compare May 12, 2026 08:21
@haiyuan-eng-google haiyuan-eng-google merged commit e3edb3d into GoogleCloudPlatform:main May 12, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants