docs: add module documentation in AsciiDoc with PlantUML diagrams

Generated by per-group subagents covering all 52 modules across:
core (18), infrastructure (10), apps (5), interfaces (3),
plugins (7), testing (9)

Documentation format:
- AsciiDoc (.adoc) files in docs/modules/<group>/
- PlantUML (.puml) files in docs/diagrams/
- .adoc files reference diagrams via include:: directives

Each doc covers: purpose, responsibilities, non-responsibilities,
key types, event flow, integration points, invariants, PlantUML
diagram, known issues, and open questions.
This commit is contained in:
2026-05-26 16:59:21 +04:00
parent eadf23c945
commit 9734eec63c
103 changed files with 6045 additions and 0 deletions
@@ -0,0 +1,48 @@
= plugin-compressors
== purpose
No source files present. This directory is reserved for external compression plugins that implement custom context compression strategies beyond the built-in compressor. Currently a structural placeholder.
== responsibilities
* Declares the module structure for future compressor plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-compressors, "png"]
----
include::../../diagrams/plugin-compressors.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will compressor plugins implement the `ContextCompressor` interface from `:core:context`?
* What compression strategies (semantic chunking, summary, retrieval-based) are planned for plugins?
+49
View File
@@ -0,0 +1,49 @@
= plugin-policies
== purpose
No source files present. This directory is reserved for external policy plugins that define custom approval policies, gating rules, and compliance checks beyond the built-in approval engine. Currently a structural placeholder.
== responsibilities
* Declares the module structure for future policy plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-policies, "png"]
----
include::../../diagrams/plugin-policies.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will policy plugins integrate with the `ApprovalEngine` interface from `:core:approvals`?
* What policy types (role-based, time-based, compliance) are planned?
* Will policies be evaluated before or after the approval engine's built-in checks?
@@ -0,0 +1,49 @@
= plugin-providers
== purpose
No source files present. This directory is reserved for external inference provider plugins that connect Correx to LLM backends beyond the built-in llama.cpp adapter. Currently a structural placeholder.
== responsibilities
* Declares the module structure for future inference provider plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-providers, "png"]
----
include::../../diagrams/plugin-providers.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will provider plugins implement the `InferenceProvider` interface from `:core:inference`?
* How will provider plugins register themselves with the `DefaultProviderRegistry`?
* Will there be a provider marketplace or discovery mechanism?
+48
View File
@@ -0,0 +1,48 @@
= plugin-stages
== purpose
No source files present. This directory is reserved for external stage-type plugins that define custom stage execution behaviors beyond the built-in stage model. Currently a structural placeholder.
== responsibilities
* Declares the module structure for future stage plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-stages, "png"]
----
include::../../diagrams/plugin-stages.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will stage plugins define custom execution strategies (parallel, branching, looping)?
* How will stage plugins integrate with the `OrchestratorEngines` wiring?
+48
View File
@@ -0,0 +1,48 @@
= plugin-tools
== purpose
No source files present. This directory is reserved for external tool plugins that extend the Correx tool system beyond the built-in infrastructure tools (shell, file write, file edit). Currently a structural placeholder.
== responsibilities
* Declares the module structure for future tool plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-tools, "png"]
----
include::../../diagrams/plugin-tools.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will tool plugins conform to a SPI interface, or be loaded via service loader configuration?
* What isolation mechanism (subprocess, container, WASM) will external tool plugins use?
@@ -0,0 +1,48 @@
= plugin-transitions
== purpose
No source files present. This directory is reserved for external transition evaluation plugins that implement custom transition conditions beyond the built-in evaluator. Currently a structural placeholder.
== responsibilities
* Declares the module structure for future transition plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-transitions, "png"]
----
include::../../diagrams/plugin-transitions.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will transition plugins implement the `TransitionConditionEvaluator` functional interface?
* What condition types (time-based, output-based, external signals) are planned?
@@ -0,0 +1,48 @@
= plugin-validators
== purpose
No source files present. This directory is reserved for external validation plugins that implement custom validation logic beyond the built-in validators (e.g., artifact payload validation). Currently a structural placeholder.
== responsibilities
* Declares the module structure for future validator plugin definitions
== non-responsibilities
* This module has no source code, types, or runtime behavior
== key types
*No types defined.*
== event flow
None. Module has no source files.
== integration points
* No current dependencies or dependents
== invariants
* Not applicable — module is empty
== PlantUML diagram
[plantuml, plugin-validators, "png"]
----
include::../../diagrams/plugin-validators.puml[]
----
== known issues
* This module contains no implementation — it is an empty placeholder
== open questions
* Will validator plugins conform to the `Validator` functional interface from `:core:validation`?
* Should validators be loaded at startup or discovered dynamically?