-
Notifications
You must be signed in to change notification settings - Fork 0
Integração ISS (Fase 5b)
GaabDevWeb edited this page Jun 6, 2026
·
2 revisions
| Repo | SSOT | Entrega |
|---|---|---|
| ISS |
content/lessons.json, content/**/*.md, jsons/**
|
UPSERT MySQL via ingest |
| KernelBot | BM25, gates, API, UI | Lê MySQL, expõe chat |
Ficheiro: .github/workflows/sync-kernelbot-knowledge.yml
| Job | Script | Função |
|---|---|---|
| 1 | validate-catalog.mjs |
Consistência catálogo |
| 2 | ingest-knowledge.py |
UPSERT knowledge.content
|
| 3 |
verify-kernelbot-sync.mjs + reload-kernelbot.mjs
|
Drift + /reload
|
| Passo | Detalhe |
|---|---|
| Lê markdown | Remove frontmatter YAML |
| Lê JSON |
keywords, concepts, learning_objectives, name
|
| Monta |
build_meta_header() + body |
| UPSERT | 1 row por (discipline, slug)
|
| Limite | MAX_CONTENT_CHARS=4_000_000 |
[CONCEITOS E KEYWORDS DA AULA PARA INDEXAÇÃO LÉXICA]
Disciplina: {discipline}
Título: {title}
Conceitos: {csv}
Keywords: {csv}
Objetivos: {csv separado por ;}
====== FIM DOS METADADOS ======
| Secret | Uso |
|---|---|
| MySQL host/user/pass | Job 2 UPSERT |
KERNELBOT_RELOAD_URL |
Job 3 |
KERNELBOT_RELOAD_TOKEN |
Header reload |
-
GET /health/catalogno KernelBot - Compara chaves catálogo vs
indexed_lesson_keys - Falha CI se drift crítico
-
POST /reloadapós ingest bem-sucedido
| Não faz | Quem faz |
|---|---|
| Chunking SQL | ISS grava documento unificado |
Ler jsons/ directamente |
ISS no Job 2 |
| Auto-sync no boot | CI + /reload
|
| Componente | Função |
|---|---|
engine/lesson_catalog.py |
Carrega manifest ISS |
engine/catalog_sync.py |
Drift + bootstrap |
index_gap |
Pergunta sobre aula que existe no catálogo mas não no índice |
KernelBot — tutor de estudo sobre o material das aulas.
Índice · Home · FAQ · Como contribuir · Visão geral · Backlog · Repositório