docs: complete public documentation baseline
Module Package Release / publish-packages (push) Successful in 10s

This commit is contained in:
2026-08-22 07:55:18 +02:00
parent 97dfed5764
commit 4d44357745
4 changed files with 29 additions and 4 deletions
+1 -1
View File
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "govoplan-evaluation"
version = "0.1.18"
version = "0.1.19"
description = "GovOPlaN structured evaluation, feedback, scoring, and survey module seed."
readme = "README.md"
requires-python = ">=3.12"
+1 -1
View File
@@ -2,4 +2,4 @@
__all__ = ["__version__"]
__version__ = "0.1.18"
__version__ = "0.1.19"
+18 -2
View File
@@ -13,7 +13,7 @@ from govoplan_core.core.provider_governance import declared_module_architecture
MODULE_ID = "evaluation"
MODULE_NAME = "Evaluation"
MODULE_VERSION = "0.1.18"
MODULE_VERSION = "0.1.19"
READ_SCOPE = "evaluation:evaluation:read"
WRITE_SCOPE = "evaluation:evaluation:write"
ADMIN_SCOPE = "evaluation:evaluation:admin"
@@ -74,8 +74,24 @@ DOCUMENTATION = (
layer="available",
documentation_types=("admin", "user"),
audience=("user", "operator", "module_admin", "product_owner"),
translations={
"de": {
"title": "Modulgrenze von Evaluation",
"summary": "Strukturierte Fragebögen, Rückmeldungen, Bewertungsraster, Punktevergaben, Aggregationen und berichtsfertige Evaluationsergebnisse.",
"body": (
"Evaluation verwaltet strukturierte Rückmeldungen nach einem Verfahren, Befragungen, Punktevergaben, Bewertungsraster, wiederkehrende Evaluationsläufe, Aggregationen und exportfähige Ergebnisse. "
"Antwortsammlungen aus Poll können als Kontext übernommen werden; einfache Entscheidungs- und Verfügbarkeitsumfragen verbleiben jedoch bei Poll. Access ist optional: Ist es installiert, kann Evaluation Identitätsauflösung, Berechtigungsprüfung und Rollenvorlagen verwenden; ohne Access bleiben reduzierte lokale Antwortabläufe oder Abläufe über öffentliche Links möglich."
),
}
},
related_modules=("poll", "scheduling", "calendar", "campaigns", "forms", "forms_runtime", "reporting"),
metadata={"seed": True},
metadata={
"kind": "reference",
"seed": True,
"consequence_classes": {
"seed_boundary": "Declares ownership and optional integration boundaries; no runtime workflow is available yet.",
},
},
),
)
+9
View File
@@ -19,6 +19,15 @@ class EvaluationManifestTests(unittest.TestCase):
self.assertIn("poll", manifest.optional_dependencies)
self.assertIn("evaluation.result_aggregation", {interface.name for interface in manifest.provides_interfaces})
self.assertIn("poll.response_collection", {interface.name for interface in manifest.requires_interfaces})
topic = manifest.documentation[0]
self.assertEqual("reference", topic.metadata["kind"])
self.assertIn("seed_boundary", topic.metadata["consequence_classes"])
self.assertTrue(
all(
topic.translations.get("de", {}).get(field)
for field in ("title", "summary", "body")
)
)
if __name__ == "__main__":