Skip to content

A2UI #354.1: research spike — read renderer contract on main, answer open questions #382

@roblevintennis

Description

@roblevintennis

STOP

Before we proceed with 354 we should examine these pull requests:

Prototype react renderer

google/A2UI#827

Someone has submitted a Vue renderer. The PR feedback implies that they'd like new renderers to match the existing ones (or at least the styles):

google/A2UI#442

renderer guide architecture

See google/A2UI#812

catalog implementation guide for v0.9

google/A2UI#823

IMPORTANT: Is A2UI Too Much of a moving target? Would they even want something that's not just a variation of their existing renderers? Thus is AgnosticUI really a fit?*

ENDS STOP


Sub-task of #354. Do this first before any renderer code is written.

Goal

Read the A2UI sibling repo on main and answer every open question listed in #354 so subsequent sub-tasks have a solid foundation.

Files to read (in order)

  1. /Users/roblevin/workspace/opensource/a2ui/renderers/web_core/src/ — full renderer interface
  2. /Users/roblevin/workspace/opensource/a2ui/renderers/lit/src/ — reference renderer
  3. /Users/roblevin/workspace/opensource/a2ui/samples/client/lit/shell/src/ — how a renderer registers with a surface
  4. /Users/roblevin/workspace/opensource/a2ui/CONTRIBUTING.md — CLA/DCO requirements

Questions to answer

  1. Exact TypeScript interface a renderer must implement (method signatures)
  2. How a renderer registers with the surface
  3. Whether @agnosticui/schema nodes (flat discriminated union on component field) are accepted by updateComponents without modification
  4. API stability: what changed between v0.9 tag and main (139 commits) that affects the renderer contract
  5. CLA/DCO requirements before submitting a PR
  6. Gemini API tier requirements for Restaurant Finder

Output

Post findings as a comment on #354 before proceeding to #354.2+.

Metadata

Metadata

Assignees

No one assigned

    Labels

    on-holdBlocked pending decision or external dependency

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions