htm 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.architecture/decisions/adrs/001-use-postgresql-timescaledb-storage.md +227 -0
- data/.architecture/decisions/adrs/002-two-tier-memory-architecture.md +322 -0
- data/.architecture/decisions/adrs/003-ollama-default-embedding-provider.md +339 -0
- data/.architecture/decisions/adrs/004-multi-robot-shared-memory-hive-mind.md +374 -0
- data/.architecture/decisions/adrs/005-rag-based-retrieval-with-hybrid-search.md +443 -0
- data/.architecture/decisions/adrs/006-context-assembly-strategies.md +444 -0
- data/.architecture/decisions/adrs/007-working-memory-eviction-strategy.md +461 -0
- data/.architecture/decisions/adrs/008-robot-identification-system.md +550 -0
- data/.architecture/decisions/adrs/009-never-forget-explicit-deletion-only.md +570 -0
- data/.architecture/decisions/adrs/010-redis-working-memory-rejected.md +323 -0
- data/.architecture/decisions/adrs/011-database-side-embedding-generation-with-pgai.md +585 -0
- data/.architecture/decisions/adrs/012-llm-driven-ontology-topic-extraction.md +583 -0
- data/.architecture/decisions/adrs/013-activerecord-orm-and-many-to-many-tagging.md +299 -0
- data/.architecture/decisions/adrs/014-client-side-embedding-generation-workflow.md +569 -0
- data/.architecture/decisions/adrs/015-hierarchical-tag-ontology-and-llm-extraction.md +701 -0
- data/.architecture/decisions/adrs/016-async-embedding-and-tag-generation.md +694 -0
- data/.architecture/members.yml +144 -0
- data/.architecture/reviews/2025-10-29-llm-configuration-and-async-processing-review.md +1137 -0
- data/.architecture/reviews/initial-system-analysis.md +330 -0
- data/.envrc +32 -0
- data/.irbrc +145 -0
- data/CHANGELOG.md +150 -0
- data/COMMITS.md +196 -0
- data/LICENSE +21 -0
- data/README.md +1347 -0
- data/Rakefile +51 -0
- data/SETUP.md +268 -0
- data/config/database.yml +67 -0
- data/db/migrate/20250101000001_enable_extensions.rb +14 -0
- data/db/migrate/20250101000002_create_robots.rb +14 -0
- data/db/migrate/20250101000003_create_nodes.rb +42 -0
- data/db/migrate/20250101000005_create_tags.rb +38 -0
- data/db/migrate/20250101000007_add_node_vector_indexes.rb +30 -0
- data/db/schema.sql +473 -0
- data/db/seed_data/README.md +100 -0
- data/db/seed_data/presidents.md +136 -0
- data/db/seed_data/states.md +151 -0
- data/db/seeds.rb +208 -0
- data/dbdoc/README.md +173 -0
- data/dbdoc/public.node_stats.md +48 -0
- data/dbdoc/public.node_stats.svg +41 -0
- data/dbdoc/public.node_tags.md +40 -0
- data/dbdoc/public.node_tags.svg +112 -0
- data/dbdoc/public.nodes.md +54 -0
- data/dbdoc/public.nodes.svg +118 -0
- data/dbdoc/public.nodes_tags.md +39 -0
- data/dbdoc/public.nodes_tags.svg +112 -0
- data/dbdoc/public.ontology_structure.md +48 -0
- data/dbdoc/public.ontology_structure.svg +38 -0
- data/dbdoc/public.operations_log.md +42 -0
- data/dbdoc/public.operations_log.svg +130 -0
- data/dbdoc/public.relationships.md +39 -0
- data/dbdoc/public.relationships.svg +41 -0
- data/dbdoc/public.robot_activity.md +46 -0
- data/dbdoc/public.robot_activity.svg +35 -0
- data/dbdoc/public.robots.md +35 -0
- data/dbdoc/public.robots.svg +90 -0
- data/dbdoc/public.schema_migrations.md +29 -0
- data/dbdoc/public.schema_migrations.svg +26 -0
- data/dbdoc/public.tags.md +35 -0
- data/dbdoc/public.tags.svg +60 -0
- data/dbdoc/public.topic_relationships.md +45 -0
- data/dbdoc/public.topic_relationships.svg +32 -0
- data/dbdoc/schema.json +1437 -0
- data/dbdoc/schema.svg +154 -0
- data/docs/api/database.md +806 -0
- data/docs/api/embedding-service.md +532 -0
- data/docs/api/htm.md +797 -0
- data/docs/api/index.md +259 -0
- data/docs/api/long-term-memory.md +1096 -0
- data/docs/api/working-memory.md +665 -0
- data/docs/architecture/adrs/001-postgresql-timescaledb.md +314 -0
- data/docs/architecture/adrs/002-two-tier-memory.md +411 -0
- data/docs/architecture/adrs/003-ollama-embeddings.md +421 -0
- data/docs/architecture/adrs/004-hive-mind.md +437 -0
- data/docs/architecture/adrs/005-rag-retrieval.md +531 -0
- data/docs/architecture/adrs/006-context-assembly.md +496 -0
- data/docs/architecture/adrs/007-eviction-strategy.md +645 -0
- data/docs/architecture/adrs/008-robot-identification.md +625 -0
- data/docs/architecture/adrs/009-never-forget.md +648 -0
- data/docs/architecture/adrs/010-redis-working-memory-rejected.md +323 -0
- data/docs/architecture/adrs/011-pgai-integration.md +494 -0
- data/docs/architecture/adrs/index.md +215 -0
- data/docs/architecture/hive-mind.md +736 -0
- data/docs/architecture/index.md +351 -0
- data/docs/architecture/overview.md +538 -0
- data/docs/architecture/two-tier-memory.md +873 -0
- data/docs/assets/css/custom.css +83 -0
- data/docs/assets/images/htm-core-components.svg +63 -0
- data/docs/assets/images/htm-database-schema.svg +93 -0
- data/docs/assets/images/htm-hive-mind-architecture.svg +125 -0
- data/docs/assets/images/htm-importance-scoring-framework.svg +83 -0
- data/docs/assets/images/htm-layered-architecture.svg +71 -0
- data/docs/assets/images/htm-long-term-memory-architecture.svg +115 -0
- data/docs/assets/images/htm-working-memory-architecture.svg +120 -0
- data/docs/assets/images/htm.jpg +0 -0
- data/docs/assets/images/htm_demo.gif +0 -0
- data/docs/assets/js/mathjax.js +18 -0
- data/docs/assets/videos/htm_video.mp4 +0 -0
- data/docs/database_rake_tasks.md +322 -0
- data/docs/development/contributing.md +787 -0
- data/docs/development/index.md +336 -0
- data/docs/development/schema.md +596 -0
- data/docs/development/setup.md +719 -0
- data/docs/development/testing.md +819 -0
- data/docs/guides/adding-memories.md +824 -0
- data/docs/guides/context-assembly.md +1009 -0
- data/docs/guides/getting-started.md +577 -0
- data/docs/guides/index.md +118 -0
- data/docs/guides/long-term-memory.md +941 -0
- data/docs/guides/multi-robot.md +866 -0
- data/docs/guides/recalling-memories.md +927 -0
- data/docs/guides/search-strategies.md +953 -0
- data/docs/guides/working-memory.md +717 -0
- data/docs/index.md +214 -0
- data/docs/installation.md +477 -0
- data/docs/multi_framework_support.md +519 -0
- data/docs/quick-start.md +655 -0
- data/docs/setup_local_database.md +302 -0
- data/docs/using_rake_tasks_in_your_app.md +383 -0
- data/examples/basic_usage.rb +93 -0
- data/examples/cli_app/README.md +317 -0
- data/examples/cli_app/htm_cli.rb +270 -0
- data/examples/custom_llm_configuration.rb +183 -0
- data/examples/example_app/Rakefile +71 -0
- data/examples/example_app/app.rb +206 -0
- data/examples/sinatra_app/Gemfile +21 -0
- data/examples/sinatra_app/app.rb +335 -0
- data/lib/htm/active_record_config.rb +113 -0
- data/lib/htm/configuration.rb +342 -0
- data/lib/htm/database.rb +594 -0
- data/lib/htm/embedding_service.rb +115 -0
- data/lib/htm/errors.rb +34 -0
- data/lib/htm/job_adapter.rb +154 -0
- data/lib/htm/jobs/generate_embedding_job.rb +65 -0
- data/lib/htm/jobs/generate_tags_job.rb +82 -0
- data/lib/htm/long_term_memory.rb +965 -0
- data/lib/htm/models/node.rb +109 -0
- data/lib/htm/models/node_tag.rb +33 -0
- data/lib/htm/models/robot.rb +52 -0
- data/lib/htm/models/tag.rb +76 -0
- data/lib/htm/railtie.rb +76 -0
- data/lib/htm/sinatra.rb +157 -0
- data/lib/htm/tag_service.rb +135 -0
- data/lib/htm/tasks.rb +38 -0
- data/lib/htm/version.rb +5 -0
- data/lib/htm/working_memory.rb +182 -0
- data/lib/htm.rb +400 -0
- data/lib/tasks/db.rake +19 -0
- data/lib/tasks/htm.rake +147 -0
- data/lib/tasks/jobs.rake +312 -0
- data/mkdocs.yml +190 -0
- data/scripts/install_local_database.sh +309 -0
- metadata +341 -0
data/dbdoc/schema.svg
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: htm_development Pages: 1 -->
|
|
7
|
+
<svg width="1099pt" height="1093pt"
|
|
8
|
+
viewBox="0.00 0.00 1099.20 1092.80" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 1088.8)">
|
|
10
|
+
<title>htm_development</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-1088.8 1095.2,-1088.8 1095.2,4 -4,4"/>
|
|
12
|
+
<!-- public.node_tags -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>public.node_tags</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="354.55,-1006 354.55,-1041.6 615.51,-1041.6 615.51,-1006 354.55,-1006"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="354.55,-1006 354.55,-1041.6 615.51,-1041.6 615.51,-1006 354.55,-1006"/>
|
|
17
|
+
<text text-anchor="start" x="361.55" y="-1019.4" font-family="Arial Bold" font-size="18.00">public.node_tags</text>
|
|
18
|
+
<text text-anchor="start" x="484.02" y="-1019.4" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="515.14" y="-1019.4" font-family="Arial" font-size="14.00" fill="#666666">[BASE TABLE]</text>
|
|
20
|
+
<polygon fill="none" stroke="black" points="354.55,-975.2 354.55,-1006 615.51,-1006 615.51,-975.2 354.55,-975.2"/>
|
|
21
|
+
<text text-anchor="start" x="361.55" y="-987.4" font-family="Arial" font-size="14.00">id </text>
|
|
22
|
+
<text text-anchor="start" x="376.33" y="-987.4" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
23
|
+
<polygon fill="none" stroke="black" points="354.55,-944.4 354.55,-975.2 615.51,-975.2 615.51,-944.4 354.55,-944.4"/>
|
|
24
|
+
<text text-anchor="start" x="361.55" y="-956.6" font-family="Arial" font-size="14.00">node_id </text>
|
|
25
|
+
<text text-anchor="start" x="415.26" y="-956.6" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
26
|
+
<polygon fill="none" stroke="black" points="354.55,-913.6 354.55,-944.4 615.51,-944.4 615.51,-913.6 354.55,-913.6"/>
|
|
27
|
+
<text text-anchor="start" x="361.55" y="-925.8" font-family="Arial" font-size="14.00">tag_id </text>
|
|
28
|
+
<text text-anchor="start" x="403.58" y="-925.8" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
29
|
+
<polygon fill="none" stroke="black" points="354.55,-882.8 354.55,-913.6 615.51,-913.6 615.51,-882.8 354.55,-882.8"/>
|
|
30
|
+
<text text-anchor="start" x="361.55" y="-895" font-family="Arial" font-size="14.00">created_at </text>
|
|
31
|
+
<text text-anchor="start" x="431.59" y="-895" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
32
|
+
</g>
|
|
33
|
+
<!-- public.nodes -->
|
|
34
|
+
<g id="node4" class="node">
|
|
35
|
+
<title>public.nodes</title>
|
|
36
|
+
<polygon fill="#efefef" stroke="none" points="166.86,-724.8 166.86,-760.4 439.19,-760.4 439.19,-724.8 166.86,-724.8"/>
|
|
37
|
+
<polygon fill="none" stroke="black" points="166.86,-724.8 166.86,-760.4 439.19,-760.4 439.19,-724.8 166.86,-724.8"/>
|
|
38
|
+
<text text-anchor="start" x="195.04" y="-738.2" font-family="Arial Bold" font-size="18.00">public.nodes</text>
|
|
39
|
+
<text text-anchor="start" x="286.53" y="-738.2" font-family="Arial" font-size="14.00"> </text>
|
|
40
|
+
<text text-anchor="start" x="317.64" y="-738.2" font-family="Arial" font-size="14.00" fill="#666666">[BASE TABLE]</text>
|
|
41
|
+
<polygon fill="none" stroke="black" points="166.86,-694 166.86,-724.8 439.19,-724.8 439.19,-694 166.86,-694"/>
|
|
42
|
+
<text text-anchor="start" x="173.86" y="-706.2" font-family="Arial" font-size="14.00">id </text>
|
|
43
|
+
<text text-anchor="start" x="188.65" y="-706.2" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
44
|
+
<polygon fill="none" stroke="black" points="166.86,-663.2 166.86,-694 439.19,-694 439.19,-663.2 166.86,-663.2"/>
|
|
45
|
+
<text text-anchor="start" x="173.86" y="-675.4" font-family="Arial" font-size="14.00">content </text>
|
|
46
|
+
<text text-anchor="start" x="223.68" y="-675.4" font-family="Arial" font-size="14.00" fill="#666666">[text]</text>
|
|
47
|
+
<polygon fill="none" stroke="black" points="166.86,-632.4 166.86,-663.2 439.19,-663.2 439.19,-632.4 166.86,-632.4"/>
|
|
48
|
+
<text text-anchor="start" x="173.86" y="-644.6" font-family="Arial" font-size="14.00">source </text>
|
|
49
|
+
<text text-anchor="start" x="219.77" y="-644.6" font-family="Arial" font-size="14.00" fill="#666666">[text]</text>
|
|
50
|
+
<polygon fill="none" stroke="black" points="166.86,-601.6 166.86,-632.4 439.19,-632.4 439.19,-601.6 166.86,-601.6"/>
|
|
51
|
+
<text text-anchor="start" x="173.86" y="-613.8" font-family="Arial" font-size="14.00">access_count </text>
|
|
52
|
+
<text text-anchor="start" x="263.36" y="-613.8" font-family="Arial" font-size="14.00" fill="#666666">[integer]</text>
|
|
53
|
+
<polygon fill="none" stroke="black" points="166.86,-570.8 166.86,-601.6 439.19,-601.6 439.19,-570.8 166.86,-570.8"/>
|
|
54
|
+
<text text-anchor="start" x="173.86" y="-583" font-family="Arial" font-size="14.00">created_at </text>
|
|
55
|
+
<text text-anchor="start" x="243.91" y="-583" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
56
|
+
<polygon fill="none" stroke="black" points="166.86,-540 166.86,-570.8 439.19,-570.8 439.19,-540 166.86,-540"/>
|
|
57
|
+
<text text-anchor="start" x="173.86" y="-552.2" font-family="Arial" font-size="14.00">updated_at </text>
|
|
58
|
+
<text text-anchor="start" x="247.82" y="-552.2" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
59
|
+
<polygon fill="none" stroke="black" points="166.86,-509.2 166.86,-540 439.19,-540 439.19,-509.2 166.86,-509.2"/>
|
|
60
|
+
<text text-anchor="start" x="173.86" y="-521.4" font-family="Arial" font-size="14.00">last_accessed </text>
|
|
61
|
+
<text text-anchor="start" x="266.47" y="-521.4" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
62
|
+
<polygon fill="none" stroke="black" points="166.86,-478.4 166.86,-509.2 439.19,-509.2 439.19,-478.4 166.86,-478.4"/>
|
|
63
|
+
<text text-anchor="start" x="173.86" y="-490.6" font-family="Arial" font-size="14.00">token_count </text>
|
|
64
|
+
<text text-anchor="start" x="254.04" y="-490.6" font-family="Arial" font-size="14.00" fill="#666666">[integer]</text>
|
|
65
|
+
<polygon fill="none" stroke="black" points="166.86,-447.6 166.86,-478.4 439.19,-478.4 439.19,-447.6 166.86,-447.6"/>
|
|
66
|
+
<text text-anchor="start" x="173.86" y="-459.8" font-family="Arial" font-size="14.00">in_working_memory </text>
|
|
67
|
+
<text text-anchor="start" x="303.02" y="-459.8" font-family="Arial" font-size="14.00" fill="#666666">[boolean]</text>
|
|
68
|
+
<polygon fill="none" stroke="black" points="166.86,-416.8 166.86,-447.6 439.19,-447.6 439.19,-416.8 166.86,-416.8"/>
|
|
69
|
+
<text text-anchor="start" x="173.86" y="-429" font-family="Arial" font-size="14.00">robot_id </text>
|
|
70
|
+
<text text-anchor="start" x="228.35" y="-429" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
71
|
+
<polygon fill="none" stroke="black" points="166.86,-386 166.86,-416.8 439.19,-416.8 439.19,-386 166.86,-386"/>
|
|
72
|
+
<text text-anchor="start" x="173.86" y="-398.2" font-family="Arial" font-size="14.00">embedding </text>
|
|
73
|
+
<text text-anchor="start" x="247.03" y="-398.2" font-family="Arial" font-size="14.00" fill="#666666">[vector(2000)]</text>
|
|
74
|
+
<polygon fill="none" stroke="black" points="166.86,-355.2 166.86,-386 439.19,-386 439.19,-355.2 166.86,-355.2"/>
|
|
75
|
+
<text text-anchor="start" x="173.86" y="-367.4" font-family="Arial" font-size="14.00">embedding_dimension </text>
|
|
76
|
+
<text text-anchor="start" x="318.63" y="-367.4" font-family="Arial" font-size="14.00" fill="#666666">[integer]</text>
|
|
77
|
+
</g>
|
|
78
|
+
<!-- public.node_tags->public.nodes -->
|
|
79
|
+
<g id="edge1" class="edge">
|
|
80
|
+
<title>public.node_tags:node_id->public.nodes:id</title>
|
|
81
|
+
<path fill="none" stroke="black" d="M343.41,-958.71C303.63,-949.3 326.97,-880.91 354.55,-839.6 377.24,-805.6 416.46,-837.58 439.19,-803.6 462.48,-768.8 482.06,-709.4 440.19,-709.4"/>
|
|
82
|
+
<polygon fill="black" stroke="black" points="343.27,-958.7 352.73,-964.24 348.57,-959.27 352.88,-959.73 352.88,-959.73 352.88,-959.73 348.57,-959.27 353.69,-955.29 343.27,-958.7"/>
|
|
83
|
+
<text text-anchor="start" x="7" y="-969.8" font-family="Arial" font-size="10.00">FOREIGN KEY (node_id) REFERENCES nodes(id) ON DELETE CASCADE</text>
|
|
84
|
+
</g>
|
|
85
|
+
<!-- public.tags -->
|
|
86
|
+
<g id="node5" class="node">
|
|
87
|
+
<title>public.tags</title>
|
|
88
|
+
<polygon fill="#efefef" stroke="none" points="543.14,-586.2 543.14,-621.8 792.91,-621.8 792.91,-586.2 543.14,-586.2"/>
|
|
89
|
+
<polygon fill="none" stroke="black" points="543.14,-586.2 543.14,-621.8 792.91,-621.8 792.91,-586.2 543.14,-586.2"/>
|
|
90
|
+
<text text-anchor="start" x="566.54" y="-599.6" font-family="Arial Bold" font-size="18.00">public.tags</text>
|
|
91
|
+
<text text-anchor="start" x="645.03" y="-599.6" font-family="Arial" font-size="14.00"> </text>
|
|
92
|
+
<text text-anchor="start" x="676.14" y="-599.6" font-family="Arial" font-size="14.00" fill="#666666">[BASE TABLE]</text>
|
|
93
|
+
<polygon fill="none" stroke="black" points="543.14,-555.4 543.14,-586.2 792.91,-586.2 792.91,-555.4 543.14,-555.4"/>
|
|
94
|
+
<text text-anchor="start" x="550.14" y="-567.6" font-family="Arial" font-size="14.00">id </text>
|
|
95
|
+
<text text-anchor="start" x="564.93" y="-567.6" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
96
|
+
<polygon fill="none" stroke="black" points="543.14,-524.6 543.14,-555.4 792.91,-555.4 792.91,-524.6 543.14,-524.6"/>
|
|
97
|
+
<text text-anchor="start" x="550.14" y="-536.8" font-family="Arial" font-size="14.00">name </text>
|
|
98
|
+
<text text-anchor="start" x="589.05" y="-536.8" font-family="Arial" font-size="14.00" fill="#666666">[text]</text>
|
|
99
|
+
<polygon fill="none" stroke="black" points="543.14,-493.8 543.14,-524.6 792.91,-524.6 792.91,-493.8 543.14,-493.8"/>
|
|
100
|
+
<text text-anchor="start" x="550.14" y="-506" font-family="Arial" font-size="14.00">created_at </text>
|
|
101
|
+
<text text-anchor="start" x="620.19" y="-506" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
102
|
+
</g>
|
|
103
|
+
<!-- public.node_tags->public.tags -->
|
|
104
|
+
<g id="edge2" class="edge">
|
|
105
|
+
<title>public.node_tags:tag_id->public.tags:id</title>
|
|
106
|
+
<path fill="none" stroke="black" d="M626.63,-928.47C761.44,-913.09 383.2,-570.8 542.14,-570.8"/>
|
|
107
|
+
<polygon fill="black" stroke="black" points="626.83,-928.46 616.61,-924.49 621.5,-928.74 617.18,-928.96 617.18,-928.96 617.18,-928.96 621.5,-928.74 617.08,-933.48 626.83,-928.46"/>
|
|
108
|
+
<text text-anchor="start" x="286.65" y="-939" font-family="Arial" font-size="10.00">FOREIGN KEY (tag_id) REFERENCES tags(id) ON DELETE CASCADE</text>
|
|
109
|
+
</g>
|
|
110
|
+
<!-- public.schema_migrations -->
|
|
111
|
+
<g id="node2" class="node">
|
|
112
|
+
<title>public.schema_migrations</title>
|
|
113
|
+
<polygon fill="#efefef" stroke="none" points="720.06,-959.8 720.06,-995.4 1048,-995.4 1048,-959.8 720.06,-959.8"/>
|
|
114
|
+
<polygon fill="none" stroke="black" points="720.06,-959.8 720.06,-995.4 1048,-995.4 1048,-959.8 720.06,-959.8"/>
|
|
115
|
+
<text text-anchor="start" x="727.06" y="-973.2" font-family="Arial Bold" font-size="18.00">public.schema_migrations</text>
|
|
116
|
+
<text text-anchor="start" x="916.51" y="-973.2" font-family="Arial" font-size="14.00"> </text>
|
|
117
|
+
<text text-anchor="start" x="947.63" y="-973.2" font-family="Arial" font-size="14.00" fill="#666666">[BASE TABLE]</text>
|
|
118
|
+
<polygon fill="none" stroke="black" points="720.06,-929 720.06,-959.8 1048,-959.8 1048,-929 720.06,-929"/>
|
|
119
|
+
<text text-anchor="start" x="727.06" y="-941.2" font-family="Arial" font-size="14.00">version </text>
|
|
120
|
+
<text text-anchor="start" x="776.08" y="-941.2" font-family="Arial" font-size="14.00" fill="#666666">[varchar]</text>
|
|
121
|
+
</g>
|
|
122
|
+
<!-- public.robots -->
|
|
123
|
+
<g id="node3" class="node">
|
|
124
|
+
<title>public.robots</title>
|
|
125
|
+
<polygon fill="#efefef" stroke="none" points="178.14,-197.2 178.14,-232.8 427.91,-232.8 427.91,-197.2 178.14,-197.2"/>
|
|
126
|
+
<polygon fill="none" stroke="black" points="178.14,-197.2 178.14,-232.8 427.91,-232.8 427.91,-197.2 178.14,-197.2"/>
|
|
127
|
+
<text text-anchor="start" x="193.54" y="-210.6" font-family="Arial Bold" font-size="18.00">public.robots</text>
|
|
128
|
+
<text text-anchor="start" x="288.03" y="-210.6" font-family="Arial" font-size="14.00"> </text>
|
|
129
|
+
<text text-anchor="start" x="319.15" y="-210.6" font-family="Arial" font-size="14.00" fill="#666666">[BASE TABLE]</text>
|
|
130
|
+
<polygon fill="none" stroke="black" points="178.14,-166.4 178.14,-197.2 427.91,-197.2 427.91,-166.4 178.14,-166.4"/>
|
|
131
|
+
<text text-anchor="start" x="185.14" y="-178.6" font-family="Arial" font-size="14.00">id </text>
|
|
132
|
+
<text text-anchor="start" x="199.93" y="-178.6" font-family="Arial" font-size="14.00" fill="#666666">[bigint]</text>
|
|
133
|
+
<polygon fill="none" stroke="black" points="178.14,-135.6 178.14,-166.4 427.91,-166.4 427.91,-135.6 178.14,-135.6"/>
|
|
134
|
+
<text text-anchor="start" x="185.14" y="-147.8" font-family="Arial" font-size="14.00">name </text>
|
|
135
|
+
<text text-anchor="start" x="224.05" y="-147.8" font-family="Arial" font-size="14.00" fill="#666666">[text]</text>
|
|
136
|
+
<polygon fill="none" stroke="black" points="178.14,-104.8 178.14,-135.6 427.91,-135.6 427.91,-104.8 178.14,-104.8"/>
|
|
137
|
+
<text text-anchor="start" x="185.14" y="-117" font-family="Arial" font-size="14.00">created_at </text>
|
|
138
|
+
<text text-anchor="start" x="255.19" y="-117" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
139
|
+
<polygon fill="none" stroke="black" points="178.14,-74 178.14,-104.8 427.91,-104.8 427.91,-74 178.14,-74"/>
|
|
140
|
+
<text text-anchor="start" x="185.14" y="-86.2" font-family="Arial" font-size="14.00">last_active </text>
|
|
141
|
+
<text text-anchor="start" x="255.18" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[timestamp with time zone]</text>
|
|
142
|
+
<polygon fill="none" stroke="black" points="178.14,-43.2 178.14,-74 427.91,-74 427.91,-43.2 178.14,-43.2"/>
|
|
143
|
+
<text text-anchor="start" x="185.14" y="-55.4" font-family="Arial" font-size="14.00">metadata </text>
|
|
144
|
+
<text text-anchor="start" x="247.4" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[jsonb]</text>
|
|
145
|
+
</g>
|
|
146
|
+
<!-- public.nodes->public.robots -->
|
|
147
|
+
<g id="edge3" class="edge">
|
|
148
|
+
<title>public.nodes:robot_id->public.robots:id</title>
|
|
149
|
+
<path fill="none" stroke="black" d="M450.13,-429.21C494.26,-400.96 481.02,-181.8 428.91,-181.8"/>
|
|
150
|
+
<polygon fill="black" stroke="black" points="450.09,-429.23 439.22,-427.79 444.98,-430.76 440.83,-432.01 440.83,-432.01 440.83,-432.01 444.98,-430.76 441.81,-436.41 450.09,-429.23"/>
|
|
151
|
+
<text text-anchor="start" x="447.19" y="-416.2" font-family="Arial" font-size="10.00">FOREIGN KEY (robot_id) REFERENCES robots(id) ON DELETE CASCADE</text>
|
|
152
|
+
</g>
|
|
153
|
+
</g>
|
|
154
|
+
</svg>
|