Aller au contenu
login
arrow_backRetour aux issues
Tracer-Cloud/opensre #5502

Refresh the interactive_shell AGENTS.md package map

ecoDébutant good first issue docs

descriptionDescription

## Goal `surfaces/interactive_shell/AGENTS.md` is the first thing a contributor reads before touching the REPL, and its package map describes a tree that no longer exists. Three of the directories it assigns ownership to were deleted or moved, and four that exist are absent from the table. A new contributor following it goes looking for `references/` and finds nothing. ## What is wrong Rows pointing at paths that are gone: | Row in the table | Reality | | --- | --- | | `references/` — "CLI/docs/source/AGENTS reference loading and caching" | gone; the code is `interactive_shell/grounding/cli_reference.py` | | `config/` — "interactive-shell config loading and tool catalog metadata" | gone | Prose further down the file that names dead paths: | Line says | Reality | | --- | --- | | "Keep deterministic command detection in `orchestration/`" | no `orchestration/` under `interactive_shell/` | | "Shell execution changes belong under `shell/`" | shell execution is `tools/interactive_shell/shell/`, which the table already lists correctly | | "mirroring the package area when useful (`orchestration/`, `ui/`)" | same dead path, in the testing section | | a reference to `tools/shell/` | should be `tools/interactive_shell/shell/` | Directories that exist and own real behaviour but have no row: - `grounding/` — CLI reference loading (this is where `references/` went) - `session/` — terminal session, alert inbox, background investigations, trace store - `prompt_history/` — history storage and retention policy - `utils/` — telemetry (see the sibling issue that removes this wrapper; if that one lands first, the row is `telemetry/` instead) ## Target The table describes the tree on disk, and every path in the file resolves. Keep the existing three-column shape (Area / Owns / Keep out) — the "Keep out" column is the useful half and each new row needs one. Writing a "Keep out" for a package you did not build is the hard part. Take it from what the package does *not* import: `prompt_history/` touches no console, `grounding/` issues no network calls. If you cannot state one honestly, say so in the PR rather than inventing a rule. ## Acceptance - [ ] Every path in backticks in the file resolves from the repo root or from `surfaces/interactive_shell/`. Check with: ``` grep -o '`[a-z_][a-z_0-9/]*\(\.py\)\?/\?`' surfaces/interactive_shell/AGENTS.md \ | tr -d '`' | sort -u | while read -r p; do [ -e "$p" ] || [ -e "surfaces/interactive_shell/$p" ] || echo "BROKEN $p" done ``` prints nothing. (Bare names like `main.py` resolve under the package; rooted ones like `tools/interactive_shell/shell/` resolve from the root.) - [ ] `grounding/`, `session/`, `prompt_history/` and the telemetry package each have a table row with both columns filled - [ ] No row names a directory that does not exist - [ ] Prose sections carry no dead path either — `orchestration/` and a bare `shell/` appear nowhere in the file - [ ] No behaviour claim added that you did not verify by reading the package ## Out of scope Rewriting the cross-cutting rules, the action-selection policy, or the testing guidance. This is a map correction, not a rewrite — if a rule reads wrong to you, open a separate issue saying why. ## Claiming this issue Ask in [OpenSRE Discord](https://discord.com/invite/opensre) before you start so a maintainer can assign it. Ask OpenSRE maintainers and write a commit under this issue.
codeOuvre sur GitHub