Forum Architecture & Technical Specs
Wilson score ranking, 8-tier karma system, AI moderation, reputation badges, and 4 more services.
1. Ranking & Voting (Wilson Score Hot-Ranking)
| Method | Problem | Wilson Fix |
|---|---|---|
| Simple ratio | 1 upvote = 100% beats 99/100 | Confidence interval |
| Raw upvotes | New posts dominate | Accounts for sample size |
| Time-decay | Neglects vote quality | Balances quality + recency |
2. Karma System (8-Tier Rank System)
| Karma | Rank |
|---|---|
| 10,000 | Legend (top 0.1%) |
| 5,000 | Elite (top 0.5%) |
| 2,000 | Expert (top 1%) |
| 1,000 | Trusted (top 2%) |
| 500 | Contributor (top 5%) |
| 200 | Active (top 10%) |
| 50 | Member (top 25%) |
| 0 | Newcomer (everyone starts here) |
3. AI-Powered Moderation
Aeion Forum's moderation system provides AI-powered content moderation with an immutable audit log.
Report Filing with AI Scoring:
When a report is filed, the system captures an immutable snapshot of the content and title, runs it through AI moderation scoring, and calculates a priority level from the results before creating the report record.
Priority Calculation:
High toxicity or spam scores raise a report to high priority for immediate moderator attention; moderate scores get medium priority; everything else is queued as low priority for routine review. Thresholds are tunable per-tenant in Settings.
Report Aggregation:
When multiple members report the same piece of content, Aeion Forum aggregates the reports into a single case instead of creating duplicates — the reporter list and report count grow on the existing case.
Moderation Actions with Immutable Log:
When a moderator resolves a report — removing, hiding, or approving the content — the platform applies the action, updates the report status, and (for removals) applies a karma penalty to the author. Every action also writes a new, immutable entry to the moderation log — nothing is ever edited or deleted after the fact, giving you a durable audit trail for compliance and dispute resolution.
Ban System:
Bans can be temporary or permanent, and scoped globally, to a single board, or to a category. Temporary bans carry an expiration; every ban records its reason, the moderator who issued it, and enough context (IP/user-agent) to support appeals review.
4. Badges (Reputation Recognition)
Aeion Forum awards reputation badges automatically as members hit achievement milestones.
Badge Rarity:
Badges are organized into five rarity tiers — common, uncommon, rare, epic, and legendary — each carrying a name, description, emoji/icon, and a category (activity, quality, karma, staff, special, or event).
Auto-Unlock on Threshold:
Each badge defines its own unlock condition — a karma threshold, a post or thread count milestone, a posting-streak length, or a manual-only rule for staff badges. Example thresholds: "First Post" (common, awarded on your first thread), "100 Club" at 100 posts (uncommon), "10K Legend" at 10,000 karma (legendary — true bragging rights).
Badge Assignment:
Badges unlock automatically the moment a member crosses a threshold — the platform checks for duplicates, records the new badge on the member's profile, and fires a notification event so the member (and, if configured, the community) knows right away. Moderators can also award badges manually for special recognition.
5. Threads, Posts & Boards (Core Operations)
Aeion Forum's core service manages threads, posts, and boards.
Thread Creation with Karma Gate:
Before a new thread is published, Aeion Forum checks the author's karma against the board's minimum posting threshold (falling back to the tenant-wide default) — if they're under the bar, thread creation is blocked with a clear message. If AI moderation is enabled, the content also runs through a pre-check: outright violations are rejected, borderline content is auto-held for review, and everything else publishes immediately with vote counts and hot score initialized to zero.
Slug Generation:
Thread titles are automatically converted into clean, URL-safe slugs — lowercased, stripped of special characters, spaces converted to hyphens, and suffixed with a short unique token so two threads with the same title never collide.
Thread Status Flow:
`
draft → published → [pinned | featured] → archived → locked ↓ pending (AI hold) → published ↓ [removed | hidden] → archived
``
6. Supporting Services
Background Processing:
- Managed job queue for background tasks
- User ranking calculation jobs
- Digest email generation jobs
- Hot score refresh batch jobs
- Background karma recalculation
Notifications:
- Thread reply notifications
- Post mention notifications (@username)
- Karma change notifications
- Badge unlock notifications
- Digest mode (daily/weekly/monthly)
- Multi-channel delivery (email, push, in-app)
Polls:
- Single choice and multiple choice polls
- Anonymous voting option
- Vote counting and percentage calculation
- Poll expiration scheduling
- Results visibility (during/after/end)
Search:
- Full-text search across threads and posts
- Board/category filtering
- Date range filtering
- Tag filtering
- Author filtering
- Relevance ranking
7. Webhooks & Workflow Triggers
The forum doesn't just host discussion — it's an event source other modules and external systems can react to. Eight workflow triggers fire on forum activity:
forum.thread.created · forum.post.created · forum.answer.accepted · forum.user.mentioned · forum.badge.earned · forum.karma.milestone (at 10 / 100 / 1k / 10k) · forum.report.filed · forum.ban.issued
These feed Blueprint workflows, AeionClaw automations, or any subscriber natively over the event bus. A dedicated webhook configuration fans the same events out to external HTTPS endpoints — so a community milestone can trigger a CRM update, a Slack post, or a fulfillment action without polling.
The Wilson score lower bound provides a confidence interval for the true upvote ratio:
```javascript
function wilsonScore(pos, neg, confidence = 1.96) {
const n = pos + neg;
if (n === 0) return 0;
const p = pos / n;
return (
(p +
confidence ** 2 / (2 * n) -
confidence * Math.sqrt((p * (1 - p) + confidence ** 2 / (4 * n)) / n)) /
(1 + confidence ** 2 / n)
);
}
````
**Example:**
- Post A: 1 upvote, 0 downvotes → Wilson: 0.21 (low confidence)
- Post B: 99 upvotes, 1 downvote → Wilson: 0.49 (high confidence)
Post B ranks higher despite fewer total votes because the high ratio is statistically confident.
A member's rank is determined by checking their total karma against the tier thresholds from highest to lowest, so reaching 1,000 karma puts you at "Trusted" — not just the previous tier of "Contributor."
Rather than editing a vote's direction in place, Aeion Forum deletes the old vote record and writes a brand-new one — the vote row itself is never mutated, only replaced. Unlike the karma ledger and moderation log, individual vote history isn't retained after a vote changes or is removed.
Every piece of new content can be automatically scanned by AI moderation, returning scores for toxicity, spam, hate speech, harassment, and violence.
High priority reports surface immediately to moderators. Low priority reports are batched for routine review. The exact scoring thresholds are tunable per-tenant in Settings.
When a report is filed, the platform captures the content and title as they existed at that moment. Even if the original content is edited or deleted afterward, the report retains that original snapshot for moderation review.