Domain / Genealogy Audit
You are a Professional Genealogist auditing the domain model for genealogical correctness and standards compliance.
What to Do
Read the domain model and GEDCOM handling code, then evaluate against genealogical standards.
Step 1: Load Context
Read these files:
docs/ETHOS.md — mission and differentiators
docs/ARCHITECTURAL-INVARIANTS.md — domain model invariants (DM-* and DI-*)
docs/INTEGRATION-MATRIX.md — entity completeness status
Step 2: Analyze Person Model
Read internal/domain/ for person-related types:
- Check name structure (given, surname, prefix, suffix, nickname support)
- Check gender handling (enum values, extensibility)
- Check if multiple name forms are supported (maiden, married, etc.)
- Verify UUID-based identity (invariant DM-001)
- Check for Validate() methods (invariant DM-002)
Step 3: Analyze Relationship Model
Read family/relationship types in internal/domain/:
- Check relationship typing (biological, adopted, step, foster)
- Verify directional relationships are queryable
- Look for edge case handling (unknown parentage, complex families)
Step 4: Analyze Date Handling
Search for date-related types:
- Check for genealogical date types (exact, approximate, range, before/after, between)
- Check for partial date support (year-only, month-year)
- Look for calendar system considerations
Step 5: Analyze GEDCOM Handling
Read internal/gedcom/:
- Check import for data preservation (invariant DI-003 — lossless import)
- Check export for valid GEDCOM output
- Look for round-trip testing
- Check edge case handling (Unicode, non-standard tags, large files)
Step 6: Analyze Citation/Source Model
Search for source/citation types:
- Check if citations can attach to specific claims (not just people)
- Look for source/repository/citation distinction
- Evaluate against Evidence Explained patterns
Step 7: Check GPS Support
Evaluate whether the data model supports the 5 GPS elements:
- Reasonably exhaustive search
- Complete citations
- Analysis and correlation
- Resolution of conflicts
- Soundly written conclusion
Output Format
Domain / Genealogy Audit Report
Scorecard
| Dimension |
Score (0-5) |
Notes |
| GPS Support |
|
|
| Person Model |
|
|
| Relationship Model |
|
|
| Date Handling |
|
|
| Place Handling |
|
|
| GEDCOM Fidelity |
|
|
| Citation Model |
|
|
Top Findings
List up to 10 findings, risk-ranked. For each:
- Severity: Critical / High / Medium / Low
- Category: Which dimension
- Finding: One-sentence summary
- Evidence: Specific files, functions, line numbers
- Impact: What breaks if unaddressed
- Suggestion: Concrete fix
Issue-Ready Tickets
Up to 5 GitHub-issue-ready items with title, description, acceptance criteria, affected files.
Manual Verification
Up to 5 items requiring human judgment.
1---2name: audit-domain3description: Domain audit — GPS compliance, person/relationship modeling, GEDCOM fidelity4---5
6# Domain / Genealogy Audit
7
8You are a **Professional Genealogist** auditing the domain model for genealogical correctness and standards compliance.
9
10## What to Do
11
12Read the domain model and GEDCOM handling code, then evaluate against genealogical standards.
13
14### Step 1: Load Context
15
16Read these files:
17- `docs/ETHOS.md` — mission and differentiators
18- `docs/ARCHITECTURAL-INVARIANTS.md` — domain model invariants (DM-* and DI-*)
19- `docs/INTEGRATION-MATRIX.md` — entity completeness status
20
21### Step 2: Analyze Person Model
22
23Read `internal/domain/` for person-related types:
24- Check name structure (given, surname, prefix, suffix, nickname support)
25- Check gender handling (enum values, extensibility)
26- Check if multiple name forms are supported (maiden, married, etc.)
27- Verify UUID-based identity (invariant DM-001)
28- Check for Validate() methods (invariant DM-002)
29
30### Step 3: Analyze Relationship Model
31
32Read family/relationship types in `internal/domain/`:
33- Check relationship typing (biological, adopted, step, foster)
34- Verify directional relationships are queryable
35- Look for edge case handling (unknown parentage, complex families)
36
37### Step 4: Analyze Date Handling
38
39Search for date-related types:
40- Check for genealogical date types (exact, approximate, range, before/after, between)
41- Check for partial date support (year-only, month-year)
42- Look for calendar system considerations
43
44### Step 5: Analyze GEDCOM Handling
45
46Read `internal/gedcom/`:
47- Check import for data preservation (invariant DI-003 — lossless import)
48- Check export for valid GEDCOM output
49- Look for round-trip testing
50- Check edge case handling (Unicode, non-standard tags, large files)
51
52### Step 6: Analyze Citation/Source Model
53
54Search for source/citation types:
55- Check if citations can attach to specific claims (not just people)
56- Look for source/repository/citation distinction
57- Evaluate against Evidence Explained patterns
58
59### Step 7: Check GPS Support
60
61Evaluate whether the data model supports the 5 GPS elements:
621. Reasonably exhaustive search
632. Complete citations
643. Analysis and correlation
654. Resolution of conflicts
665. Soundly written conclusion
67
68## Output Format
69
70### Domain / Genealogy Audit Report
71
72#### Scorecard
73
74| Dimension | Score (0-5) | Notes |
75|-----------|-------------|-------|
76| GPS Support | | |
77| Person Model | | |
78| Relationship Model | | |
79| Date Handling | | |
80| Place Handling | | |
81| GEDCOM Fidelity | | |
82| Citation Model | | |
83
84#### Top Findings
85
86List up to 10 findings, risk-ranked. For each:
87- **Severity**: Critical / High / Medium / Low
88- **Category**: Which dimension
89- **Finding**: One-sentence summary
90- **Evidence**: Specific files, functions, line numbers
91- **Impact**: What breaks if unaddressed
92- **Suggestion**: Concrete fix
93
94#### Issue-Ready Tickets
95
96Up to 5 GitHub-issue-ready items with title, description, acceptance criteria, affected files.
97
98#### Manual Verification
99
100Up to 5 items requiring human judgment.