remdb 0.3.103__py3-none-any.whl → 0.3.118__py3-none-any.whl
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.
Potentially problematic release.
This version of remdb might be problematic. Click here for more details.
- rem/agentic/context.py +28 -24
- rem/agentic/mcp/tool_wrapper.py +29 -3
- rem/agentic/otel/setup.py +92 -4
- rem/agentic/providers/pydantic_ai.py +88 -18
- rem/agentic/schema.py +358 -21
- rem/agentic/tools/rem_tools.py +3 -3
- rem/api/main.py +85 -16
- rem/api/mcp_router/resources.py +1 -1
- rem/api/mcp_router/server.py +18 -4
- rem/api/mcp_router/tools.py +383 -16
- rem/api/routers/admin.py +218 -1
- rem/api/routers/chat/completions.py +30 -3
- rem/api/routers/chat/streaming.py +143 -3
- rem/api/routers/feedback.py +12 -319
- rem/api/routers/query.py +360 -0
- rem/api/routers/shared_sessions.py +13 -13
- rem/cli/commands/README.md +237 -64
- rem/cli/commands/cluster.py +1300 -0
- rem/cli/commands/configure.py +1 -3
- rem/cli/commands/db.py +354 -143
- rem/cli/commands/process.py +14 -8
- rem/cli/commands/schema.py +92 -45
- rem/cli/main.py +27 -6
- rem/models/core/rem_query.py +5 -2
- rem/models/entities/shared_session.py +2 -28
- rem/registry.py +10 -4
- rem/services/content/service.py +30 -8
- rem/services/embeddings/api.py +4 -4
- rem/services/embeddings/worker.py +16 -16
- rem/services/postgres/README.md +151 -26
- rem/services/postgres/__init__.py +2 -1
- rem/services/postgres/diff_service.py +531 -0
- rem/services/postgres/pydantic_to_sqlalchemy.py +427 -129
- rem/services/postgres/schema_generator.py +205 -4
- rem/services/postgres/service.py +6 -6
- rem/services/rem/parser.py +44 -9
- rem/services/rem/service.py +36 -2
- rem/services/session/reload.py +1 -1
- rem/settings.py +56 -7
- rem/sql/background_indexes.sql +19 -24
- rem/sql/migrations/001_install.sql +252 -69
- rem/sql/migrations/002_install_models.sql +2171 -593
- rem/sql/migrations/003_optional_extensions.sql +326 -0
- rem/sql/migrations/004_cache_system.sql +548 -0
- rem/utils/__init__.py +18 -0
- rem/utils/date_utils.py +2 -2
- rem/utils/schema_loader.py +17 -13
- rem/utils/sql_paths.py +146 -0
- rem/workers/__init__.py +2 -1
- rem/workers/unlogged_maintainer.py +463 -0
- {remdb-0.3.103.dist-info → remdb-0.3.118.dist-info}/METADATA +149 -76
- {remdb-0.3.103.dist-info → remdb-0.3.118.dist-info}/RECORD +54 -48
- rem/sql/migrations/003_seed_default_user.sql +0 -48
- {remdb-0.3.103.dist-info → remdb-0.3.118.dist-info}/WHEEL +0 -0
- {remdb-0.3.103.dist-info → remdb-0.3.118.dist-info}/entry_points.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: remdb
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.118
|
|
4
4
|
Summary: Resources Entities Moments - Bio-inspired memory system for agentic AI workloads
|
|
5
5
|
Project-URL: Homepage, https://github.com/Percolation-Labs/reminiscent
|
|
6
6
|
Project-URL: Documentation, https://github.com/Percolation-Labs/reminiscent/blob/main/README.md
|
|
@@ -156,7 +156,7 @@ docker compose -f docker-compose.prebuilt.yml up -d postgres
|
|
|
156
156
|
# Add --claude-desktop to register with Claude Desktop app
|
|
157
157
|
rem configure --install --claude-desktop
|
|
158
158
|
|
|
159
|
-
# Load quickstart dataset
|
|
159
|
+
# Load quickstart dataset
|
|
160
160
|
rem db load datasets/quickstart/sample_data.yaml
|
|
161
161
|
|
|
162
162
|
# Ask questions
|
|
@@ -168,10 +168,6 @@ rem process ingest datasets/formats/files/bitcoin_whitepaper.pdf --category rese
|
|
|
168
168
|
|
|
169
169
|
# Query ingested content
|
|
170
170
|
rem ask "What is the Bitcoin whitepaper about?"
|
|
171
|
-
|
|
172
|
-
# Try other datasets (use --user-id for multi-tenant scenarios)
|
|
173
|
-
rem db load datasets/domains/recruitment/scenarios/candidate_pipeline/data.yaml --user-id acme-corp
|
|
174
|
-
rem ask --user-id acme-corp "Show me candidates with Python experience"
|
|
175
171
|
```
|
|
176
172
|
|
|
177
173
|
**What you get:**
|
|
@@ -258,23 +254,19 @@ Configuration saved to `~/.rem/config.yaml` (can edit with `rem configure --edit
|
|
|
258
254
|
# Clone datasets repository
|
|
259
255
|
git clone https://github.com/Percolation-Labs/remstack-lab.git
|
|
260
256
|
|
|
261
|
-
# Load quickstart dataset
|
|
257
|
+
# Load quickstart dataset
|
|
262
258
|
rem db load --file remstack-lab/datasets/quickstart/sample_data.yaml
|
|
263
259
|
|
|
264
260
|
# Test with sample queries
|
|
265
261
|
rem ask "What documents exist in the system?"
|
|
266
262
|
rem ask "Show me meetings about API design"
|
|
267
263
|
rem ask "Who is Sarah Chen?"
|
|
268
|
-
|
|
269
|
-
# Try domain-specific datasets (use --user-id for multi-tenant scenarios)
|
|
270
|
-
rem db load --file remstack-lab/datasets/domains/recruitment/scenarios/candidate_pipeline/data.yaml --user-id acme-corp
|
|
271
|
-
rem ask --user-id acme-corp "Show me candidates with Python experience"
|
|
272
264
|
```
|
|
273
265
|
|
|
274
266
|
**Option B: Bring your own data**
|
|
275
267
|
|
|
276
268
|
```bash
|
|
277
|
-
# Ingest your own files
|
|
269
|
+
# Ingest your own files
|
|
278
270
|
echo "REM is a bio-inspired memory system for agentic AI workloads." > test-doc.txt
|
|
279
271
|
rem process ingest test-doc.txt --category documentation --tags rem,ai
|
|
280
272
|
|
|
@@ -288,7 +280,6 @@ rem ask "What do you know about REM from my knowledge base?"
|
|
|
288
280
|
# Test the OpenAI-compatible chat completions API
|
|
289
281
|
curl -X POST http://localhost:8000/api/v1/chat/completions \
|
|
290
282
|
-H "Content-Type: application/json" \
|
|
291
|
-
-H "X-User-Id: demo-user" \
|
|
292
283
|
-d '{
|
|
293
284
|
"model": "anthropic:claude-sonnet-4-5-20250929",
|
|
294
285
|
"messages": [{"role": "user", "content": "What documents did Sarah Chen author?"}],
|
|
@@ -316,14 +307,11 @@ curl -X POST http://localhost:8000/api/v1/chat/completions \
|
|
|
316
307
|
```bash
|
|
317
308
|
cd remstack-lab
|
|
318
309
|
|
|
319
|
-
# Load any dataset
|
|
310
|
+
# Load any dataset
|
|
320
311
|
rem db load --file datasets/quickstart/sample_data.yaml
|
|
321
312
|
|
|
322
313
|
# Explore formats
|
|
323
314
|
rem db load --file datasets/formats/engrams/scenarios/team_meeting/team_standup_meeting.yaml
|
|
324
|
-
|
|
325
|
-
# Try domain-specific examples (use --user-id for multi-tenant scenarios)
|
|
326
|
-
rem db load --file datasets/domains/recruitment/scenarios/candidate_pipeline/data.yaml --user-id acme-corp
|
|
327
315
|
```
|
|
328
316
|
|
|
329
317
|
## See Also
|
|
@@ -477,19 +465,14 @@ REM provides **4 built-in MCP tools** your agents can use:
|
|
|
477
465
|
|
|
478
466
|
### Multi-User Isolation
|
|
479
467
|
|
|
480
|
-
|
|
468
|
+
For multi-tenant deployments, custom agents are **scoped by `user_id`**, ensuring complete data isolation. Use `--user-id` flag when you need tenant separation:
|
|
481
469
|
|
|
482
470
|
```bash
|
|
483
|
-
#
|
|
484
|
-
rem process ingest my-agent.yaml --user-id
|
|
485
|
-
|
|
486
|
-
# User B cannot see User A's agent
|
|
487
|
-
rem ask my-agent "test" --user-id user-b
|
|
488
|
-
# ❌ Error: Schema not found (LOOKUP returns no results for user-b)
|
|
471
|
+
# Create agent for specific tenant
|
|
472
|
+
rem process ingest my-agent.yaml --user-id tenant-a --category agents
|
|
489
473
|
|
|
490
|
-
#
|
|
491
|
-
rem ask my-agent "test" --user-id
|
|
492
|
-
# ✅ Works - LOOKUP finds schema for user-a
|
|
474
|
+
# Query with tenant context
|
|
475
|
+
rem ask my-agent "test" --user-id tenant-a
|
|
493
476
|
```
|
|
494
477
|
|
|
495
478
|
### Advanced: Ontology Extractors
|
|
@@ -717,8 +700,8 @@ POST /api/v1/chat/completions
|
|
|
717
700
|
```
|
|
718
701
|
|
|
719
702
|
**Headers**:
|
|
720
|
-
- `X-Tenant-Id`: Tenant identifier (
|
|
721
|
-
- `X-User-Id`: User identifier
|
|
703
|
+
- `X-Tenant-Id`: Tenant identifier (optional, for multi-tenant deployments)
|
|
704
|
+
- `X-User-Id`: User identifier (optional, uses default if not provided)
|
|
722
705
|
- `X-Session-Id`: Session/conversation identifier
|
|
723
706
|
- `X-Agent-Schema`: Agent schema URI to use
|
|
724
707
|
|
|
@@ -857,82 +840,144 @@ rem serve --log-level debug
|
|
|
857
840
|
|
|
858
841
|
### Database Management
|
|
859
842
|
|
|
860
|
-
|
|
843
|
+
REM uses a **code-as-source-of-truth** approach for database schema management. Pydantic models define the schema, and the database is kept in sync via diff-based migrations.
|
|
861
844
|
|
|
862
|
-
|
|
845
|
+
#### Schema Management Philosophy
|
|
863
846
|
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
847
|
+
**Two migration files only:**
|
|
848
|
+
- `001_install.sql` - Core infrastructure (extensions, functions, KV store)
|
|
849
|
+
- `002_install_models.sql` - Entity tables (auto-generated from Pydantic models)
|
|
867
850
|
|
|
868
|
-
|
|
869
|
-
rem db migrate --install
|
|
851
|
+
**No incremental migrations** (003, 004, etc.) - the models file is always regenerated to match code.
|
|
870
852
|
|
|
871
|
-
|
|
872
|
-
rem db migrate --models
|
|
853
|
+
#### `rem db schema generate` - Regenerate Schema SQL
|
|
873
854
|
|
|
874
|
-
|
|
875
|
-
rem db migrate --background-indexes
|
|
855
|
+
Generate `002_install_models.sql` from registered Pydantic models.
|
|
876
856
|
|
|
877
|
-
|
|
878
|
-
|
|
857
|
+
```bash
|
|
858
|
+
# Regenerate from model registry
|
|
859
|
+
rem db schema generate
|
|
879
860
|
|
|
880
|
-
#
|
|
881
|
-
rem db migrate --sql-dir /path/to/sql
|
|
861
|
+
# Output: src/rem/sql/migrations/002_install_models.sql
|
|
882
862
|
```
|
|
883
863
|
|
|
884
|
-
|
|
864
|
+
This generates:
|
|
865
|
+
- CREATE TABLE statements for each registered entity
|
|
866
|
+
- Embeddings tables (`embeddings_<table>`)
|
|
867
|
+
- KV_STORE triggers for cache maintenance
|
|
868
|
+
- Foreground indexes (GIN for JSONB, B-tree for lookups)
|
|
869
|
+
|
|
870
|
+
#### `rem db diff` - Detect Schema Drift
|
|
885
871
|
|
|
886
|
-
|
|
872
|
+
Compare Pydantic models against the live database using Alembic autogenerate.
|
|
887
873
|
|
|
888
874
|
```bash
|
|
889
|
-
|
|
875
|
+
# Show additive changes only (default, safe for production)
|
|
876
|
+
rem db diff
|
|
877
|
+
|
|
878
|
+
# Show all changes including drops
|
|
879
|
+
rem db diff --strategy full
|
|
880
|
+
|
|
881
|
+
# Show additive + safe type widenings
|
|
882
|
+
rem db diff --strategy safe
|
|
883
|
+
|
|
884
|
+
# CI mode: exit 1 if drift detected
|
|
885
|
+
rem db diff --check
|
|
886
|
+
|
|
887
|
+
# Generate migration SQL for changes
|
|
888
|
+
rem db diff --generate
|
|
890
889
|
```
|
|
891
890
|
|
|
892
|
-
|
|
891
|
+
**Migration Strategies:**
|
|
892
|
+
| Strategy | Description |
|
|
893
|
+
|----------|-------------|
|
|
894
|
+
| `additive` | Only ADD columns/tables/indexes (safe, no data loss) - **default** |
|
|
895
|
+
| `full` | All changes including DROPs (use with caution) |
|
|
896
|
+
| `safe` | Additive + safe column type widenings (e.g., VARCHAR(50) → VARCHAR(256)) |
|
|
893
897
|
|
|
894
|
-
|
|
898
|
+
**Output shows:**
|
|
899
|
+
- `+ ADD COLUMN` - Column in model but not in DB
|
|
900
|
+
- `- DROP COLUMN` - Column in DB but not in model (only with `--strategy full`)
|
|
901
|
+
- `~ ALTER COLUMN` - Column type or constraints differ
|
|
902
|
+
- `+ CREATE TABLE` / `- DROP TABLE` - Table additions/removals
|
|
903
|
+
|
|
904
|
+
#### `rem db apply` - Apply SQL Directly
|
|
905
|
+
|
|
906
|
+
Apply a SQL file directly to the database (bypasses migration tracking).
|
|
895
907
|
|
|
896
908
|
```bash
|
|
897
|
-
|
|
909
|
+
# Apply with audit logging (default)
|
|
910
|
+
rem db apply src/rem/sql/migrations/002_install_models.sql
|
|
911
|
+
|
|
912
|
+
# Preview without executing
|
|
913
|
+
rem db apply --dry-run src/rem/sql/migrations/002_install_models.sql
|
|
914
|
+
|
|
915
|
+
# Apply without audit logging
|
|
916
|
+
rem db apply --no-log src/rem/sql/migrations/002_install_models.sql
|
|
898
917
|
```
|
|
899
918
|
|
|
900
|
-
|
|
919
|
+
#### `rem db migrate` - Initial Setup
|
|
920
|
+
|
|
921
|
+
Apply standard migrations (001 + 002). Use for initial setup only.
|
|
901
922
|
|
|
902
|
-
|
|
923
|
+
```bash
|
|
924
|
+
# Apply infrastructure + entity tables
|
|
925
|
+
rem db migrate
|
|
903
926
|
|
|
904
|
-
|
|
927
|
+
# Include background indexes (HNSW for vectors)
|
|
928
|
+
rem db migrate --background-indexes
|
|
929
|
+
```
|
|
905
930
|
|
|
931
|
+
#### Database Workflows
|
|
932
|
+
|
|
933
|
+
**Initial Setup (Local):**
|
|
906
934
|
```bash
|
|
907
|
-
# Generate
|
|
908
|
-
rem db
|
|
935
|
+
rem db schema generate # Generate from models
|
|
936
|
+
rem db migrate # Apply 001 + 002
|
|
937
|
+
rem db diff # Verify no drift
|
|
938
|
+
```
|
|
909
939
|
|
|
910
|
-
|
|
911
|
-
|
|
940
|
+
**Adding/Modifying Models:**
|
|
941
|
+
```bash
|
|
942
|
+
# 1. Edit models in src/rem/models/entities/
|
|
943
|
+
# 2. Register new models in src/rem/registry.py
|
|
944
|
+
rem db schema generate # Regenerate schema
|
|
945
|
+
rem db diff # See what changed
|
|
946
|
+
rem db apply src/rem/sql/migrations/002_install_models.sql
|
|
912
947
|
```
|
|
913
948
|
|
|
914
|
-
**
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
949
|
+
**CI/CD Pipeline:**
|
|
950
|
+
```bash
|
|
951
|
+
rem db diff --check # Fail build if drift detected
|
|
952
|
+
```
|
|
953
|
+
|
|
954
|
+
**Remote Database (Production/Staging):**
|
|
955
|
+
```bash
|
|
956
|
+
# Port-forward to cluster database
|
|
957
|
+
kubectl port-forward -n <namespace> svc/rem-postgres-rw 5433:5432 &
|
|
958
|
+
|
|
959
|
+
# Override connection for diff check
|
|
960
|
+
POSTGRES__CONNECTION_STRING="postgresql://rem:rem@localhost:5433/rem" rem db diff
|
|
961
|
+
|
|
962
|
+
# Apply changes if needed
|
|
963
|
+
POSTGRES__CONNECTION_STRING="postgresql://rem:rem@localhost:5433/rem" \
|
|
964
|
+
rem db apply src/rem/sql/migrations/002_install_models.sql
|
|
965
|
+
```
|
|
918
966
|
|
|
919
|
-
#### `rem db
|
|
967
|
+
#### `rem db rebuild-cache` - Rebuild KV Cache
|
|
920
968
|
|
|
921
|
-
|
|
969
|
+
Rebuild KV_STORE cache from entity tables (after database restart or bulk imports).
|
|
922
970
|
|
|
923
971
|
```bash
|
|
924
|
-
|
|
925
|
-
rem db schema indexes \
|
|
926
|
-
--models src/rem/models/entities \
|
|
927
|
-
--output rem/src/rem/sql/background_indexes.sql
|
|
972
|
+
rem db rebuild-cache
|
|
928
973
|
```
|
|
929
974
|
|
|
930
975
|
#### `rem db schema validate` - Validate Models
|
|
931
976
|
|
|
932
|
-
Validate Pydantic models for schema generation.
|
|
977
|
+
Validate registered Pydantic models for schema generation.
|
|
933
978
|
|
|
934
979
|
```bash
|
|
935
|
-
rem db schema validate
|
|
980
|
+
rem db schema validate
|
|
936
981
|
```
|
|
937
982
|
|
|
938
983
|
### File Processing
|
|
@@ -1138,14 +1183,11 @@ Test Pydantic AI agent with natural language queries.
|
|
|
1138
1183
|
# Ask a question
|
|
1139
1184
|
rem ask "What documents did Sarah Chen author?"
|
|
1140
1185
|
|
|
1141
|
-
# With context headers
|
|
1142
|
-
rem ask "Find all resources about API design" \
|
|
1143
|
-
--user-id user-123 \
|
|
1144
|
-
--tenant-id acme-corp
|
|
1145
|
-
|
|
1146
1186
|
# Use specific agent schema
|
|
1147
|
-
rem ask "Analyze this contract"
|
|
1148
|
-
|
|
1187
|
+
rem ask contract-analyzer "Analyze this contract"
|
|
1188
|
+
|
|
1189
|
+
# Stream response
|
|
1190
|
+
rem ask "Find all resources about API design" --stream
|
|
1149
1191
|
```
|
|
1150
1192
|
|
|
1151
1193
|
### Global Options
|
|
@@ -1539,6 +1581,37 @@ Generate this structure with: `rem scaffold my-app`
|
|
|
1539
1581
|
| **MCP Prompts** | `@app.mcp_server.prompt()` or `app.mcp_server.add_prompt(fn)` |
|
|
1540
1582
|
| **Models** | `rem.register_models(Model)` then `rem db schema generate` |
|
|
1541
1583
|
| **Agent Schemas** | `rem.register_schema_path("./schemas")` or `SCHEMA__PATHS` env var |
|
|
1584
|
+
| **SQL Migrations** | Place in `sql/migrations/` (auto-detected) |
|
|
1585
|
+
|
|
1586
|
+
### Custom Migrations
|
|
1587
|
+
|
|
1588
|
+
REM automatically discovers migrations from two sources:
|
|
1589
|
+
|
|
1590
|
+
1. **Package migrations** (001-099): Built-in migrations from the `remdb` package
|
|
1591
|
+
2. **User migrations** (100+): Your custom migrations in `./sql/migrations/`
|
|
1592
|
+
|
|
1593
|
+
**Convention**: Place custom SQL files in `sql/migrations/` relative to your project root:
|
|
1594
|
+
|
|
1595
|
+
```
|
|
1596
|
+
my-rem-app/
|
|
1597
|
+
├── sql/
|
|
1598
|
+
│ └── migrations/
|
|
1599
|
+
│ ├── 100_custom_table.sql # Runs after package migrations
|
|
1600
|
+
│ ├── 101_add_indexes.sql
|
|
1601
|
+
│ └── 102_custom_functions.sql
|
|
1602
|
+
└── ...
|
|
1603
|
+
```
|
|
1604
|
+
|
|
1605
|
+
**Numbering**: Use 100+ for user migrations to ensure they run after package migrations (001-099). All migrations are sorted by filename, so proper numbering ensures correct execution order.
|
|
1606
|
+
|
|
1607
|
+
**Running migrations**:
|
|
1608
|
+
```bash
|
|
1609
|
+
# Apply all migrations (package + user)
|
|
1610
|
+
rem db migrate
|
|
1611
|
+
|
|
1612
|
+
# Apply with background indexes (for production)
|
|
1613
|
+
rem db migrate --background-indexes
|
|
1614
|
+
```
|
|
1542
1615
|
|
|
1543
1616
|
## License
|
|
1544
1617
|
|
|
@@ -2,49 +2,50 @@ rem/__init__.py,sha256=bghAeI1VxL6qbYB8kvC39zfc00BlztykdmKiubDYE7w,3079
|
|
|
2
2
|
rem/config.py,sha256=y0-llMfPwICNwRdek6sgxuuKxdfS6k1n-bd4shvyqjU,6442
|
|
3
3
|
rem/mcp_server.py,sha256=OK0XaO2k_7BnVRozOfH_xRL51SkRN9kLoNNp_zrrGeA,1383
|
|
4
4
|
rem/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
-
rem/registry.py,sha256=
|
|
6
|
-
rem/settings.py,sha256=
|
|
5
|
+
rem/registry.py,sha256=AAGcr7oRHiHsX2mu7TL4EgKw39IFea8F-YIgbX58CUM,10545
|
|
6
|
+
rem/settings.py,sha256=yl-J8One1bo9TqWmhO4_XS-HtPl4LLOqgBV_BSuRmVw,45296
|
|
7
7
|
rem/agentic/README.md,sha256=brF1Z1V6s8z5TLoyNPQ3BC5mqDy648QRPOQmGu6Jkzw,21815
|
|
8
8
|
rem/agentic/__init__.py,sha256=-UZiEYpodfD5xDns6L0nYSqK9owr3NxiWsq6vmK1tGk,1268
|
|
9
|
-
rem/agentic/context.py,sha256=
|
|
9
|
+
rem/agentic/context.py,sha256=vHNQdvbvV0JqpM1zfcEESiAs7pwI5lSvS6B5e32C-ec,5441
|
|
10
10
|
rem/agentic/context_builder.py,sha256=AkZPYMFhTWde6DiQ4yGgNmV32qDQQj-13SZnj3ppnFE,12686
|
|
11
11
|
rem/agentic/llm_provider_models.py,sha256=bkBs_6aQ0maerlnQNH5hWv21Os3mX5Q14zXTW_8bGgI,10508
|
|
12
12
|
rem/agentic/query.py,sha256=yBtVT9bCUT9DPKRw9UltzN4o9wgB-Ry-FfW814Eg1WE,3612
|
|
13
13
|
rem/agentic/query_helper.py,sha256=DAr-he5XsJfwrcEzfJCNujWYU6MFvK0JFXee2ulRMQU,2458
|
|
14
|
-
rem/agentic/schema.py,sha256=
|
|
14
|
+
rem/agentic/schema.py,sha256=0BXD42G1d1hjlK0XKcCCPREA4Hzg5TDUSfmBwmxNf2I,22742
|
|
15
15
|
rem/agentic/serialization.py,sha256=zwjyvcGjTHuChG9goRHEVlA3etAekVJGzv9o6Fo7raM,7999
|
|
16
16
|
rem/agentic/agents/README.md,sha256=npq2ENb5dNGYxqGQYTb9E0JquyKcXrMt8kM2q6LRxRk,4972
|
|
17
17
|
rem/agentic/agents/__init__.py,sha256=N4I_-yGieWMl5vEJ94yQ1v5WhQy2Z2-vOdyX3LcTzuk,581
|
|
18
18
|
rem/agentic/agents/sse_simulator.py,sha256=SEWflmJqHTwDzpXzCWTc7enk7bgYgMDk4sW2HolzwBM,16320
|
|
19
19
|
rem/agentic/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
-
rem/agentic/mcp/tool_wrapper.py,sha256=
|
|
20
|
+
rem/agentic/mcp/tool_wrapper.py,sha256=QeJxGcfqZ1ScrYfPSmHk2gIjZB9vQGCLKMguhbIXUm4,4828
|
|
21
21
|
rem/agentic/otel/__init__.py,sha256=IC0lLMmuxXRZrhO9p8-GQ6raZDP9YE3gcuCwl6vBv4c,195
|
|
22
|
-
rem/agentic/otel/setup.py,sha256=
|
|
22
|
+
rem/agentic/otel/setup.py,sha256=l3oczCbcbdAbF2AyeFb1OlMgKdXz8qiE7pYmI6I470g,9580
|
|
23
23
|
rem/agentic/providers/phoenix.py,sha256=eWasZ8Vcf_K8q4xDyVuYhogihvyDQVpObeu0PLVMfCE,24194
|
|
24
|
-
rem/agentic/providers/pydantic_ai.py,sha256=
|
|
24
|
+
rem/agentic/providers/pydantic_ai.py,sha256=7g4kEsX4OaORy0bDfMLeglG6Ycf7EYkLcGROac0llI8,28408
|
|
25
25
|
rem/agentic/tools/__init__.py,sha256=tb_9ml0i2LtEALAJ6h7D91xVEA_8ktDzD4s3nM0MsUE,147
|
|
26
|
-
rem/agentic/tools/rem_tools.py,sha256=
|
|
26
|
+
rem/agentic/tools/rem_tools.py,sha256=xhLohuAsv0AUjXLMXa-n9KchhkHxEi7jq1BsjPBuogw,7344
|
|
27
27
|
rem/api/README.md,sha256=68KtBi1nkXm_J0skGVBhchXP-cLNaBBka6ZhLqAncoA,19998
|
|
28
28
|
rem/api/deps.py,sha256=75c_PZ1XWPanHBds4Ap3JZtLSLtDF_qNMploSgHvdmo,6736
|
|
29
|
-
rem/api/main.py,sha256=
|
|
29
|
+
rem/api/main.py,sha256=_vfKH_DBWuempKs-YOS0gQOUbsHe3l1kEoVSvD-sOkQ,15917
|
|
30
30
|
rem/api/mcp_router/prompts.py,sha256=bVNsJMur6i0oyd38WIr-r0kUNUAlcGG595WVhBDwxik,4077
|
|
31
|
-
rem/api/mcp_router/resources.py,sha256=
|
|
32
|
-
rem/api/mcp_router/server.py,sha256=
|
|
33
|
-
rem/api/mcp_router/tools.py,sha256=
|
|
31
|
+
rem/api/mcp_router/resources.py,sha256=2Ph0psMbCpH6MUJhV-uFSZJQwGbGELE2zoXBt9yOmL4,16194
|
|
32
|
+
rem/api/mcp_router/server.py,sha256=boaxrFqywbiv0-hZ6nOvWrNXYlrG7thtmqa9dSv9sKE,11181
|
|
33
|
+
rem/api/mcp_router/tools.py,sha256=ctxN95VbE2dbmFoyia15oLyWnhR9KnZRhVXdxpNgIgk,35314
|
|
34
34
|
rem/api/middleware/tracking.py,sha256=cA9ChbBQ8-QipLlyGrTUsd7eMtHGzZ9Cp4iEHBgOQiM,6326
|
|
35
|
-
rem/api/routers/admin.py,sha256=
|
|
35
|
+
rem/api/routers/admin.py,sha256=AEvfi5QyfTG_3a8LZ5FPgbOXPajKeIu_5P6oqmLYa1E,14696
|
|
36
36
|
rem/api/routers/auth.py,sha256=cDvPvqmMxr5FRign98K87Rp8GtVD2V9oZWoSPeqnP1o,11918
|
|
37
37
|
rem/api/routers/dev.py,sha256=rLySeGas9USZxMxJiHU4ziaA8EK9aoc8dg7TpJagV-I,2229
|
|
38
|
-
rem/api/routers/feedback.py,sha256=
|
|
38
|
+
rem/api/routers/feedback.py,sha256=vrZxw3sqo1hsqgj5vjxiW71MS_2EHk9tSOP4YIo8UD4,4841
|
|
39
39
|
rem/api/routers/messages.py,sha256=Av-fFeRLn_xMWDv0cdggfy4bw05WIHK0phWtPoffhOw,16292
|
|
40
40
|
rem/api/routers/models.py,sha256=GMhDJzLrWe-gp842F1Vua2XOjZNAcIG-p-tCquJ5FQM,1946
|
|
41
|
-
rem/api/routers/
|
|
41
|
+
rem/api/routers/query.py,sha256=cYV2HoSqMHr7kgeEFhx2GqUt_9Geg756JgJoYrX6OrU,13972
|
|
42
|
+
rem/api/routers/shared_sessions.py,sha256=9vQoQOsQhqWzcoJZ7_dhvi6zJlR5B72LP5THLfm--Ts,12259
|
|
42
43
|
rem/api/routers/chat/__init__.py,sha256=fck9klAzF7HJHNPAhl0B63uSavXvs6h26QhUsByf4JM,113
|
|
43
|
-
rem/api/routers/chat/completions.py,sha256=
|
|
44
|
+
rem/api/routers/chat/completions.py,sha256=4UAWZqRj59SFuY31LMlmTG52lqnGhZTHOqP9dc7TpFk,17631
|
|
44
45
|
rem/api/routers/chat/json_utils.py,sha256=BVRu-7PWIHTbC9Ubq4MfifZ8qYQZpcGhEgFgPVcXXKE,2191
|
|
45
46
|
rem/api/routers/chat/models.py,sha256=lNEs5NnNROSuaMn7KUr4PwHFXmgz9l_1An6G-iWT8mY,3905
|
|
46
47
|
rem/api/routers/chat/sse_events.py,sha256=WGC_x9-4yRm8zyyI42KPwwn0tmm3JP6xZGOq2QJaZcU,15919
|
|
47
|
-
rem/api/routers/chat/streaming.py,sha256=
|
|
48
|
+
rem/api/routers/chat/streaming.py,sha256=zw0XAjV5jv9DWZNvGRM5tyxrvpT7O6UEAnu_cxiZWGk,35270
|
|
48
49
|
rem/auth/README.md,sha256=BpZUqEVYMUpQG4guykyuvmtzlH3_LsGzspuRZS20i8k,8631
|
|
49
50
|
rem/auth/__init__.py,sha256=NuOzrlipfiRUM7lwuEJTzc-b8lYWCxDl_7V82FxElJA,700
|
|
50
51
|
rem/auth/middleware.py,sha256=_55Va07HElp_fhB9ROyI8bhRXCSCVZ7bROw2vXCer1Y,7381
|
|
@@ -55,25 +56,26 @@ rem/auth/providers/microsoft.py,sha256=sv6emYa5B7XTk6gi18n_UCLPDqUmrrsuDnAnWGvJA
|
|
|
55
56
|
rem/cli/README.md,sha256=UxmsXjxmee39xUrE7TRJ093Pfhazi58LhRqLfQsYA8g,11857
|
|
56
57
|
rem/cli/__init__.py,sha256=NazCCnBFZwMkvJgzeGkfYveP_MUpvbqHcOLZihew0-Q,188
|
|
57
58
|
rem/cli/dreaming.py,sha256=yMTRaSwllB5anQ2aWUAYFqej_6jjeZ8eoqh8liDhqfU,11535
|
|
58
|
-
rem/cli/main.py,sha256=
|
|
59
|
-
rem/cli/commands/README.md,sha256=
|
|
59
|
+
rem/cli/main.py,sha256=w4NtuVqc0axV-TVI3rlv0gnXZ0Tou4Qdjbfu76CJ73A,3022
|
|
60
|
+
rem/cli/commands/README.md,sha256=CxTm4pAKVzE780sWn_sAILu2_nH_0oh9whppZvW4bew,9295
|
|
60
61
|
rem/cli/commands/__init__.py,sha256=wKff1WrBXwf-vDXjSvUuk-61Npm5716okVnOQ22FcEk,30
|
|
61
62
|
rem/cli/commands/ask.py,sha256=VTKL-E3_XZ8OWX16RCDAeAPrp28PLyXMgh63CNF-29Q,19389
|
|
62
|
-
rem/cli/commands/
|
|
63
|
-
rem/cli/commands/
|
|
63
|
+
rem/cli/commands/cluster.py,sha256=aE4b8c6qYzZk21HI2lusNGgk4CwPCEZhm0lvDPbc3uo,43490
|
|
64
|
+
rem/cli/commands/configure.py,sha256=nNr_r4TTYw9xncDpaa6T71n2N8I-ffn1UOUSbyLFrn8,16652
|
|
65
|
+
rem/cli/commands/db.py,sha256=5Enkq7CG7fOpIwMGQ_yF4mTEP3wmoZK3ic3jxERi7Fk,24953
|
|
64
66
|
rem/cli/commands/dreaming.py,sha256=2P8nyX9gnRgyCJZrDuyJt5_YAsFmjUGa6dg7OvoLA8k,13292
|
|
65
67
|
rem/cli/commands/experiments.py,sha256=ye8vgxiWokfisTSPDpnGif5MVTx_s-hK6BeQeb5yIh8,47730
|
|
66
68
|
rem/cli/commands/mcp.py,sha256=PiP_zXflZ2lPVgmH3N8EGOWXDSfvNTQJD-MMW3ym3xo,1666
|
|
67
|
-
rem/cli/commands/process.py,sha256=
|
|
69
|
+
rem/cli/commands/process.py,sha256=DCV7KuS3idRkJ7hsl4uxFqdt67RbxuCP3DL9VeqQuFQ,8630
|
|
68
70
|
rem/cli/commands/scaffold.py,sha256=hv2-ozD1bbD8FEky7OdIDzcgu-KISs5ek6APqykdZ6I,1618
|
|
69
|
-
rem/cli/commands/schema.py,sha256=
|
|
71
|
+
rem/cli/commands/schema.py,sha256=oCsRUoih2MC_mpxmj14hsQy0xWLCddSUYcfGnDMlbuw,7325
|
|
70
72
|
rem/cli/commands/serve.py,sha256=ku6z5gxRwmY-vNdNELGPA8aiYyO4QGRgJ_H4wpusd8Y,2926
|
|
71
73
|
rem/models/core/__init__.py,sha256=BBbARx5_7uVz5FuuoPdFm3tbiWZWubs97i3smU0UxXg,1449
|
|
72
74
|
rem/models/core/core_model.py,sha256=aYVx2905n0b6TGLnIiV5YMWO2O8pxHVtLEWljWvURxU,2617
|
|
73
75
|
rem/models/core/engram.py,sha256=CuoilA74hmlgMT2mZCoEEh0jFsMrKUw9wdyFOygBa8E,10135
|
|
74
76
|
rem/models/core/experiment.py,sha256=QboyXIE-I9zLyOw2UZCvN9Sne3uky3Bk_LKTthoR5AI,18977
|
|
75
77
|
rem/models/core/inline_edge.py,sha256=BVOYchWzb5vYRPTBJEKh06YDwzL_NKdvCRg4BtXRn7g,5059
|
|
76
|
-
rem/models/core/rem_query.py,sha256=
|
|
78
|
+
rem/models/core/rem_query.py,sha256=EpD1NdhxgptW81ID1_q2pnYhioM8J4Efx-JFJsNW_i0,8108
|
|
77
79
|
rem/models/entities/__init__.py,sha256=p3eOFNZdlQ_dF0ZdXR9sHPHu_btMd5mZmw0v5iL8uik,1878
|
|
78
80
|
rem/models/entities/domain_resource.py,sha256=9kfsa1ELGG1gpAWlxBGkaWk157pJ8u636aQBi-ZJ9WA,1269
|
|
79
81
|
rem/models/entities/feedback.py,sha256=m8AIm57DD4N4-8M6hI9EwF6rpA_EYE8tNR-sln9vEb8,3483
|
|
@@ -86,7 +88,7 @@ rem/models/entities/ontology_config.py,sha256=TXLARSYEtkBL1o7VDmdEFpRd5rSoLkqZrg
|
|
|
86
88
|
rem/models/entities/resource.py,sha256=FW7R_AylZilb-1iYfZA5MMQw2zA42CUVweKgO-4cwqM,3407
|
|
87
89
|
rem/models/entities/schema.py,sha256=CEcd49kR_6YgaLLKsWaIb2J0KdbVsgYoi_srPgzr9Aw,2945
|
|
88
90
|
rem/models/entities/session.py,sha256=VKeTAZZphrKz379Av1hhUTWfQ-DbxLAt3CfU3aDHfwk,2499
|
|
89
|
-
rem/models/entities/shared_session.py,sha256=
|
|
91
|
+
rem/models/entities/shared_session.py,sha256=PWTH637NHmwziXCgr1BM0KXWLUzHrbfLlYKLH3qdU6A,5901
|
|
90
92
|
rem/models/entities/user.py,sha256=Svew38nvZhhXUeDdE8Np37Ljq41JfwwZIEkgxOB2eY8,2820
|
|
91
93
|
rem/schemas/README.md,sha256=_WH2A78jyLb11xu8q1tu4pDMlgZfE9WjYqrAUbn2BIM,13588
|
|
92
94
|
rem/schemas/__init__.py,sha256=cY7Hqc056Mb3t12nfpkAK6WZDvOP1gk4rv0CK4VbhTk,213
|
|
@@ -121,7 +123,7 @@ rem/services/audio/transcriber.py,sha256=CbUkNr_AyFZ4NImr6giwgDTT_xPmOe3iSr_YPdB
|
|
|
121
123
|
rem/services/content/README.md,sha256=nKOYqYbMljCVRZ55dlGU6Afipo0FVV7YXqT_dV-VXsw,35806
|
|
122
124
|
rem/services/content/__init__.py,sha256=JtfEPROctu3_R5oGdo04PxpgYqXxAz-TbpS8Ejkjdfs,120
|
|
123
125
|
rem/services/content/providers.py,sha256=xKW6Bn_fJpQGtnESufZcLRh7BAjWqSOLVdYiEg6rYDc,27909
|
|
124
|
-
rem/services/content/service.py,sha256=
|
|
126
|
+
rem/services/content/service.py,sha256=PDdLPuN3mlfCPh-PttbPVjOQ63iIWWm4ApTH0TWEM40,29678
|
|
125
127
|
rem/services/dreaming/README.md,sha256=JhzndF6yRP2Eut_AlvukZHV9MSv83V--V2pA0GXXf2g,9100
|
|
126
128
|
rem/services/dreaming/__init__.py,sha256=3j2TBC1_0z8AlCA9jiqsecyzPFaptCUUHsO_RlXrINc,1719
|
|
127
129
|
rem/services/dreaming/affinity_service.py,sha256=ScWKwRIPLywqqL2RFd_TsTg_KKmPb0ngBCpOpmIG7w4,12205
|
|
@@ -130,8 +132,8 @@ rem/services/dreaming/ontology_service.py,sha256=hpP3aCYqsP26taq3__Q2w_jmA9-J1wZ
|
|
|
130
132
|
rem/services/dreaming/user_model_service.py,sha256=oTuqFdNxegWwVGzOOnwdf5YS2IKQYRNW10bV5efG57E,9929
|
|
131
133
|
rem/services/dreaming/utils.py,sha256=ntCXGygJERdH7CW59kudjodBVP6oD4mH42_vH_2powk,1116
|
|
132
134
|
rem/services/embeddings/__init__.py,sha256=Jr22tszCfpmishCnnQrS0MBHxiUK_E7rJmNqTeR_xpI,293
|
|
133
|
-
rem/services/embeddings/api.py,sha256=
|
|
134
|
-
rem/services/embeddings/worker.py,sha256=
|
|
135
|
+
rem/services/embeddings/api.py,sha256=mDkx_-wWOfjI4uuPIaQDLkfdznEdXQFOvx4VK-Ll4oc,4340
|
|
136
|
+
rem/services/embeddings/worker.py,sha256=BdPIsR4hv_epbjpLMg7-n_uje6crvhdfZcVha9EzaxA,13993
|
|
135
137
|
rem/services/fs/README.md,sha256=Rocb3a0uz27q1QXlhT8DQNUzHM6o_ryt4pRREgcvf0Q,18322
|
|
136
138
|
rem/services/fs/__init__.py,sha256=VvFB1SMQLzd0rRatWvhpnFkoOGDBHYdTC63tZkzOy10,1606
|
|
137
139
|
rem/services/fs/examples.py,sha256=ERHJP7RzZ8stetxesILaTvT4gOa9vlkW-e8EP-ZWAM8,5572
|
|
@@ -152,59 +154,63 @@ rem/services/phoenix/__init__.py,sha256=f6h90EHVrQkyS-ZhPknXwbHp_vrZrQ7HgXmCGc1J
|
|
|
152
154
|
rem/services/phoenix/client.py,sha256=2s89La3JKodriJNM1DXax92mR3sRY8ZLM6MiXeQAcK4,33535
|
|
153
155
|
rem/services/phoenix/config.py,sha256=rgFEJ5iENuvBa0_nhEhgz0gW4Sg0uo_fkQMgsnHiTc8,2932
|
|
154
156
|
rem/services/phoenix/prompt_labels.py,sha256=82VIsXgZ51d3YLzHxusmfzd40yl5YOVnddzv_lNFIGg,13953
|
|
155
|
-
rem/services/postgres/README.md,sha256
|
|
156
|
-
rem/services/postgres/__init__.py,sha256=
|
|
157
|
+
rem/services/postgres/README.md,sha256=qPimP6367CvfcuF1DjC0VSL0uoc_ThOVeZ0ioJy_z5Q,21518
|
|
158
|
+
rem/services/postgres/__init__.py,sha256=hPOVs7Gi42qjz9ySu1y1Fmxcyo21UrhVycw_y4YAF-0,563
|
|
159
|
+
rem/services/postgres/diff_service.py,sha256=vffYq6e5Ce_b8yuS01u9r27SYCUnmODa5mH8eeZpInM,19402
|
|
157
160
|
rem/services/postgres/migration_service.py,sha256=2irsWfzczZ0_-wge6ReyCrFrE3HxvnlwKAEp8mWqtQo,14897
|
|
158
|
-
rem/services/postgres/pydantic_to_sqlalchemy.py,sha256=
|
|
161
|
+
rem/services/postgres/pydantic_to_sqlalchemy.py,sha256=Ao1Qh5epVetw8BfEiBmd-xSfUiBOzcROgrfq5BM_hTM,15950
|
|
159
162
|
rem/services/postgres/register_type.py,sha256=KwttMTvCdtLvSyW2YICmZ71BBB4oomIoX9IJT-qyEn8,11169
|
|
160
163
|
rem/services/postgres/repository.py,sha256=CYbAozL7iAjVnpV8HbQ1HNu8UUlgHzvyBds1qTICfQE,15788
|
|
161
|
-
rem/services/postgres/schema_generator.py,sha256=
|
|
162
|
-
rem/services/postgres/service.py,sha256=
|
|
164
|
+
rem/services/postgres/schema_generator.py,sha256=TpINJtEPcrbISbz3HUo7zEI1C-542HEAsf2m5kOuGM8,23906
|
|
165
|
+
rem/services/postgres/service.py,sha256=3CIOP7LuaK4p2rYTyscIXasGLTwjb62HnAGbOCuEm74,27122
|
|
163
166
|
rem/services/postgres/sql_builder.py,sha256=EQZCXBLuOM_trDnr0vwzqJRCKMk9wpZG2ZrY_yBfQMk,10348
|
|
164
167
|
rem/services/rem/README.md,sha256=uNFYDzlxFuYOAE3Qxuiy7OYRPoTIDWT_e3d7FZmVHQ8,15441
|
|
165
168
|
rem/services/rem/__init__.py,sha256=c0Mzd9K2hzeDTldU4IffQPhiuGshfLqdIFp1KQ9ykU4,482
|
|
166
169
|
rem/services/rem/exceptions.py,sha256=9pse9_1XKm7VuiRxZVgHZeD2nm8yabYfw24Fga_mdGc,2440
|
|
167
170
|
rem/services/rem/executor.py,sha256=o30fYs7Y91arcCZ70PurPn-Q_7gXjxZXerk70A-MM4A,10033
|
|
168
|
-
rem/services/rem/parser.py,sha256=
|
|
171
|
+
rem/services/rem/parser.py,sha256=w7jFSzWuNSTrhPDw3s5IH4O0kVT4zwBp0i52RyNEPNs,6896
|
|
169
172
|
rem/services/rem/queries.py,sha256=k-fniVSMBcq4TPUw-g4kp6D9Fbs5DphqUwzAk2wXv5M,5146
|
|
170
173
|
rem/services/rem/query.py,sha256=z4Qcaed1mPG2p-4pazEUlnUFqOEYxrKGYLffwD2-V-c,12178
|
|
171
|
-
rem/services/rem/service.py,sha256=
|
|
174
|
+
rem/services/rem/service.py,sha256=cYPPCZ90S9QRWi_4JxEe9oybdDM8Is7wgYt8EpLoiVY,21093
|
|
172
175
|
rem/services/session/README.md,sha256=WDoVWMRXrSh6wRSlUQ0oIHUItOol65INl86VCNPUOYQ,10446
|
|
173
176
|
rem/services/session/__init__.py,sha256=ODLcjnOjLubJU8ncvZsB4SB2zl-mncQQLDZWILwc0Cs,254
|
|
174
177
|
rem/services/session/compression.py,sha256=XYO7n90COJtLmlqFKNyTBUMHLw68z6J7q40CO_qxVzE,13806
|
|
175
|
-
rem/services/session/reload.py,sha256=
|
|
176
|
-
rem/sql/background_indexes.sql,sha256=
|
|
177
|
-
rem/sql/migrations/001_install.sql,sha256=
|
|
178
|
-
rem/sql/migrations/002_install_models.sql,sha256=
|
|
179
|
-
rem/sql/migrations/
|
|
178
|
+
rem/services/session/reload.py,sha256=MhCielWyhNAP6yqi61q9sc_8CRWAvG2sHBRTvamIcF8,2428
|
|
179
|
+
rem/sql/background_indexes.sql,sha256=Lra21QxTvuDOlf0yoF23VOUiHJLRnNWgu0OOR8OXTGQ,1792
|
|
180
|
+
rem/sql/migrations/001_install.sql,sha256=LPaIStaDwQ39U-mlMqY6qxMoAAdulyB80ReyiPw_TvA,30039
|
|
181
|
+
rem/sql/migrations/002_install_models.sql,sha256=Mzuc8oafgKjAvnvT2Ayan_HuaLISIU5fef5EJF_NoQk,151426
|
|
182
|
+
rem/sql/migrations/003_optional_extensions.sql,sha256=QACy3J50ZgV_4BHNkkT3iswkE1ijc0oCAOgavv6KC5g,12443
|
|
183
|
+
rem/sql/migrations/004_cache_system.sql,sha256=OVmI2yABxuxRwJyde4WN-mxy9SLdwcApXY2ml96eq1U,19674
|
|
180
184
|
rem/utils/AGENTIC_CHUNKING.md,sha256=Z9IyL5yoFTlvamPE5KA7cs0Btoc_6bq8hh7Q_WARlw8,17230
|
|
181
185
|
rem/utils/README.md,sha256=KMgT5nZT023nFWLZz_f3nHSZZkHmmoS7iTLIVRStk3Y,16830
|
|
182
|
-
rem/utils/__init__.py,sha256=
|
|
186
|
+
rem/utils/__init__.py,sha256=ZGMTgR7g-V3fhfgKo791wGBhdxy72xTJSo7Q_xwkQRI,1417
|
|
183
187
|
rem/utils/agentic_chunking.py,sha256=B7TIggqOSeHJ5clPPY7O712Wb1xz52Y_2gCPiEZlWqY,21841
|
|
184
188
|
rem/utils/batch_ops.py,sha256=LgzttGV0O_a8Y70fnsX3XwlSZWZKRTnwBBwxP09BOvw,11689
|
|
185
189
|
rem/utils/chunking.py,sha256=lVHqbO6MKwBf57OzDOIcC9qpT6x4h417E-FQbaibGb4,3809
|
|
186
190
|
rem/utils/clip_embeddings.py,sha256=lEU0H4Yvp2mKtJthMDjdG1t_AKQEYrE_NTyOP9Jae6w,8638
|
|
187
191
|
rem/utils/constants.py,sha256=aX2GwgtaZx3wztsGNa8HFyKxAWNoZlZv9k45gQ7K3Qs,3283
|
|
188
|
-
rem/utils/date_utils.py,sha256=
|
|
192
|
+
rem/utils/date_utils.py,sha256=LiqyiYcvfw8I-zvfDzPEs1PnwHOEXfmqn_6BDqefEBo,5542
|
|
189
193
|
rem/utils/dict_utils.py,sha256=qp5myXSgGV2Daz9X-9SKzQDu2WeQeIBBcgFnqd8VhqY,2905
|
|
190
194
|
rem/utils/embeddings.py,sha256=FnjZFHXgxf__dbubY2HknhDAngizr8j7P28-Sug4-f0,13150
|
|
191
195
|
rem/utils/files.py,sha256=8vMiVljs7kDLfGMvcRtJFUH7_F_z4XYGd9cP0h1G78c,4353
|
|
192
196
|
rem/utils/markdown.py,sha256=zhfSiSRX36vky1b2UOGKsuSr11L2l6Kl_O7iSfwQXBY,401
|
|
193
197
|
rem/utils/mime_types.py,sha256=8KGEuPWVdQ8r1DFLsgiaAgEYqMaaQIk-6lCVOBB1z_A,5346
|
|
194
198
|
rem/utils/model_helpers.py,sha256=Cvqeof9KlhkkBmAFxRLtfsh4m_MQ0N8WukI3IDJcTtw,11743
|
|
195
|
-
rem/utils/schema_loader.py,sha256=
|
|
199
|
+
rem/utils/schema_loader.py,sha256=QN-4ycwANnXlZkmMXIzu5rJdWOp4RSkCS99CTqLkVag,19238
|
|
200
|
+
rem/utils/sql_paths.py,sha256=4bEHU3J3liZdhWYu0WSpCQSo-wfO0sHC_BrJlStRAks,4257
|
|
196
201
|
rem/utils/sql_types.py,sha256=VKGmDhxPP91EnjJ6h78Q2sUvjBulowR1brtgAdACbtE,10622
|
|
197
202
|
rem/utils/user_id.py,sha256=AhrUniMZYDybHT6mcv9RalUS3klobqkoMmPh9ZxiZcU,2107
|
|
198
203
|
rem/utils/vision.py,sha256=8wopXBML-dD-Q-sCatVfCjMq36Fdz9Ism-P1ZQo6rXM,10371
|
|
199
204
|
rem/utils/examples/embeddings_example.py,sha256=_saDR9G8H03FCdJryVv7HAWFhyatVTRYAJJJRcAI9wo,9010
|
|
200
205
|
rem/utils/examples/sql_types_example.py,sha256=HuVFBA_HjF9yPhxUr3fyDE5L9_SsOjDoibdw05M_oIM,6465
|
|
201
206
|
rem/workers/README.md,sha256=k32MnZiNGds5HGyYDUbjDz1Aa4MsOGTX_T_eKKKJTi4,18061
|
|
202
|
-
rem/workers/__init__.py,sha256=
|
|
207
|
+
rem/workers/__init__.py,sha256=cm621Y1-cy_b3xy6fgnXe1pk2WTKWZecBP83CDS_cbI,203
|
|
203
208
|
rem/workers/db_maintainer.py,sha256=y-bLIkJuVu4J8o4BAlkTt9zXXCgh0i5nGWjh0Ne48Tg,2066
|
|
204
209
|
rem/workers/dreaming.py,sha256=UqCf-iBUhzBVBRFj7_DtR6q27oRo7EUoal9qqHLzlo4,17823
|
|
205
210
|
rem/workers/engram_processor.py,sha256=Ws92kAILMLK_np3F1HRmhKKXiruLIvFn3o9MY3V2W8g,10779
|
|
206
211
|
rem/workers/sqs_file_processor.py,sha256=tX8S0yo2n1XGvaZ7JUqeGmtTwxybQqz3wkHT2j6Ak7Y,6597
|
|
207
|
-
|
|
208
|
-
remdb-0.3.
|
|
209
|
-
remdb-0.3.
|
|
210
|
-
remdb-0.3.
|
|
212
|
+
rem/workers/unlogged_maintainer.py,sha256=KhebhXl3s6DwvHnXXEJ45r5tLK9PNj-0KclNIQVQ68s,15817
|
|
213
|
+
remdb-0.3.118.dist-info/METADATA,sha256=K8OY1Eiv1B-h9yUGakHHPrtCYcxJ6tE9BZQCae5pTaE,54733
|
|
214
|
+
remdb-0.3.118.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
215
|
+
remdb-0.3.118.dist-info/entry_points.txt,sha256=gmmrz7tRC1WGUrCMJMg6p5pEP5h5mPYRvWIxp1FYdr0,42
|
|
216
|
+
remdb-0.3.118.dist-info/RECORD,,
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
-- ============================================================================
|
|
2
|
-
-- Migration: 003_seed_default_user.sql
|
|
3
|
-
-- Description: Seed the default system user for CLI and API operations
|
|
4
|
-
--
|
|
5
|
-
-- The default user is derived from settings.test.user_email (test@rem.ai)
|
|
6
|
-
-- using deterministic UUID v5 generation. This ensures consistent user ID
|
|
7
|
-
-- across all environments and test runs.
|
|
8
|
-
--
|
|
9
|
-
-- Default user:
|
|
10
|
-
-- email: test@rem.ai
|
|
11
|
-
-- user_id: 9e7dc22b-13bb-5cea-8aee-f6b8e6dc962f (UUID v5 from DNS namespace)
|
|
12
|
-
--
|
|
13
|
-
-- This user is used when:
|
|
14
|
-
-- - CLI commands run without --user-id flag
|
|
15
|
-
-- - API requests come without X-User-Id header
|
|
16
|
-
-- - Tests run without explicit user context
|
|
17
|
-
-- ============================================================================
|
|
18
|
-
|
|
19
|
-
-- Insert default user (idempotent - skip if exists)
|
|
20
|
-
INSERT INTO users (
|
|
21
|
-
id,
|
|
22
|
-
user_id,
|
|
23
|
-
tenant_id,
|
|
24
|
-
name,
|
|
25
|
-
email,
|
|
26
|
-
role,
|
|
27
|
-
tags,
|
|
28
|
-
metadata,
|
|
29
|
-
created_at,
|
|
30
|
-
updated_at
|
|
31
|
-
) VALUES (
|
|
32
|
-
'9e7dc22b-13bb-5cea-8aee-f6b8e6dc962f'::uuid,
|
|
33
|
-
'9e7dc22b-13bb-5cea-8aee-f6b8e6dc962f',
|
|
34
|
-
'9e7dc22b-13bb-5cea-8aee-f6b8e6dc962f',
|
|
35
|
-
'Default User',
|
|
36
|
-
'test@rem.ai',
|
|
37
|
-
'system',
|
|
38
|
-
ARRAY['system', 'default'],
|
|
39
|
-
'{"description": "Default system user for CLI and API operations without explicit user context"}'::jsonb,
|
|
40
|
-
NOW(),
|
|
41
|
-
NOW()
|
|
42
|
-
) ON CONFLICT (id) DO NOTHING;
|
|
43
|
-
|
|
44
|
-
-- Log migration
|
|
45
|
-
DO $$
|
|
46
|
-
BEGIN
|
|
47
|
-
RAISE NOTICE 'Seeded default user: test@rem.ai (id: 9e7dc22b-13bb-5cea-8aee-f6b8e6dc962f)';
|
|
48
|
-
END $$;
|
|
File without changes
|
|
File without changes
|