- Remove KCL ecosystem (~220 files deleted) - Migrate all infrastructure to Nickel schema system - Consolidate documentation: legacy docs → provisioning/docs/src/ - Add CI/CD workflows (.github/) and Rust build config (.cargo/) - Update core system for Nickel schema parsing - Update README.md and CHANGES.md for v5.0.0 release - Fix pre-commit hooks: end-of-file, trailing-whitespace - Breaking changes: KCL workspaces require migration - Migration bridge available in docs/src/development/
105 lines
3.0 KiB
Plaintext
105 lines
3.0 KiB
Plaintext
# Knowledge Base Schema for RAG Integration with SurrealDB
|
|
# Defines document structures for best practices and extension metadata
|
|
# stored in the vector database with embeddings for semantic search
|
|
|
|
# Document types
|
|
let DocType = [
|
|
"best_practice",
|
|
"extension_metadata",
|
|
"deployment_guide",
|
|
"troubleshooting",
|
|
] | Array;
|
|
|
|
# Base document metadata (common to all knowledge documents)
|
|
let DocumentMetadata = {
|
|
source_path | String,
|
|
doc_type | DocType,
|
|
category | String,
|
|
tags | Array,
|
|
version | String,
|
|
created_at | String,
|
|
updated_at | String,
|
|
};
|
|
|
|
# Best Practice document structure
|
|
let BestPracticeDoc = {
|
|
id | String,
|
|
title | String,
|
|
description | String,
|
|
category | String, # deployment, security, reliability, operations, architecture, quality
|
|
relevance | Number, # 0-100 relevance score
|
|
tags | Array, # categorization tags
|
|
source | String, # source reference
|
|
implementation_notes | Array, # practical implementation details
|
|
related_practices | Array, # IDs of related best practices
|
|
|
|
# RAG fields
|
|
content | String, # full text for embedding
|
|
embedding | Array, # vector embedding (1536-dim)
|
|
chunk_index | Number, # if document is chunked
|
|
source_path | String, # file location of source
|
|
indexed_at | String, # timestamp when indexed
|
|
} & DocumentMetadata;
|
|
|
|
# Extension Metadata document structure
|
|
let ExtensionMetadataDoc = {
|
|
id | String,
|
|
name | String,
|
|
version | String,
|
|
category | String, # provider, taskserv
|
|
description | String,
|
|
dependencies | Array, # names of extensions this depends on
|
|
tags | Array,
|
|
best_practices | Array, # IDs of best practices that apply
|
|
|
|
# Additional metadata
|
|
author | String,
|
|
license | String,
|
|
documentation_url | String,
|
|
repository_url | String,
|
|
|
|
# Dependency graph information
|
|
dependency_count | Number, # number of direct dependencies
|
|
dependents | Array, # extensions that depend on this
|
|
initialization_order | Number, # position in topological sort
|
|
|
|
# RAG fields
|
|
content | String, # full text for embedding
|
|
embedding | Array, # vector embedding (1536-dim)
|
|
source_path | String, # file location of metadata.ncl
|
|
indexed_at | String, # timestamp when indexed
|
|
} & DocumentMetadata;
|
|
|
|
# Document relationship (for graph structure)
|
|
let DocumentRelationship = {
|
|
source_id | String,
|
|
target_id | String,
|
|
relationship_type | ["relates_to", "depends_on", "implements", "extends"],
|
|
strength | Number, # 0-1 relevance strength
|
|
created_at | String,
|
|
};
|
|
|
|
# Knowledge base statistics (metadata about the index)
|
|
let KnowledgeBaseStats = {
|
|
namespace | String,
|
|
database | String,
|
|
total_documents | Number,
|
|
by_doc_type | {
|
|
best_practice | Number,
|
|
extension_metadata | Number,
|
|
_,
|
|
},
|
|
embedding_dimension | Number,
|
|
total_relationships | Number,
|
|
last_indexed_at | String,
|
|
vector_index_status | ["healthy", "degraded", "error"],
|
|
};
|
|
|
|
{
|
|
DocumentMetadata,
|
|
BestPracticeDoc,
|
|
ExtensionMetadataDoc,
|
|
DocumentRelationship,
|
|
KnowledgeBaseStats,
|
|
}
|