# Konnaxion Technical Architecture & Services

> Canonical HTML: https://initkoa.org/platforms/konnaxion/technical/konnaxion-technical-architecture-and-services
> Markdown mirror: https://initkoa.org/platforms/konnaxion/technical/konnaxion-technical-architecture-and-services/index.html.md
> Route: /platforms/konnaxion/technical/konnaxion-technical-architecture-and-services
> Source: app/platforms/konnaxion/technical/konnaxion-technical-architecture-and-services/page.mdx
> Generated: 2026-04-09T23:01:26.288Z

[Open the HTML page](https://initkoa.org/platforms/konnaxion/technical/konnaxion-technical-architecture-and-services)

# Konnaxion Technical Architecture & Services

This page collects the **technical details** of Konnaxion: service codenames, core models, configuration parameters, routing invariants, and crossmodule infrastructure. It complements:

* the repository **README**, which focuses on vision, mythology, and highlevel modules
* the wiki **hub page**, which explains civic workflows and navigation
* the individual module pages (Knowledge, CertifiKation, Korum, etc.), which describe each submodule functionally

Use this page as the reference for development and integration work.

## 1. Platform overview

### 1.1 kOA module map

Konnaxion"s architecture is organized into six toplevel modules:

* **KonnectED** learning, knowledge, and certification
* **Ethikos** structured debates and civic consultations
* **Kreative** culture, preservation, and professional networks
* **keenKonnect** project workspaces and storage
* **Kollective Intelligence** reputation and voting (EkoH, Smart Vote)
* **System / Core** crosscutting auth, storage, search, analytics

Each kOA module is implemented as one or more Django apps with:

* **service codenames** (e.g. `multidimensional_scoring`, `public_consultation`) mapping 1to1 to service modules
* **OLTP models** described in the v14 schema reference
* **frozen configuration parameters** (thresholds, limits, routes)

### 1.2 Shared technology stack

Across modules, the technical stack is consistent:

* **Backend**: Django + Django REST Framework
* **Realtime**: Django Channels with Redis (`channels_redis.core.RedisChannelLayer`)
* **Data store**: PostgreSQL with tsvector fulltext search
* **Background tasks**: Celery (ETL, AI enrichment, packaging, recomputation)
* **Object storage**: `/app/media/` root, typically backed by S3/MinIO
* **Frontend**: routes reserved per module (`/learn`, `/certs`, `/ethikos/korum`, etc.)

## 2. Crossmodule infrastructure

### 2.1 Service codename convention

Every submodule defines **named services** that are stable integration points. Examples:

* Korum: `structured_debate`, `ai_clone_management`, `comparative_argument_analysis`, `public_debate_archive`, `automated_debate_summary`
* Smart Vote: `dynamic_weighted_vote`, `voting_modalities`, `emerging_expert_detection`, `vote_transparency`, `vote_result_visualization`, `cross_module_vote_integration`
* EkoH: `multidimensional_scoring`, `configuration_weights`, `contextual_analysis`, `privacy_settings`, `score_history`, `score_visualization`, `expertise_field_classification`
* Knowledge: `library_resource_management`, `personalized_recommendation`, `content_co_creation`, `thematic_forum`, `learning_progress_tracking`

Codenames map 1to1 to service modules (e.g. `services/dynamic_weighted_vote.py`), and are referenced by tasks, API endpoints, and configuration.

### 2.2 Routing invariants

Toplevel routes are **owned** by specific modules and treated as invariants. Namespacing is enforced for consistency:

* `/certs` KonnectED / CertifiKation
* `/ethikos/korum`, `/ethikos/insights` Ethikos / Korum
* `/ethikos/consult` Ethikos / Konsultations
* `/projects`, `/projects/[slug]` keenKonnect / Konstruct + Stockage
* `/kollective/konsensus`, `/reports/smart-vote` Kollective Intelligence / Smart Vote

No other module should claim these toplevel paths.

### 2.3 Storage and media

* **Media root**: `MEDIA_ROOT=/app/media/` is shared across modules.
* **File size & types** are fixed per context:

Storage is typically an object store (S3/MinIO) behind the media path.

### 2.4 Search

* Knowledge and Stockage explicitly use PostgreSQL fulltext search (`SEARCH_BACKEND = "postgres"`) for library resources and documents.
* Tags (`Tag`, `ArtworkTag`) provide a shared taxonomy layer across Kreative and keenKonnect.

### 2.5 Realtime and background jobs

* **Django Channels + Redis** power:

* live stance and result updates in Korum and Konsultations
* realtime tallies in Smart Vote
* project chat, notifications, and document events in Konstruct and Stockage
* collaboration rooms in Kontact

* **Celery tasks & schedules** include:

* `etl_smart_vote` every 10 minutes, with ~5year retention for facts
* periodic EkoH score recomputation and leaderboard refresh
* weekly offline packaging for Knowledge (`OFFLINE_PACKAGE_CRON = 0 3 * * SUN`)
* image rendition, AI enrichment, and partner ingest for Konservation

## 3. Modulebymodule technical summary

### 3.1 KonnectED

#### 3.1.1 Knowledge Collaborative Learning Library

**Services**
* `library_resource_management` CRUD and classify `KnowledgeResource`; enforce type enum.
* `personalized_recommendation` compute `KnowledgeRecommendation` per user.
* `content_co_creation` manage `CoCreationProject` and `CoCreationContribution` drafts.
* `thematic_forum` forums via `ForumTopic` and `ForumPost`.
* `learning_progress_tracking` track `LearningProgress` (per user + resource).

**Core models**

* `KnowledgeResource(id, title, type, url, author)`
* `KnowledgeRecommendation(user, resource, recommended_at)`
* `LearningProgress(user, resource, progress_percent)`
* `CoCreationProject`, `CoCreationContribution`

**Key configuration**

* Content types: `article | video | lesson | quiz | dataset`
* `MAX_CONTRIBUTION_DRAFTS = 10` per user
* Search backend: `SEARCH_BACKEND = "postgres"`
* Offline packaging: `OFFLINE_PACKAGE_CRON = 0 3 * * SUN`

**Routes**

* `/learn` catalog, recommendations, offline download
* `/course/[slug]` course player (lessons, progression)

#### 3.1.2 CertifiKation Skills & Certification

**Services**
* `certification_path_management` manage `CertificationPath`.
* `peer_validation` handle `PeerValidation` decisions.
* `skills_portfolio` connect to `Portfolio` and core `Certificate` records.
* `certification_interoperability` manage `InteropMapping` with external LMS/registries.

**Core models**

* `CertificationPath(id, name, description)`
* `PeerValidation(evaluation, peer, decision)`
* `Portfolio(user, title, description, items)`
* `InteropMapping(local_certification, external_system, external_id)`
* `Certificate` (core model for issued credentials)

**Key configuration**

* `QUIZ_RETRY_COOLDOWN_MIN = 30` minutes
* Routes reserved: `/certs` (Programs, My Certificates)

### 3.2 Ethikos

#### 3.2.1 Korum Structured Debates

**Services**
* `structured_debate`, `ai_clone_management`, `comparative_argument_analysis`, `public_debate_archive`, `automated_debate_summary`.

**Core models**

* `EthikosCategory` thematic categories
* `EthikosTopic` debate topic/question
* `EthikosStance(topic, user, value 3⬦+3)`
* `EthikosArgument(topic, author, content, parent, side)`

**Key configuration**

* Expert cohort quorum: 12 distinct experts (EkoH threshold)
* Moderation autohide: 3 independent reports

**Routes**

* `/ethikos/korum` Korum Hub (Open / Archived / Start New)
* `/ethikos/insights` opinion analytics dashboards

#### 3.2.2 Konsultations Public Consultations & Feedback

**Services**
* `public_consultation`, `citizen_suggestion`, `weighted_consultation_vote`, `consultation_result_visualization`, `impact_tracking`.

**Core models**

* `Consultation(id, title, open_date, close_date, status)`
* `CitizenSuggestion(consultation, author, content)`
* `ConsultationVote(user, consultation, raw_value, weighted_value)`
* `ConsultationResult(consultation, results_data JSONB)`
* `ImpactTrack(consultation, action, status, date)`

**Key configuration**

* Ballot modalities: `approval | ranking | rating | preferential`
* Consensus threshold (platformwide): 0 75% weighted agreement
* Route namespace: `/ethikos/consult` owned exclusively by Ethikos

**Routes**

* `/ethikos/consult` Consultation Hub (Live / Results / Suggest)
* `/ethikos/insights` shared with Korum analytics

### 3.3 Kreative

#### 3.3.1 Konservation Creative Content & Cultural Preservation

**Services**
* `digital_archive_management`, `virtual_exhibition`, `archive_documentation`, `ai_enriched_catalogue`, `cultural_partner_integration`.

**Core models**

* `KreativeArtwork(id, artist, title, description, media_file, media_type, year, medium, style)`
* `Tag`, `ArtworkTag` (global tagging vocabulary and join table)
* `TraditionEntry(title, description, region, media_file, approved, approved_by)`

**Key configuration**

* `VIRTUAL_GALLERY_CAPACITY = 24` artworks/room

**Routes**

* `/kreative` Creativity Hub
* `/archive` Konservation archive/partners

#### 3.3.2 Kontact Collaboration & Networking

**Services**
* `professional_profile`, `intelligent_matching`, `collaboration_workspace`, `opportunity_announcement`, `partner_recommendation`.

**Core models**

* `CollabSession(id, name, host, session_type, started_at, ended_at, final_artwork)`
* Reuses `KreativeArtwork`, `Tag`, `ArtworkTag` for portfolios and tagging.

**Key configuration**

* `COLLAB_CANVAS_MAX_USERS = 6`

**Routes**

* `/connect` People, Opportunities, Collaboration Workspace
* `/profile/[user]` public profile/portfolio

### 3.4 keenKonnect

#### 3.4.1 Konstruct Project Collaboration Spaces

**Services**
* `collaboration_space`, `project_task_management`, `real_time_document_editing`, `integrated_communication`, `ai_collaboration_analysis`.

**Core models**

* `Project(id, title, description, creator, category, status)`
* `ProjectResource(project, title, url, added_by)`
* `ProjectTask(project, title, description, assignee, status, due_date)`
* `ProjectMessage(project, sender, content)`
* `ProjectTeam(project, user, role, joined_at)`
* `ProjectRating(project, user, rating, comment)`

**Key configuration**

* `MAX_BLUEPRINT_UPLOAD_MB = 150`
* `COLLAB_SPACE_MEMBER_CAP = 40`

**Routes**

* `/projects` Project Studio (Browse, Create, My Projects)
* `/projects/[slug]` workspace (Overview, Tasks, Blueprints, Chat, AI Insights, Settings)

#### 3.4.2 Stockage Secure Repository & Versioned Storage

**Services**
* `secure_document_storage`, `document_versioning`, `intelligent_indexing`, `real_time_sync`, `granular_permissions`.

**Core models**

* `ProjectResource` (same as above; canonical file record)
* `Project` and `ProjectTeam` for scoping and access control
* `Tag` for classification

**Key configuration**

* `MAX_BLUEPRINT_UPLOAD_MB = 150`
* Realtime layer: `channels_redis.core.RedisChannelLayer`

**Routes**

* Exposed inside `/projects/[slug]` as the SBlueprints⬝ tab.

### 3.5 Kollective Intelligence

#### 3.5.1 EkoH Reputation & Expertise

**Services**
* `multidimensional_scoring`, `configuration_weights`, `contextual_analysis`, `privacy_settings`, `score_history`, `score_visualization`, `expertise_field_classification`.

**Core models**

* `UserExpertiseScore(user, category, raw_score, weighted_score)`
* `UserEthicsScore(user, ethical_score)`
* `ScoreConfiguration(weight_name, weight_value, field)`
* `ContextAnalysisLog(entity_type, entity_id, field, input_metadata, adjustments_applied)`
* `ConfidentialitySetting(user, level)`
* `ScoreHistory(merit_score, old_value, new_value, change_reason)`

**Key configuration**

* Ethical multiplier bounds: floor `0.20`, cap `1.50`
* `EXPERTISE_DOMAIN_CHOICES`: 26 ISObased domains

**Runtime**

* Periodic recomputation via Celery Beat; optional realtime pushes of score/leaderboard deltas over Channels+Redis.

#### 3.5.2 Smart Vote Weighted Voting System

**Services**
* `dynamic_weighted_vote`, `voting_modalities`, `emerging_expert_detection`, `vote_transparency`, `vote_result_visualization`, `cross_module_vote_integration`.

**Core models**

* `Vote(user, target_type, target_id, raw_value, weighted_value)`
* `VoteModality(name, parameters JSON)`
* `EmergingExpert(user, detection_date, score_delta)`
* `VoteResult(target_type, target_id, sum_weighted_value, vote_count)`
* `IntegrationMapping(module_name, context_type, mapping_details)`

**Key configuration**

* Modalities: `approval | ranking | rating | preferential`
* Emerging expert threshold: +15% EkoH delta over 30 days
* Strong consensus threshold: 0 75% weighted agreement

**Runtime & analytics**

* Realtime results through Channels+Redis
* ETL `etl_smart_vote` every 10 minutes `smart_vote_fact` table, 5year retention
* UI: `/kollective/konsensus` (live polls/results), `/reports/smart-vote` (analytics)

## 4. Data flows and integration

### 4.1 Reputationweighted voting

* EkoH computes peruser, perdomain expertise and ethics scores with configurable weights and bounds.
* Smart Vote reads those scores to weight `Vote` records via `dynamic_weighted_vote`, adjusting tallies per modality.
* Korum and Konsultations integrate with Smart Vote to obtain EkoHweighted stances and ballots:

* Korum aggregates `EthikosStance` using EkoH to compute expert cohort views.
* Konsultations uses `weighted_consultation_vote` to store raw + weighted values per ballot.

### 4.2 Projects and documents

* Konstruct manages projects, tasks, chat, and ratings via `Project*` models.
* Stockage attaches documents and blueprints as `ProjectResource` records and handles versioning, indexing, and sync.
* Realtime events (file added/updated/removed; chat messages) are emitted via Channels+Redis to subscribed project workspaces.

### 4.3 Culture, archives, and networks

* Konservation"s `KreativeArtwork`, `Gallery`, and `TraditionEntry` store creative and heritage outputs with tagbased discovery.
* Kontact reuses those artefacts and tags for profiles and matching, and stores collaboration sessions in `CollabSession`.
* AI enrichment and partner ingest tasks update the archive and related metadata in the background.

### 4.4 Learning and certification

* Knowledge hosts resources, forums, and cocreation spaces and tracks progression per user/resource.
* CertifiKation uses `CertificationPath`, `Evaluation`, and `PeerValidation` to issue `Certificate` records and fill user portfolios.
* Although not strictly specified, these activities can feed EkoH via `multidimensional_scoring` as part of the platformwide reputation engine.

## 5. Analytics and insights

* Smart Vote ETL (`etl_smart_vote`) is the central pipeline for decision analytics, aggregating delta changes from OLTP into a fact table with 5year retention, powering `/reports/smart-vote`.
* Ethikos exposes `/ethikos/insights` to visualize debate stances and consultation outcomes, consuming Smart Vote facts and Korum/konsultations data.
* EkoH retains a full audit trail via `ScoreHistory` and `ContextAnalysisLog`, enabling longitudinal analysis of reputation evolution.

## 6. Contribution guidelines and invariants (technical)

When extending or integrating with Konnaxion, the following invariants should be respected (all documented above):

1. **Do not change toplevel route ownership** (`/learn`, `/certs`, `/ethikos/korum`, `/ethikos/consult`, `/projects`, `/kreative`, `/connect`, `/kollective/konsensus`, `/reports/smart-vote`) without updating all dependent modules.
2. **Preserve service codenames** (e.g. `dynamic_weighted_vote`, `multidimensional_scoring`); treat them as public, versioned integration points.
3. **Respect frozen parameter values** when relying on thresholds, caps, or schedule timings, or introduce new configuration entries in a documented way.
4. **Reuse shared infrastructure** (Channels+Redis, Celery, `/app/media/`, PostgreSQL tsvector) to keep behavior consistent and predictable.

This page, together with the modulespecific wiki entries, should provide enough technical context to navigate, extend, and integrate the Konnaxion codebase.
