Add AI-ingestible framework brief#115
Conversation
There was a problem hiding this comment.
Pull request overview
Adds an AI-ingestible, single-file technical brief for ut-control intended to summarize the KVP parser, WebSocket/HTTP control plane, logging APIs, build/dependency setup, and integration points (ut-core / ut-raft), so AI tools can understand the library without traversing the full codebase.
Changes:
- Introduces
docs/ai-brief.mddocumenting public C APIs for KVP, control plane, and logging. - Documents build system behavior (
configure.sh,Makefile) and vendored dependency versions. - Describes repo directory layout and external integration model.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
…sage queue semantics, log colour stripping, OpenSSL/TLS build flags, test framework name, MAX_POST_DATA_SIZE limit, UT_KVP_STATUS_MAX, soften API-coverage claim
|
|
||
| ## 7. Integration with ut-raft (Python side) | ||
|
|
||
| ut-raft is the Python-based test orchestration framework. It communicates with |
There was a problem hiding this comment.
May be this can be reworded:
send yaml/json as raw binary payloads
| - `simple_websocket.py` -- minimal WebSocket client | ||
| - `curl-client-yaml.sh` -- sends YAML via HTTP POST | ||
| - `curl-client-json.sh` -- sends JSON via HTTP POST | ||
| - `curl-client-binary.sh` -- sends binary data via HTTP POST |
There was a problem hiding this comment.
May be this can be reworded:
send yaml/json as raw binary payloads via HTTP POST
kanjoe24
left a comment
There was a problem hiding this comment.
Comment added.
Rest looks fine.
| | **asprintf** | 0.0.3 | Portable `asprintf()` (compiled into libut_control) | | ||
| | **libwebsockets** | 4.3.3 | WebSocket/HTTP server (static `.a` linked in) | | ||
| | **curl** | 8.8.0 | HTTP client for `!include` URL resolution (static or system) | | ||
| | **OpenSSL** | 1.1.1w | Crypto dependency (static or system). Note: the default build disables TLS -- libwebsockets is built with `-DLWS_WITH_SSL=OFF` and curl with `-DCMAKE_USE_OPENSSL=OFF`, so `wss://`/HTTPS are not enabled. | |
| - `simple_websocket.py` -- minimal WebSocket client | ||
| - `curl-client-yaml.sh` -- sends YAML via HTTP POST | ||
| - `curl-client-json.sh` -- sends JSON via HTTP POST | ||
| - `curl-client-binary.sh` -- sends binary data via HTTP POST |
Summary
Closes #114
Test plan