Skip to content

Add LLM-oriented API reference#1

Open
01-1 wants to merge 1 commit into
hex-tic-tac-toe:mainfrom
01-1:main
Open

Add LLM-oriented API reference#1
01-1 wants to merge 1 commit into
hex-tic-tac-toe:mainfrom
01-1:main

Conversation

@01-1
Copy link
Copy Markdown

@01-1 01-1 commented Mar 28, 2026

No description provided.

Copy link
Copy Markdown
Collaborator

@laxadeR laxadeR left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall i'm not opposed to having an llm doc for the repo. There are a couple things i'd like to see addressed before i merge it. I fixed some issues as well, please rebase the pr if you need the LLM which generated it to look over the definitions again.

Comment thread LLM_DOC.md
- Normally this is sent once before move/eval requests.
- If `resettable_state` is true, setup may be sent again later.
- If `free_setup` is false, the board must contain exactly one cross at `(0, 0)` and no circles.
- The websocket board schema does not include `to_move`; turn context is inferred from requests.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to_move should be inferred from the first move_request or eval_request packet.

Comment thread LLM_DOC.md
### `evaluation_time_limit`

The bot supports and respects evaluation time limits. The base capability spec mentions this
flag, but the websocket packet schema in this repo does not define an evaluation time-limit field.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will update the spec in a bit, rebase the pr, remove this comment after.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the spec to correctly include evaluation_time_limit.

Comment thread LLM_DOC.md

The base capability spec says the client may send an interrupt packet if this is true.
However, no interrupt packet schema is defined in `definitions/basic_websocket/bws-v1-alpha.yaml`.
Treat this as an incomplete part of the spec unless a separate contract exists.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct, until someone needs this capability, there is no spec for interruption packets, so by definition this capability can not be ever supported as of right now

Comment thread LLM_DOC.md
An implementation or integration should account for these issues:

- No authentication scheme is defined.
- No standard error response format is defined.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Standard error response on basic_websocket api is to terminate the socket.

Comment thread LLM_DOC.md
- No standard error response format is defined.
- No explicit websocket error packet is defined.
- `interruptable` is advertised, but no interrupt packet schema is included.
- `evaluation_time_limit` is advertised, but no eval time-limit request field is defined.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As mentioned above, rebase, remove once the changes are pushed.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

Comment thread LLM_DOC.md
- `interruptable` is advertised, but no interrupt packet schema is included.
- `evaluation_time_limit` is advertised, but no eval time-limit request field is defined.
- The stateless move schema intends a two-piece move but does not enforce array length.
- Some descriptions in the websocket YAML contain small wording issues, but the intended behavior
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line is unnecessary and may cause confusion for LLMs using the doc.

Comment thread LLM_DOC.md
Comment on lines +60 to +74
"v1-alpha": {
"api_root": "bws/v1-alpha",
"move_time_limit": true,
"evaluation_time_limit": false,
"config": {
"dynamic": false
},
"free_setup": false,
"move_skips": false,
"dual_sided": false,
"free_move_order": false,
"evaluation": true,
"resettable_state": false,
"interruptable": false
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is better to leave out unsupported capability fields, rather than setting them to false.

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