docs(HYBIM-863): add AGENTS.md for AI-assisted development - #193
docs(HYBIM-863): add AGENTS.md for AI-assisted development#193shuningc wants to merge 3 commits into
Conversation
Add agent context adapted from galileo-python with Splunk AO-specific deployment modes, contribution paths, and deduplicated env var reference.
fercor-cisco
left a comment
There was a problem hiding this comment.
🤖 This review was generated by the Astra agent (claude-opus-4-8). It may contain mistakes.
Verdict: approve — Docs-only PR; claims verified against the codebase and are accurate, with two minor accuracy nuances.
Follow-ups
Suggested follow-up work that could be tracked as Jira tickets:
AGENTS.md:113-144: The package-structure diagram lists a curated subset of top-level modules. Several existing modules an agent may need (e.g. annotation_queues.py, agent_control.py, collaborator.py, evaluator.py/evaluators.py, integration.py, provider.py, model.py, runs.py, search.py, scorers.py, tracing.py, traces.py, export.py) are omitted. This is fine for an overview, but consider noting the list is illustrative rather than exhaustive so agents don't assume unlisted modules don't exist.
|
|
||
| **Infrastructure Exceptions** (caught only in telemetry operations): | ||
| ```python | ||
| INFRASTRUCTURE_EXCEPTIONS = ( |
There was a problem hiding this comment.
🟡 minor (documentation): Unlike every other row in this "HTTP-Specific Exceptions" table, HTTPValidationError (422) is not raised by the generated client — it is returned as a value. In resources/api/.../*.py the generated code does if response.status_code == 422: return HTTPValidationError.from_dict(...), whereas 400/401/403/404/409/429/5xx all raise. The SDK layer then decides what to do (e.g. Dataset.get_version_content turns it into a ValueError). Listing it here alongside genuinely-raised exceptions, under a diagram that says "Generated API Client (Always raises HTTP exceptions)", may lead an agent to write except HTTPValidationError: around a client call, which will never trigger. Consider a footnote clarifying that 422 is returned, not raised.
🤖 Generated by the Astra agent
| Tests run with `--disable-socket` to prevent real network calls. | ||
|
|
||
| ### Testing Guidelines | ||
|
|
There was a problem hiding this comment.
🔵 nit (documentation): The autouse set_validated_config fixture in tests/conftest.py actually sets SPLUNK_AO_LOG_STREAM (the deprecated alias) to test-log-stream, not SPLUNK_AO_AGENT_STREAM. Only the module-top import-time block sets SPLUNK_AO_AGENT_STREAM. Minor, but since this section documents the effective test environment, an agent reading it might expect SPLUNK_AO_AGENT_STREAM to be the live value under the fixture.
🤖 Generated by the Astra agent
Remove verbose sections (HTTP status codes, error-handling diagrams, env var tables) so the file stays focused on what agents need to contribute effectively. Co-authored-by: Cursor <cursoragent@cursor.com>
Blocking issue found —
|
Remove fictional CrewAI test kwargs, outdated Prompt.create_version note, and correct object-centric API paths and CrewAI testing guidance. Co-authored-by: Cursor <cursoragent@cursor.com>
Summary
AGENTS.mdadapted from upstreamrungalileo/galileo-pythonfor Splunk AO (package layout, handlers, testing conventions, error-handling model).