-
Notifications
You must be signed in to change notification settings - Fork 693
Align apps with schema #42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
| params={ | ||
| "supportedSchemas": [ | ||
| "https://raw.githubusercontent.com/google/a2ui/refs/heads/main/schemas/v0.1/standard_catalog.json" | ||
| "https://raw.githubusercontent.com/google/A2UI/refs/heads/main/specification/json/server_to_client.json" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can we also update this in the a2a extension? spec.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OKay, done, but note that the links don't actually work (they get 404) until the repo is public. There's a token I could add to the URL now to make them work, but I figured it was better to have the final version.
| "properties": { | ||
| "key": { | ||
| "type": "string", | ||
| "description": "The key for this data entry." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this is an issue with the schema source of truth, but we should be clear on the key format, and how it handles lists of objects, e.g. how do you define an object like:
{
"books": [
{
"title": "Dune",
"author": "Frank Herbert"
},
{
"title": "1984",
"author": "George Orwell"
},
{
"title": "The Hobbit",
"author": "J.R.R. Tolkien"
}
]
}There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're right, there's no good way to define that right now. The closest you could get would be a list of titles:
{
"/book_titles": {
"valueList" : [{"valueString": "Dune"}, {"valueString":"1984"}, {"valueString": "The Hobbit"}]
}
}You could define individual paths, e.g. "/books/dune/title", "/books/dune/author", and use those as valus for a card, and then collect the cards in a list by id.
I agree we want to support your scenario, though.
|
This changes rather a lot in the web code, and not all of it correctly. I am happy to do a pass on that myself if we are happy that the spec is up-to-date. |
|
Also I don't want to switch to pnpm if possible. It's great and all, but it's not the de facto choice for web people. |
paullewis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please feel free to break the web stuff but land everything else and I'll go ahead and fix it.
|
@gspencergoog I've aligned the web with the checked-in spec here: #44 |
Sorry, I just needed something that I could test the restaurant finder changes against. The spec is up to date. I reverted all the web changes I made in this PR. When I tried your updated web code with this updated restaurant finder just now, I got this, so it probably needs one more look:
No worries, I just had trouble getting it to run with |
This aligns the restaurant finder server, the web restaurant app, and the schema in the spec so that they all match.
I had trouble getting things to run/build because there seemed to be missing config files, so I generated those and switched to pnpm for the web app. It all can be built and run now.