Files
infospace-bench/workplans/IB-WP-0006-markitect-tool-adapter.md
2026-05-14 14:53:16 +02:00

84 lines
2.2 KiB
Markdown

---
id: IB-WP-0006
type: workplan
title: "Markitect Tool Adapter And Markdown Artifact Validation"
domain: markitect
repo: infospace-bench
status: done
owner: markitect
topic_slug: markitect
created: "2026-05-14"
updated: "2026-05-14"
state_hub_workstream_slug: "ib-wp-0006-markitect-tool-adapter"
state_hub_workstream_id: "713415b0-0c14-4367-8217-26c729648aec"
---
# IB-WP-0006 — Markitect Tool Adapter And Markdown Artifact Validation
## Goal
Make `markitect-tool` the syntax-layer dependency of `infospace-bench` through
a thin application adapter.
## Tasks
### T01 — Add dependency and adapter boundary
```task
id: IB-WP-0006-T01
status: done
priority: high
state_hub_task_id: "b438be61-6d2a-44f9-b235-2b415e9f4bca"
```
- Add a local development dependency on `markitect-tool`
- Create `src/infospace_bench/markdown_adapter.py`
- Keep the adapter narrow: parse, section extraction, schema/contract validation,
diagnostics
### T02 — Parse Markdown artifacts through `markitect-tool`
```task
id: IB-WP-0006-T02
status: done
priority: high
state_hub_task_id: "d37d6be3-ea04-4279-a113-086ab4fb617d"
```
- Replace ad hoc assumptions about Markdown artifacts with parsed document
objects from `markitect-tool`
- Preserve `KnowledgeArtifact` as the application-level manifest object
- Add tests for heading extraction and frontmatter handling
### T03 — Validate artifact contracts
```task
id: IB-WP-0006-T03
status: done
priority: high
state_hub_task_id: "74a78679-4ef2-4b6b-a80c-b40119d9f90e"
```
- Support configured schema/contract references from `infospace.yaml`
- Return validation diagnostics in `InfospaceError`-compatible shapes
- Add tests for valid and invalid artifact fixtures
### T04 — CLI inspection integration
```task
id: IB-WP-0006-T04
status: done
priority: medium
state_hub_task_id: "99b4e2ca-d9be-40a5-8b10-0b0f3c18fb19"
```
- Extend `inspect` or add `validate` CLI behavior
- Keep output JSON and scriptable
- Document how `infospace-bench` delegates syntax behavior to `markitect-tool`
## Acceptance
- `infospace-bench` imports `markitect_tool` only through the adapter
- Markdown parsing and validation are tested through real artifact fixtures
- No low-level Markdown parser logic is introduced in `infospace-bench`