Schema update

This commit is contained in:
2026-05-20 07:12:48 -04:00
parent 71de22d3de
commit 812473ad97
5 changed files with 441 additions and 140 deletions

View File

@@ -35,11 +35,12 @@ EXPECTED_CONSTRAINTS = [
"book_id", "author_id", "learningpath_id", "concept_id", "quote_id",
# Marcus
"training_id", "exercise_id", "program_id", "personalrecord_id", "bodymetric_id",
# Seneca
# Watson (Reflection & Emotional Safety)
"reflection_id", "value_id", "habit_id", "lifeevent_id", "intention_id",
"emotionalmemory_id", "relationshiptheme_id", "dialoguenote_id", "dynamicpattern_id",
# Bourdain
"recipe_id", "restaurant_id", "ingredient_id", "meal_id", "technique_id",
# Bowie
# David (Arts & Culture)
"music_id", "film_id", "artwork_id", "playlist_id", "artist_id", "style_id",
# Cousteau
"species_id", "plant_id", "tank_id", "garden_id", "ecosystem_id", "observation_id",
@@ -47,6 +48,8 @@ EXPECTED_CONSTRAINTS = [
"account_id", "investment_id", "asset_id", "liability_id", "budget_id", "financialgoal_id",
# Cristiano
"match_id", "team_id", "league_id", "tournament_id", "player_id", "season_id",
# Shawn (Personal General Assistant)
"communication_id",
# Work: Business
"client_id", "contact_id", "opportunity_id", "proposal_id", "project_id",
# Work: Market Intelligence
@@ -68,11 +71,13 @@ EXPECTED_LABELS = {
"Book", "Author", "LearningPath", "Concept", "Quote",
"Training", "Exercise", "Program", "PersonalRecord", "BodyMetric",
"Reflection", "Value", "Habit", "LifeEvent", "Intention",
"EmotionalMemory", "RelationshipTheme", "DialogueNote", "DynamicPattern",
"Recipe", "Restaurant", "Ingredient", "Meal", "Technique",
"Music", "Film", "Artwork", "Playlist", "Artist", "Style",
"Species", "Plant", "Tank", "Garden", "Ecosystem", "Observation",
"Account", "Investment", "Asset", "Liability", "Budget", "FinancialGoal",
"Match", "Team", "League", "Tournament", "Player", "Season",
"Communication",
"Client", "Contact", "Opportunity", "Proposal", "Project",
"Vendor", "Competitor", "MarketTrend", "Technology",
"Content", "Publication",
@@ -90,6 +95,9 @@ EXPECTED_SAMPLE_NODES = [
("Topic", "topic_stoicism"),
("Topic", "topic_ai_in_cx"),
("Account", "account_tfsa_sample"),
("Contact", "contact_sample_personal"),
("Communication", "comm_sample"),
("EmotionalMemory", "memory_sample"),
("Client", "client_sample_corp"),
("Skill", "skill_cx_strategy"),
("Infrastructure", "infra_neo4j_prod"),
@@ -102,6 +110,8 @@ EXPECTED_SAMPLE_RELS = [
("Person", "user_main", "PURSUING", "Goal", "goal_sample_2025"),
("Book", "book_meditations_aurelius", "EXPLORES", "Topic", "topic_stoicism"),
("Person", "user_main", "OWNS", "Account", "account_tfsa_sample"),
("Person", "user_main", "HAD", "Communication", "comm_sample"),
("Communication", "comm_sample", "WITH", "Contact", "contact_sample_personal"),
]
# A sampling of expected indexes (not exhaustive, just key ones to spot-check)
@@ -109,6 +119,7 @@ EXPECTED_INDEX_SAMPLES = [
"person_name", "book_title", "client_name", "event_date",
"training_date", "client_status", "task_status", "event_domain",
"team_name", "player_name", "match_competition",
"contact_domain", "task_domain",
]
@@ -157,7 +168,7 @@ def validate(driver, uri):
print("" * 65)
print(" VALIDATION REPORT — Koios Unified Knowledge Graph")
print("" * 65)
print(f" Schema Version: 2.1.0")
print(f" Schema Version: 2.3.0")
print(f" Database: {uri}")
print(f" Timestamp: {now}")
print("" * 65)