Compare commits

...

1 Commits

Author SHA1 Message Date
Alexander Payne
848a2487d6 docs: generate comprehensive GENOME.md for timmy-academy
Closes #678 in timmy-home tracking.

Generated via pipelines/codebase_genome.py with:
- Project overview
- Architecture diagram (Mermaid)
- Entry points and data flow
- Key abstractions
- API surface
- Test coverage gaps (13 identified)
- Security findings (2 medium)
- Dead code candidates
2026-04-28 22:26:24 -04:00

104
GENOME.md Normal file
View File

@@ -0,0 +1,104 @@
# GENOME.md — Timmy_Foundation/timmy-academy
Generated by `pipelines/codebase_genome.py`.
## Project Overview
**An Evennia MUD for AI agent training, collaboration, and crisis response practice.**
- Text files indexed: 75
- Source and script files: 37
- Test files: 1
- Documentation files: 25
## Architecture
```mermaid
graph TD
repo_root["repo"]
commands["commands"]
hermes_agent["hermes-agent"]
server["server"]
tests["tests"]
typeclasses["typeclasses"]
web["web"]
world["world"]
repo_root --> commands
repo_root --> hermes_agent
repo_root --> server
repo_root --> tests
repo_root --> typeclasses
repo_root --> web
```
## Entry Points
- No explicit entry point detected.
## Data Flow
1. No explicit CLI/main guard entry point was detected; execution appears library- or doc-driven.
2. Core logic fans into top-level components: `commands`, `hermes-agent`, `server`, `tests`, `typeclasses`, `web`.
3. Validation is incomplete around `world/rebuild_world.py`, `world/gardens_wing.py`, `world/workshop_wing.py`, so changes there carry regression risk.
4. Final artifacts land as repository files, docs, or runtime side effects depending on the selected entry point.
## Key Abstractions
- `world/rebuild_world.py` — classes none detected; functions `parse_wing_file()`:40, `get_room()`:238, `rebuild_rooms()`:247, `verify_exits()`:327, `manage_characters()`:374, `setup_channels()`:397
- `commands/command.py` — classes `Command`:19, `CmdExamine`:28, `CmdRooms`:76, `CmdStatus`:108; functions none detected
- `world/gardens_wing.py` — classes `GardensEntrance`:8, `HerbGardens`:78, `EnchantedGrove`:145, `GreenhouseComplex`:213; functions none detected
- `world/workshop_wing.py` — classes `WorkshopEntrance`:8, `GreatSmithy`:74, `AlchemyLaboratories`:140, `WoodworkingStudio`:208; functions none detected
- `world/dormitory_entrance.py` — classes `DormitoryEntrance`:8, `DormitoryLodgingMaster`:86, `CorridorOfRest`:147, `NoviceDormitoryHall`:213; functions none detected
- `world/commons_wing.py` — classes `GrandCommonsHall`:8, `HearthsideDining`:77, `ScholarsCorner`:144, `EntertainmentGallery`:209; functions none detected
- `typeclasses/objects.py` — classes `ObjectParent`:14, `Object`:26; functions none detected
- `typeclasses/audited_character.py` — classes `AuditedCharacter`:19; functions none detected
## API Surface
- Python: `parse_wing_file()` from `world/rebuild_world.py:40`
- Python: `get_room()` from `world/rebuild_world.py:238`
- Python: `rebuild_rooms()` from `world/rebuild_world.py:247`
- Python: `verify_exits()` from `world/rebuild_world.py:327`
- Python: `manage_characters()` from `world/rebuild_world.py:374`
- Python: `setup_channels()` from `world/rebuild_world.py:397`
## Test Coverage Report
- Source and script files inspected: 37
- Test files inspected: 1
- Coverage gaps:
- `world/rebuild_world.py` — no matching test reference detected
- `world/gardens_wing.py` — no matching test reference detected
- `world/workshop_wing.py` — no matching test reference detected
- `world/dormitory_entrance.py` — no matching test reference detected
- `world/commons_wing.py` — no matching test reference detected
- `typeclasses/objects.py` — no matching test reference detected
- `server/conf/settings.py` — no matching test reference detected
- `typeclasses/audited_character.py` — no matching test reference detected
- `typeclasses/accounts.py` — no matching test reference detected
- `world/fix_world.py` — no matching test reference detected
- `typeclasses/channels.py` — no matching test reference detected
- `server/conf/mssp.py` — no matching test reference detected
## Security Audit Findings
- [medium] `commands/command.py:303` — hardcoded http endpoint: plaintext or fixed HTTP endpoints can drift or leak across environments. Evidence: `msg.append(" |wWeb:|n http://167.99.126.228:4001")`
- [medium] `hermes-agent/config.yaml:15` — hardcoded http endpoint: plaintext or fixed HTTP endpoints can drift or leak across environments. Evidence: `base_url: http://localhost:11434`
## Dead Code Candidates
- `world/rebuild_world.py` — not imported by indexed Python modules and not referenced by tests
- `server/conf/settings.py` — not imported by indexed Python modules and not referenced by tests
- `typeclasses/audited_character.py` — not imported by indexed Python modules and not referenced by tests
- `typeclasses/accounts.py` — not imported by indexed Python modules and not referenced by tests
- `world/fix_world.py` — not imported by indexed Python modules and not referenced by tests
- `typeclasses/channels.py` — not imported by indexed Python modules and not referenced by tests
- `server/conf/mssp.py` — not imported by indexed Python modules and not referenced by tests
- `typeclasses/scripts.py` — not imported by indexed Python modules and not referenced by tests
- `commands/default_cmdsets.py` — not imported by indexed Python modules and not referenced by tests
- `world/prototypes.py` — not imported by indexed Python modules and not referenced by tests
## Performance Bottleneck Analysis
- `commands/command.py` — large module (436 lines) likely hides multiple responsibilities
- `world/rebuild_world.py` — large module (482 lines) likely hides multiple responsibilities