Sub-Project Support: Health → Mental (Alias: Psychologie) und das generelle Sub-Projekt-Modell #1
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Request
m (2026-05-15, PWA voice):
(EN: "We need a sub-project of Health in projax, called
Mental. AliasPsychologie. It should let m keep and file notes about his own psychology.")Concretely: m wants a sub-project
Mental(aliasPsychologie) under the parent projectHealthin projax.Implication for the projax data model
projax today (Phase 1) has a flat project list (
mai.projects). Sub-projects are not modelled.Required:
parent_project_idforeign key (nullable) onmai.projects.id. Top-level projects haveparent_project_id IS NULL; sub-projects point at their parent.aliases TEXT[]. m'sMentalwith aliasPsychologieis the first concrete use-case. Search + navigation must match aliases too.[[concept-promotion-demotion-projects]]— projax should be the natural carrier for these lifecycle transitions.Concrete setup after the schema update
Once sub-project logic exists:
Healthas a top-level project (if not already present).Mentalas a sub-project ofHealth, aliasPsychologie.topic-mental-health(created 2026-05-15) remains the knowledge backbone — projax links to it; we don't duplicate storage.Mentalproject should be markablevisibility: private— m's psychology notes are not for other eyes.Scope of this issue
parent_project_id+aliasesfields onmai.projects.mai project list --treeoption (or default behaviour).HealthandMental(with aliasPsychologie) in the DB.visibilityfield per project (private/personal/public), filtered in UI + API.A parallel sub-project use-case is
FinanzplanungunderFinances(also captured 2026-05-15, mBrian[[topic-finanzplanung]]) — same schema covers both.Out of scope
TopandSubis enough. If a sub-sub-project is needed later, that's a schema-extension issue.topic-mental-healthandtopic-finanzplanungin mBrian directly; projax links to them eventually.Refs
[[concept-promotion-demotion-projects]]— projax should natively support promote/demote.[[topic-mental-health]],[[topic-finanzplanung]]— the data backbones for the notes.docs/design.md— source of truth for the data model; must be extended.Role: researcher initial (schema design + migration plan + UI sketch), then coder.
Third sub-project use-case — NewHomeSpecs under mHome
Added 2026-05-16 (PWA chat): m wants a sub-project
NewHomeSpecsundermHomefor collecting specifications for his next home. Same schema requirement as Mental (under Health) and Finanzplanung (under Finances) — parent_project_id + alias + private visibility.The mBrian backbone is already in place as
[[topic-new-home-specs]](private). Once the schema lands, the worker should createNewHomeSpecsas a sub-project ofmHomeand link to the mBrian topic.If any of the three (Mental / Finanzplanung / NewHomeSpecs) suggests refinements to the schema (e.g. a fourth field, a different alias-resolution rule), it'd be the user-research signal for it.
No change to scope of this issue; just adding the third concrete consumer for the implementer's awareness.
This issue is obsolete — schema already exists
m corrected me on 2026-05-16: projax has been actively developed and the schema features I framed as "needed" are already in place:
aliases text[]: present since migration0001_init.sql.0010_multi_parent.sql.items_unifiedmodel: present since0004+0009simplification.The codebase is at Phase 3o (admin-index) — way past the Phase 1 framing in the original body. The schema portion of this issue is therefore done.
The three concrete consumers (Mental under Health, Finanzplanung under Finances, NewHomeSpecs under mHome) can be created via
projax POST /new?parent=…or via the projax-mcp surface oncem/projax#3wires it up.Marking
status:done. m can close when ready.