Conversation
Ensure the subject fact shape passes strict validation so FACT-EXAMPLE-PAIRED-MODEL upserts no longer fail with generic query errors during sync.
There was a problem hiding this comment.
Pull request overview
This PR updates KB seed metadata to point at canonical documentation artifacts, refreshes generated symbol metadata timestamps, and cleans out legacy .sisyphus notepads/evidence files.
Changes:
- Update
scripts/populate-kb.tsentitysourcefields to reference in-repo ADR/flag/event docs instead of removed.sisyphusplan files. - Refresh
documentation/symbols.yamlcoordinates/timestamps and adjust one symbol’s recorded span. - Tighten an example fact by adding
subject_key, and remove legacy.sisyphusnotepads/evidence plus a dead ADR reference.
Reviewed changes
Copilot reviewed 18 out of 19 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| scripts/populate-kb.ts | Updates seeded entity source fields to point at canonical docs (but currently introduces/keeps ID collisions with existing doc entities). |
| documentation/symbols.yaml | Regenerates coordinatesGeneratedAt timestamps and updates one symbol’s recorded line span. |
| documentation/facts/FACT-EXAMPLE-PAIRED-MODEL.md | Adds subject_key to align with strict fact_kind: subject shape. |
| documentation/adr/ADR-005.md | Removes a reference to a now-removed .sisyphus document. |
| .sisyphus/notepads/type-safety-audit/learnings.md | Deleted legacy notepad content. |
| .sisyphus/notepads/type-safety-audit/issues.md | Deleted legacy notepad content. |
| .sisyphus/notepads/traceability-consumer-scope/learnings.md | Deleted legacy notepad content. |
| .sisyphus/notepads/opencode-plugin-toast-and-architecture-plan/learnings.md | Deleted legacy notepad content. |
| .sisyphus/notepads/opencode-plugin-toast-and-architecture-plan/debug-toast-tests.md | Deleted legacy debug note. |
| .sisyphus/notepads/opencode-plugin-toast-and-architecture-plan/debug-toast-diagnostics.md | Deleted legacy debug note. |
| .sisyphus/notepads/opencode-plugin-toast-and-architecture-plan/debug-toast-blocking.md | Deleted legacy debug note. |
| .sisyphus/evidence/task-7-release-dryrun-rerun.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/task-7-release-dryrun-happy.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/task-4-startup-wireup.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/task-4-startup-wireup-fallback.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/task-1-truth-table.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/task-1-truth-table-rejections.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/task-1-startup-config.txt | Deleted legacy evidence artifact. |
| .sisyphus/evidence/.gitkeep | (Listed in PR) Evidence folder placeholder handling. |
| properties: { | ||
| title: "Agent queries requirements from KB via MCP kb_query tool", | ||
| status: "passing", | ||
| source: ".sisyphus/plans/kibi-v0.md", | ||
| source: "scripts/populate-kb.ts", | ||
| tags: ["mcp", "query", "agent"], |
There was a problem hiding this comment.
SCEN-001 here conflicts with documentation/scenarios/SCEN-001.md (same id, different title/status). This script upserts directly into .kb/branches/main, so whichever representation runs last wins. Consider removing/renaming this seeded scenario id or aligning it with the documented scenario and using documentation/scenarios/SCEN-001.md as the source.
| title: "Use Bun/Node.js as CLI wrapper around SWI-Prolog subprocess", | ||
| status: "accepted", | ||
| source: ".sisyphus/plans/kibi-v0.md", | ||
| source: "scripts/populate-kb.ts", |
There was a problem hiding this comment.
PR title mentions “briefing contracts” and “logging for sync failures”, but the diff here is limited to KB population source metadata, symbols manifest timestamps, and a fact frontmatter field. If there are intended changes to briefing tool schemas/logging, they appear to be missing from this PR; otherwise, consider updating the PR title to match the actual changes.
| properties: { | ||
| title: "Use Bun/Node.js as CLI wrapper around SWI-Prolog subprocess", | ||
| status: "accepted", | ||
| source: ".sisyphus/plans/kibi-v0.md", | ||
| source: "scripts/populate-kb.ts", | ||
| tags: ["cli", "bun", "nodejs"], |
There was a problem hiding this comment.
ADR-002 in this seed list conflicts with the existing documentation/adr/ADR-002.md (same id, different title/content). Running this script will upsert one of them over the other, making KB state nondeterministic depending on execution order. Consider either aligning this entry to the documentation ADR (including source) or renaming/removing this seeded ADR id to avoid collisions with extracted documentation entities.
| @@ -243,7 +243,7 @@ const entities: EntityDef[] = [ | |||
| title: | |||
| "vscode-full-features: full VS Code extension with graph visualization", | |||
| status: "inactive", | |||
There was a problem hiding this comment.
FLAG-001 now cites documentation/flags/FLAG-001.md, but this seeded entity’s status is inactive while the referenced markdown has status: active. If the doc is meant to be canonical, the seeded status should match (or the source should point at the canonical inactive definition).
| status: "inactive", | |
| status: "active", |
|
@copilot apply changes based on the comments in this thread in a separate PR |
- SCEN-001: align title/status/source/tags with documentation/scenarios/SCEN-001.md - ADR-002: align title/source/tags with documentation/adr/ADR-002.md - FLAG-001: fix status inactive→active to match documentation/flags/FLAG-001.md Ensures KB state is deterministic regardless of script vs doc sync order. Agent-Logs-Url: https://github.com/Looted/kibi/sessions/60eb6884-c2bc-4d26-ac93-22118435c2dc Co-authored-by: Looted <6255880+Looted@users.noreply.github.com>
fix(kb): align populate-kb.ts seed entries with canonical documentation
No description provided.