chore(matrix): scrub final matrix references after subsystem removal

The matrix subsystem was removed in a prior commit. This commit cleans
up the small leftovers that grep found:

- docker-compose.macmini.yml: dropped the "Matrix Stack" port-range
  comment, the "matrix" category from the naming convention, and a
  stale watchtower comment about Matrix notifications.
- packages/credits/src/operations.ts: removed AI_BOT_CHAT credit
  operation type and its definition. It was the billing entry for "Chat
  with AI via Matrix bot" — no callers left.
- services/mana-credits gifts schema + service + validation: removed the
  targetMatrixId column / param / Zod field. The corresponding
  PostgreSQL column was dropped manually with
  `ALTER TABLE gifts.gift_codes DROP COLUMN target_matrix_id` on prod.
- docker/grafana/dashboards/{master,system}-overview.json: removed the
  `up{job="synapse"}` panel queries — they would have shown No Data
  forever now that Synapse is gone.

Production-side cleanup performed in parallel (not in this commit):
- Stopped + removed mana-matrix-{synapse,element,web,bot} containers
- Removed mana-matrix-bot:local, matrix-web:latest,
  matrixdotorg/synapse:latest, vectorim/element-web:latest images (~3 GB)
- Removed mana-matrix-bots-data Docker volume
- Removed /Volumes/ManaData/matrix/ media store (4.3 MB)
- DROP DATABASE matrix; DROP DATABASE synapse; on Postgres

Cosmetic leftovers intentionally untouched:
- Eisenhower matrix in todo (LayoutMode 'matrix') — productivity concept
- ${{ matrix.service }} in .github/workflows — GitHub Actions strategy
- services/mana-media/apps/api/dist/.../matrix/* — stale build output
  (not in git, regenerated next mana-media build)
This commit is contained in:
Till JS 2026-04-08 16:37:40 +02:00
parent e337243303
commit 2514831a3b
7 changed files with 1 additions and 31 deletions

View file

@ -3,14 +3,13 @@
#
# Port Schema:
# 3000-3099: Core Services & Backends
# 4000-4099: Matrix Stack
# 5000-5099: Web Frontends
# 5100-5199: Games
# 8000-8099: Monitoring Dashboards
# 9000-9199: Infrastructure & Exporters
#
# Naming Convention: mana-{category}-{service}
# Categories: infra, core, app, matrix, mon, auto
# Categories: infra, core, app, mon, auto
#
# Memory Limits:
# All containers have explicit mem_limit to prevent unbounded growth.
@ -1352,7 +1351,6 @@ services:
WATCHTOWER_POLL_INTERVAL: 300
WATCHTOWER_CLEANUP: "true"
WATCHTOWER_INCLUDE_STOPPED: "false"
# Notifications disabled - configure Matrix if needed
# ============================================
# Volumes (Naming: mana-{service}-data)

View file

@ -510,12 +510,6 @@
"legendFormat": "Media",
"refId": "T"
},
{
"datasource": { "type": "prometheus", "uid": "${datasource}" },
"expr": "up{job=\"synapse\"}",
"legendFormat": "Synapse",
"refId": "U"
},
{
"datasource": { "type": "prometheus", "uid": "${datasource}" },
"expr": "pg_up",

View file

@ -637,12 +637,6 @@
"legendFormat": "Media",
"refId": "T"
},
{
"datasource": { "type": "prometheus", "uid": "${datasource}" },
"expr": "up{job=\"synapse\"}",
"legendFormat": "Synapse",
"refId": "U"
},
{
"datasource": { "type": "prometheus", "uid": "${datasource}" },
"expr": "pg_up",

View file

@ -53,9 +53,6 @@ export enum CreditOperationType {
// Context - AI text generation
AI_CONTEXT_GENERATION = 'ai_context_generation',
// Matrix Bots - Bot chat
AI_BOT_CHAT = 'ai_bot_chat',
// General AI features
AI_SMART_SCHEDULING = 'ai_smart_scheduling',
AI_SUGGESTIONS = 'ai_suggestions',
@ -132,7 +129,6 @@ export const CREDIT_COSTS: Record<CreditOperationType, number> = {
[CreditOperationType.AI_PLANT_ANALYSIS]: 2,
[CreditOperationType.AI_GUIDE_GENERATION]: 5,
[CreditOperationType.AI_CONTEXT_GENERATION]: 2,
[CreditOperationType.AI_BOT_CHAT]: 0.1,
[CreditOperationType.AI_SMART_SCHEDULING]: 2,
[CreditOperationType.AI_SUGGESTIONS]: 2,
@ -312,14 +308,6 @@ export const OPERATION_METADATA: Record<CreditOperationType, OperationMetadata>
app: 'context',
},
// Matrix Bots
[CreditOperationType.AI_BOT_CHAT]: {
name: 'Bot Chat Message',
description: 'Chat with AI via Matrix bot',
category: CreditCategory.AI,
app: 'matrix',
},
// General AI
[CreditOperationType.AI_SMART_SCHEDULING]: {
name: 'Smart Scheduling',

View file

@ -61,7 +61,6 @@ export const giftCodes = giftsSchema.table(
// Personalization
targetEmail: text('target_email'),
targetMatrixId: text('target_matrix_id'),
// Riddle
riddleQuestion: text('riddle_question'),

View file

@ -48,7 +48,6 @@ export const createGiftSchema = z.object({
type: z.enum(['simple', 'personalized', 'split', 'first_come', 'riddle']).default('simple'),
totalPortions: z.number().int().positive().max(100).default(1),
targetEmail: z.string().email().optional(),
targetMatrixId: z.string().optional(),
riddleQuestion: z.string().max(200).optional(),
riddleAnswer: z.string().optional(),
message: z.string().max(500).optional(),

View file

@ -22,7 +22,6 @@ interface CreateGiftParams {
type?: 'simple' | 'personalized' | 'split' | 'first_come' | 'riddle';
totalPortions?: number;
targetEmail?: string;
targetMatrixId?: string;
riddleQuestion?: string;
riddleAnswer?: string;
message?: string;
@ -118,7 +117,6 @@ export class GiftCodeService {
totalPortions,
type,
targetEmail: params.targetEmail,
targetMatrixId: params.targetMatrixId,
riddleQuestion: params.riddleQuestion,
riddleAnswerHash,
message: params.message,