Skip to content

Refactor documentation: clarify configuration, prompt system, and deterministic headers - #119

Merged
bernardladenthin merged 2 commits into
mainfrom
claude/zealous-dijkstra-qsn1mv
Jun 26, 2026
Merged

Refactor documentation: clarify configuration, prompt system, and deterministic headers#119
bernardladenthin merged 2 commits into
mainfrom
claude/zealous-dijkstra-qsn1mv

Conversation

@bernardladenthin

Copy link
Copy Markdown
Owner

Summary

  • Rewrote Configuration section with a complete, working example showing the three-block plugin setup: <aiDefinitions>, <promptDefinitions>, and <fieldGenerations> per goal. Replaced minimal/outdated POM snippet with full XML demonstrating model definition, prompt templates, and execution binding.
  • Clarified prompt system to emphasize that prompts are now defined in plugin configuration (not hardcoded), referenced by key, and mapped to models per goal via <fieldGenerations>.
  • Updated feature description from "Extract keyword metadata" to "Weave searchable type, API and domain names into every summary" to better reflect the actual design.
  • Refined deterministic indexing language throughout (README and CLAUDE.md) to clarify that the .ai.md skeleton (header) is deterministic, while only the AI-generated body varies.
  • Expanded AiMdDocument example in README to show the new structured format: blockquote lead, Purpose, Type, and Public API sections.
  • Reorganized Plugin Configuration section with clear parameter grouping: run-level vs. per-model parameters, and explicit note that <fieldGenerations> is required per goal.

Test plan

  • Affected unit / integration tests pass locally
  • CI is green on this branch
  • Docs updated (README.md and CLAUDE.md)

Related issues / PRs

N/A

Checklist

  • I have read CONTRIBUTING.md and CODE_OF_CONDUCT.md
  • My commits follow Conventional Commits
  • No security-sensitive changes

https://claude.ai/code/session_01RvxJko6xiCx83LxKgj92mH

claude added 2 commits June 26, 2026 06:42
…format

The .ai.md header carries only deterministic metadata (h,c,d,t,g,a,x) and
all AI content now lives in one markdown body — there is no s/k field and
no separate keyword extraction. Correct the stale docs to match the code:

- README example output: drop the non-existent `- K:` header line and the
  `#### <file>` body shape; show the real header field order (incl. `- A:`),
  the `---` separator, and the blockquote-lead + `####` sections produced by
  the `file-body` prompt (AiMdHeaderCodec.write / AiMdDocumentCodec.write).
- README prompt system: replace the file-summary/file-keywords/
  package-summary/package-keywords list with the real `file-body` /
  `package-body` keys and how they are wired via promptDefinitions /
  fieldGenerations.
- README: fix the keyword-extraction feature bullet and rename the
  `llamaMaxTokens` parameter to the real `llamaMaxOutputTokens`.
- CLAUDE.md: replace "(with s/k filled)", "summary/keywords fields" and
  "fields (s, k)" with single-body wording.

Docs-only; no production code touched.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RvxJko6xiCx83LxKgj92mH
…nerations setup

The old "Configuration" section showed a `<properties>` minimal setup with
`ai.index.model.path` — a property nothing in the code or POM reads — and hid
that `<fieldGenerations>` is mandatory (SourceFileIndexer/PackageIndexer throw
IllegalArgumentException when it is absent). Replace it with the actual, working
mechanism, verified against the ai-index-selftest profile in pom.xml:

- Explain the three building blocks: <aiDefinitions> (models by key),
  <promptDefinitions> (templates by key, two %s placeholders), and
  <fieldGenerations> (per goal: promptKey -> aiDefinitionKey, required).
- Provide a complete, runnable <plugin> example with both executions bound to
  generate-resources / process-resources (matching the self-test profile).
- Rework the "Plugin Configuration" parameter list: drop the misleading
  top-level llama* model parameters (a non-functional fallback — model params
  come from <aiDefinition>), add fileExtensions/force/skip/aiDefinitions/
  promptDefinitions/fieldGenerations with their real defaults.

Docs-only; no production code touched.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RvxJko6xiCx83LxKgj92mH
@bernardladenthin
bernardladenthin merged commit d7c9c5b into main Jun 26, 2026
8 of 10 checks passed
@bernardladenthin
bernardladenthin deleted the claude/zealous-dijkstra-qsn1mv branch June 26, 2026 07:00
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants