research(docs): reinforce documentation, enforce its maintenance under agentic development, and shape a knowledge base for agents #208
Labels
No labels
blocked
bug
enhancement
high-priority
low-priority
needs-info
needs-triage
ready-for-agent
ready-for-human
referenced
research
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gabogg/hikcentral#208
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Research how to keep this repo's documentation accurate as the code changes, especially under agentic development, and how to shape it into a knowledge base that development agents and a future in-product AI integration can consult.
Three threads:
Evidence from recent work (2026-10-02 reviews)
Drift that review passes caught by hand, all from agent-written changes:
What exists today
CONTEXT.md(glossary),docs/adr/,docs/agents/*andAGENTS.md, plus vendored skills under.claude/skills/.scripts/check_docs.pyin CI and pre-commit, which checks local links and HTTP routes.scripts/wt review.Questions to research
AGENTS.md, skills, hooks and per-directory notes. How do we stop agents committing process noise into docs?Outcome
docs/research/or wherever the repo convention settles. It should give a recommendation per thread and say what fits this repo's size.Not tied to a milestone.
🤖 Generated with Claude Code
Triage decision:
needs-triage→ready-for-agentWhy it is ready. The goal has three clear threads. The evidence is concrete: drift found by hand in PRs #167, #168, #169, #177 and #178. The current tooling is listed, and the outcome is defined as a findings document plus follow-up issues, with no code change. An agent can do all of it unattended from the repo, the PR history and primary sources. Deciding which mechanisms to adopt stays with the maintainer, through the follow-up issues.
What was settled in triage:
docs/research/or wherever the repo convention settles", and no convention existed. It is nowdocs/research/<issue number>-<slug>.md, shared with #217, #199 and #235.Agent Brief
Category: enhancement, with
research(needs investigation before it can be specified further)Summary: Find out how to keep this repo's documentation accurate under agentic development, and how to shape it into a knowledge base for agents. Deliver a findings document with a recommendation per thread, and follow-up issues.
Current behavior:
CONTEXT.md(glossary with Avoid terms), ADRs indocs/adr/, agent docs indocs/agents/,AGENTS.md, and vendored skills under.claude/skills/.scripts/check_docs.py, which runs in CI and pre-commit and checks local links and HTTP routes.scripts/wt review, with no explicit documentation axis.Desired behavior:
A findings document at
docs/research/208-documentation-and-agent-knowledge.md, organised by the three threads (reinforcing, enforcing on the go, knowledge base), with a recommendation per thread sized for this repo.A drift catalogue. For each drift case in the issue's evidence list, read the PR, classify the drift, and say which proposed mechanism would have caught it, if any: a script, a review checklist item, agent guidance, or a generated doc. Mechanisms that catch nothing from the real evidence should be ranked down.
For each proposed mechanical check, the issue lists these candidates:
For each: estimate its signal on current master with a throwaway script run from the scratchpad (not committed), and report hits, true positives, false positives and the expected maintenance cost.
Agent guidance: recommend where instructions should live and how big they should be: AGENTS.md vs
docs/agents/*vs skills vs hooks vs per-directory notes. Explain how to stop agents committing process noise (review rounds, scratch notes) into durable docs.Single sources: list which facts should be generated from code rather than hand-written: API catalog, config keys, enum and label lists, glossary term usage. Say how each would be generated and checked.
Knowledge base: compare plain Markdown, an index or search layer, and a queryable server (e.g. MCP). Cover what to include, what must never be exposed (production data, credentials, personal data of cardholders or staff), and how freshness is guaranteed. Then say whether development agents and a future in-product assistant need the same base.
Prior art from primary sources (tool docs, the projects' own docs), cited inline: docs-as-code practice, docs linters (e.g. Vale, markdownlint, lychee), and how agent-heavy repos keep docs honest.
Follow-up issues for each recommended mechanism, labelled
needs-triage(adoption is the maintainer's choice), each linked from the doc.Key interfaces / places to look (by concept):
scripts/wt review: where a documentation axis or checklist would go.CONTEXT.mdAvoid entries: the input for an Avoid-term linter.tea pr <N> --comments,scripts/wt review list/show <N>): the evidence.Acceptance criteria:
docs/research/208-documentation-and-agent-knowledge.mdexists, with one section per thread and a recommendation for each.docs/research/doesn't exist yet when this lands: adddocs/research/README.md(a one-line index per document) and a link to it fromdocs/README.md. If #217's or another research PR got there first, rebase and add a line to its index.scripts/check_docs.pypasses, and the change goes through a PR (scripts/wt new docs/<slug>), never straight to master.Out of scope:
AGENTS.md,CONTEXT.md, ADRs or skills, beyond the index link todocs/research/.