Full refresh report
Generated: 2026-07-01 19:40:42 UTC
(2026-07-01T19:40:42.923308+00:00)
Pipeline: python3 scripts/refresh_all.py
1. Scripts run
build_person_resource_links.pysync_grant_resource_links (from grants.yaml)build_resource_courses.pyapply_access.pyapply_verification.pyapply_equipment.pyapply_course_links.pyapply_people.pyapply_summary_status.pygenerate_unit_indexes.pygenerate_equipment_index.pygenerate_home_stats.pynormalize_research_topics.pyexport_graph_tables.py
2. Scripts skipped
build_grants_layer.py— skipped by default (use --rebuild-grants to regenerate from CSV)
3. Entity counts
| Entity | Count |
|---|---|
| Resources (total) | 1599 |
| Resources (non-course) | 1145 |
| People | 123 |
| Grants | 922 |
| Publications | 96 |
| Outputs | 18 |
| Courses (CUR entries) | 454 |
| Equipment resource records | 53 |
| Equipment line items | 353 |
4. Edge counts
| Edge type | Total | include_in_graph=true | Excluded |
|---|---|---|---|
| person–resource | 224 | 184 | 40 |
| person–grant | 191 | 191 | 0 |
| grant–resource | 23 | 19 | 4 |
| person–publication | 110 | 103 | 7 |
| publication–resource | 17 | 15 | 2 |
| person–output | 16 | 15 | 1 |
| output–resource | 12 | 12 | 0 |
| course–resource (documented) | 186 | — | — |
| facility–facility (documented) | 3 | — | — |
4a. Edge counts by evidence level
Computed at export time from relationship type and include_in_graph (see scripts/person_link_rules.py). Visualization should weight direct > affiliation > topical > administrative; treat excluded and needs_review separately.
| Evidence level | All edges |
|---|---|
| direct | 439 |
| affiliation | 60 |
| administrative | 2 |
| topical | 4 |
| excluded | 53 |
| needs_review | 7 |
| Edge kind | direct | affiliation | topical | administrative | excluded | needs_review |
|---|---|---|---|---|---|---|
| grant–resource | 16 | 0 | 0 | 0 | 4 | 3 |
| person–grant | 191 | 0 | 0 | 0 | 0 | 0 |
| person–publication | 103 | 0 | 0 | 0 | 7 | 0 |
| person–resource | 115 | 60 | 4 | 2 | 40 | 3 |
| publication–resource | 14 | 0 | 0 | 0 | 2 | 1 |
5. Validation errors
- (none)
6. Validation warnings
- CDM-002: has structured links but zero include_in_graph=true edges
- CSH-008: has structured links but zero include_in_graph=true edges
- EXT-007: has structured links but zero include_in_graph=true edges
- EXT-008: has structured links but zero include_in_graph=true edges
- OUT-014: output has no people
- OUT-015: output has no people
- OUT-016: output has no people
Warning classification
| Entity | Warning | Disposition | Rationale |
|---|---|---|---|
| CDM-002 | has structured links but zero include_in_graph=true edges | valid_and_intentional | Equipment catalog entries exist but no named individual contact is published on the CDM labs listing; do not invent person-resource edges from co-listing with other labs. |
| CSH-008 | has structured links but zero include_in_graph=true edges | valid_and_intentional | Facility has equipment and documented alternate-service link to UNI-011, but published contact is generic Chemistry IT (CHESupport@depaul.edu) only — no named operator for graph edges. |
| EXT-007 | EXT-007: has structured links but zero include_in_graph=true edges | needs_review | No graph_review note in structured YAML — triage manually. |
| EXT-008 | EXT-008: has structured links but zero include_in_graph=true edges | needs_review | No graph_review note in structured YAML — triage manually. |
| OUT-014 | OUT-014: output has no people | needs_review | No graph_review note in structured YAML — triage manually. |
| OUT-015 | OUT-015: output has no people | needs_review | No graph_review note in structured YAML — triage manually. |
| OUT-016 | OUT-016: output has no people | needs_review | No graph_review note in structured YAML — triage manually. |
6a. Publications layer review
Publication–resource links are high-evidence edges; most publications have person–publication links only (see docs/reports/publication-intake-rules.md).
- Publications with no publication–resource links: 83 (expected — not an error)
- PUB-001, PUB-004, PUB-005, PUB-007, PUB-008, PUB-011, PUB-012, PUB-014, PUB-015, PUB-016, PUB-017, PUB-018 …
- Publication–resource links (graph-included, confidence below high): 0
- (none)
- Publication–resource links (graph-included, vague evidence_text): 0
- (none)
- Person–publication links excluded from graph: 7
- PPL-033: PER-023 → PUB-028 (confidence=medium)
- PPL-044: PER-011 → PUB-040 (confidence=high)
- PPL-049: PER-010 → PUB-044 (confidence=high)
- PPL-051: PER-001 → PUB-046 (confidence=high)
- PPL-068: PER-011 → PUB-062 (confidence=high)
- PPL-071: PER-010 → PUB-065 (confidence=high)
- PPL-072: PER-010 → PUB-066 (confidence=high)
6b. Outputs layer review
Outputs document non-publication artifacts (productions, games, exhibitions, software, etc.); see docs/reports/outputs-layer-plan.md.
- Outputs with no output–resource links: 6 (expected for many outputs — not an error)
- OUT-006, OUT-007, OUT-012, OUT-013, OUT-017, OUT-018
- Output–resource links (graph-included, vague evidence_text): 0
- (none)
- Person–output links excluded from graph: 1
- POL-008: PER-023 → OUT-008 (confidence=medium)
- Outputs marked needs_review: 0
- (none)
7. Orphan entities
- People with no links: 0
- Grants with no people: 0
- Publications with no people: 0
- Outputs with no people: 3
- OUT-014, OUT-015, OUT-016
- Resources with no people, grants, publications, outputs, courses, or equipment: 1052
- CDM-025, CDM-031, COM-002, EXT-012, EXT-013, EXT-014, EXT-017, GRA-001, GRA-002, GRA-003, GRA-004, GRA-005, GRA-006, GRA-007, GRA-008, GRA-009, GRA-010, GRA-011, GRA-012, GRA-013, GRA-014, GRA-015, GRA-016, GRA-017, GRA-018 …
8. Hub resources (graph-included degree ≥ 5)
| Resource | Degree | Edge kinds |
|---|---|---|
| EXT-016 | 111 | course-resource |
| CSH-003 | 28 | course-resource, person-resource |
| CDM-015 | 22 | course-resource, person-resource |
| MUS-001 | 19 | course-resource, person-resource |
| CSH-001 | 19 | course-resource, person-resource |
| CDM-016 | 16 | course-resource, output-resource, person-resource |
| CDM-004 | 12 | course-resource, person-resource |
| CDM-001 | 10 | course-resource, output-resource, person-resource |
| EXT-003 | 9 | person-resource, publication-resource |
| CDM-011 | 8 | grant-resource, person-resource |
| TTS-003 | 8 | person-resource |
| TTS-001 | 8 | course-resource, person-resource |
| TTS-002 | 5 | person-resource |
| UNI-003 | 5 | output-resource, person-resource |
| CSH-017 | 5 | grant-resource, person-resource, publication-resource |
9. Graph safety & display policy
- people_contacts.enabled = true
- include_grant_pis = false (grant_pi hidden from public site)
- grant_pi → UNI-001 must have
include_in_graph=false - grant_resource → UNI-001 must have
include_in_graph=false
10. Weak edge types (sample)
Relationships: affiliated_faculty, collaborator, grant_pi, related_topic
- PRL-002: PER-001 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-003: PER-001 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-007: PER-002 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-009: PER-003 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-011: PER-003 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-014: PER-004 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-016: PER-005 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-017: PER-005 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-018: PER-006 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-019: PER-006 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-021: PER-007 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-022: PER-007 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-024: PER-008 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-025: PER-008 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-026: PER-009 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-027: PER-009 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-028: PER-010 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-029: PER-010 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-030: PER-011 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-031: PER-011 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-032: PER-012 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-033: PER-012 → CDM-015 (affiliated_faculty, include_in_graph=True)
- PRL-036: PER-013 → CDM-004 (affiliated_faculty, include_in_graph=True)
- PRL-037: PER-014 → CDM-005 (affiliated_faculty, include_in_graph=True)
- PRL-045: PER-019 → MUS-001 (affiliated_faculty, include_in_graph=True)
- PRL-046: PER-020 → MUS-001 (affiliated_faculty, include_in_graph=True)
- PRL-055: PER-023 → EXT-005 (collaborator, include_in_graph=False)
- PRL-056: PER-023 → EXT-006 (collaborator, include_in_graph=False)
- PRL-057: PER-024 → EXT-007 (collaborator, include_in_graph=False)
- PRL-058: PER-024 → UNI-003 (collaborator, include_in_graph=True)
- PRL-064: PER-026 → EXT-002 (collaborator, include_in_graph=False)
- PRL-065: PER-026 → EXT-008 (collaborator, include_in_graph=False)
- PRL-068: PER-027 → CDM-014 (affiliated_faculty, include_in_graph=True)
- PRL-071: PER-029 → EXT-010 (collaborator, include_in_graph=True)
- PRL-077: PER-032 → CSH-005 (affiliated_faculty, include_in_graph=True)
- PRL-078: PER-032 → CDM-001 (affiliated_faculty, include_in_graph=True)
- PRL-088: PER-037 → UNI-001 (grant_pi, include_in_graph=False)
- PRL-089: PER-038 → UNI-001 (grant_pi, include_in_graph=False)
- PRL-090: PER-039 → UNI-001 (grant_pi, include_in_graph=False)
- PRL-091: PER-040 → CDM-016 (affiliated_faculty, include_in_graph=True)
- … and 63 more
11. Recommended human review
- Resources with no people/grants/publications/outputs/courses/equipment
- Grant layer: grants.yaml is source of truth by default; use --rebuild-grants only when grant_pi entries in people.yaml changed and CSV should re-seed grants
Regenerate: python3 scripts/refresh_all.py · Optional site build: python3 scripts/refresh_all.py --build-site