2.1 KiB
2.1 KiB
Ontology & Projects Management Documentation
1. Core principles
- Ontology is the source of truth for projects and tasks.
- Stream is the only writer.
- Changes require approval from Слава.
- Tasks do not exist without projects.
- Keep graph history append-only whenever possible.
2. Entity rules
Project
Required:
namefolderdoc_path
Recommended:
descriptionstatusstart_dateend_dateownerteamgoalstags
Task
Required:
titlestatusprojectfolderdoc_path
Recommended:
descriptionpriorityassigneedueestimate_hoursblockerstags
3. Folder standard
Project folder
tasks/<project-slug>/
├── PROJECT.md
├── docs/
├── journal/
├── assets/
├── meta/
└── TASKS/
├── backlog/
├── active/
├── blocked/
├── done/
└── archive/
Task folder
tasks/<project-slug>/TASKS/<status>/<task-slug>/
├── TASK.md
├── context.md
├── report.md
└── attachments/
Naming convention
- Human-facing names use
name/title. - Internal
idremains stable and may be machine-oriented. - Folder names use readable slugs, not internal ids.
- Task slugs should describe the task, not the database identifier.
4. Document paths
Project.doc_pathpoints to the main project document, usuallyPROJECT.md.Task.doc_pathpoints to the main task document, usuallyTASK.md.folderis the directory containing the object.
5. Validation workflow
- Update schema.
- Migrate graph data if needed.
- Run validation.
- Run get/query tests.
- Fix only the minimum required issues.
6. Migration workflow
- Backup current files.
- Compare current schema with reference schema.
- Normalize entity fields.
- Add missing required path fields.
- Revalidate.
7. Testing checklist
ontology.py validateontology.py get --id <known_id>ontology.py query --type Project ...ontology.py query --type Task ...- Check that project and task folders exist on disk.