-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAGENTS.html
More file actions
51 lines (51 loc) · 2.5 KB
/
Copy pathAGENTS.html
File metadata and controls
51 lines (51 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<h1 id="agents.md-doc-processor">AGENTS.md — Doc-Processor</h1>
<h2 id="inherited-from-the-helix-constitution">INHERITED FROM the Helix
Constitution</h2>
<p>This module is governed by the Helix Constitution. All rules in the
constitution’s <code>AGENTS.md</code> and the
<code>Constitution.md</code> it references apply unconditionally. Locate
the constitution from any nested depth via its
<code>find_constitution.sh</code> helper — do NOT hardcode a path (this
module stays fully decoupled and project-agnostic per §11.4.28).</p>
<p>Canonical reference:
https://github.com/HelixDevelopment/HelixConstitution</p>
<h2 id="module-identity">Module Identity</h2>
<p>DocProcessor (<code>digital.vasic.docprocessor</code>, Go 1.25) is a
standalone, project-not-aware, fully decoupled documentation-processing
module. It loads project docs, builds structured feature maps, and
tracks verification coverage for QA automation. Provider-specific and
project-specific behaviour is injected at runtime via the
<code>Translator</code>, <code>LLMAgent</code>, and <code>Config</code>
contracts — the module never imports a consuming project’s
namespace.</p>
<h2 id="responsibilities">Responsibilities</h2>
<ul>
<li>Load and parse documentation (<code>pkg/loader</code>: Markdown,
YAML, HTML, AsciiDoc, RST).</li>
<li>Extract features and build a queryable <code>FeatureMap</code>
(<code>pkg/feature</code>).</li>
<li>Track per-feature verification coverage thread-safely
(<code>pkg/coverage</code>).</li>
<li>Build a directed inter-document link graph with JSON/Mermaid export
(<code>pkg/docgraph</code>).</li>
<li>Define the <code>LLMAgent</code> extraction contract and prompt
templates (<code>pkg/llm</code>), with no hard dependency on any LLM
provider.</li>
<li>Externalise all user-facing strings (<code>pkg/i18n</code>) and load
configuration (<code>pkg/config</code>).</li>
<li>Expose a CLI:
<code>docprocessor [--verbose|-v] <docs-directory></code>.</li>
</ul>
<h2 id="testing-boundaries">Testing Boundaries</h2>
<ul>
<li>Build: <code>go build ./...</code>. Vet: <code>go vet ./...</code>
(zero warnings).</li>
<li>Tests: <code>go test ./... -race -count=1</code> covers unit,
integration, stress, security, E2E, and automation suites.</li>
<li>Integration/stress/security/E2E/automation tests run against real
filesystems and the real CLI binary, not mocks; unit tests may use
mocks.</li>
<li>Agents MUST NOT weaken, stub, or skip tests, and MUST NOT introduce
a dependency on any consuming project. Every change keeps build and vet
green.</li>
</ul>