# Workplan Planning Map Date: 2026-05-04 ## Purpose This document captures the current sequencing and priority view for `markitect-tool` workplans. State Hub currently supports workstream dependency edges, but it does not yet have native workstream priority/order fields and does not ingest dependency metadata from workplan frontmatter. Until that exists, this file and the workplan frontmatter are the repo source of truth; State Hub dependency edges and descriptions mirror the operational view. ## Priority Scale | Priority | Meaning | | --- | --- | | `P0` | Current mainline work. | | `P1` | Next enabling architecture or implementation work. | | `P2` | High-value follow-on work, start when trigger conditions are met. | | `P3` | Research-lab or security-sensitive extension work. | | `complete` | Finished foundation or completed decision work. | ## Current Ordering | Workplan | Priority | Status | Depends On | Current View | | --- | --- | --- | --- | --- | | `MKTT-WP-0001` | complete | done | none | Repository foundation is complete. | | `MKTT-WP-0002` | complete | done | `MKTT-WP-0001` | Legacy scope extraction is complete. | | `MKTT-WP-0004` | complete | done | `MKTT-WP-0001`, `MKTT-WP-0002` | Contract framework is complete and informs later validation/generation work. | | `MKTT-WP-0003` | complete | done | `MKTT-WP-0001`, `MKTT-WP-0002`, `MKTT-WP-0004` | Core toolkit implementation is complete. | | `MKTT-WP-0006` | complete | done | `MKTT-WP-0004`; task-level trigger: `MKTT-WP-0003-T005` | Optional backend fabric is complete: manifests, capabilities, snapshot identity, interfaces, registry, provenance, and read-only CLI scaffolding. | | `MKTT-WP-0010` | complete | done | `MKTT-WP-0004`; task-level trigger: `MKTT-WP-0003-T006` | Content references, processors, explode/implode, weave/tangle, content classes, and migration examples are complete as the first WP-0010 extension layer. | | `MKTT-WP-0007` | complete | done | `MKTT-WP-0006` | Advanced query and local index backend is complete: AST inspection, optional JSONPath, SQLite snapshots/metadata, FTS5 search, incremental refresh, and local index CLI. | | `MKTT-WP-0013` | complete | done | `MKTT-WP-0003`, `MKTT-WP-0004`, `MKTT-WP-0006`, `MKTT-WP-0007`, `MKTT-WP-0010` | Internal extension framework is complete: characterization tests, canonical processing model, descriptors, registries, lifecycle callbacks, query-engine registry, built-in extension catalog, CLI command specs, and authoring guide. | | `MKTT-WP-0005` | complete | done | `MKTT-WP-0003`, `MKTT-WP-0004` | Runtime context, form state, dynamic rules, workflow integration, and provider-neutral assessment boundary are complete. | | `MKTT-WP-0011` | complete | done | `MKTT-WP-0003`; task-level triggers: `MKTT-WP-0010-T001`, `MKTT-WP-0010-T005` | Markdown dataflow workflow layer is complete: workflow standard, source collectors, binding model, deterministic steps, assisted boundary, safe outputs, CLI, docs, and examples. | | `MKTT-WP-0009` | complete | done | `MKTT-WP-0006` | Access-controlled knowledge gateway is complete: local labels, trust zones, path rules, policy-aware cache query/search, decisions, diagnostics, and external adapter boundaries. | | `MKTT-WP-0014` | complete | done | `MKTT-WP-0009` | Markitect-side enterprise IAM access-control integration is complete: NetKingdom/key-cape-compatible identity claims, flex-auth resource/policy contract, directory group resolution fixtures, decision-log sink, workflow declarations, CLI commands, and external PDP request examples. | | `MKTT-WP-0012` | complete | done | `MKTT-WP-0004`, `MKTT-WP-0010`, `MKTT-WP-0011` | Document function layer is complete: deterministic Markdown-native function descriptors, registry, inline/fenced syntax, pipelines, context bindings, CLI, docs, examples, diagnostics, provenance, and extension descriptor. | | `MKTT-WP-0008` | complete | done | `MKTT-WP-0006`, `MKTT-WP-0007`, `MKTT-WP-0009` | Agent working-memory context cache is complete: context package schema, local registry, package creation from queries/search/manifests, deterministic summaries, namespaces, activation/deactivation/refresh/explain lifecycle, policy re-checks, CLI, docs, and examples. | | `MKTT-WP-0017` | complete | done | `MKTT-WP-0003`, `MKTT-WP-0013` | CLI/API polish and practical adoption track is complete: shell completion, extension discovery, generated CLI/API docs, usecase relevance matrix, E2E fixture matrix, large-corpus smoke coverage, first-use docs, examples index, and command cheat sheet. | | `MKTT-WP-0019` | complete | done | `MKTT-WP-0013`, `MKTT-WP-0017` | Source adapter contract refinement is complete: v1 read-only scope, normalized model fields, package entry point discovery, CLI/API envelopes, fake adapter fixtures, and `markitect-filter` EPUB3 handoff are pinned in `docs/source-adapter-contract.md`. | | `MKTT-WP-0018` | complete | done | `MKTT-WP-0013`, `MKTT-WP-0017`, `MKTT-WP-0019` | Source adapter framework implementation is complete: read-only models, protocol, registry, entry point discovery, extension descriptors, CLI/API, fake adapter fixtures, migration notes, and tests are in place. | | `MKTT-WP-0015` | complete | done | `MKTT-WP-0010`, `MKTT-WP-0011`, `MKTT-WP-0012` | Document function value contracts are complete: typed values, deterministic Markdown/JSON mapping, descriptor output validation, API exports, docs, examples, and tests. | | `MKTT-WP-0016` | complete | done | `MKTT-WP-0008`, `MKTT-WP-0007`, `MKTT-WP-0009`, `MKTT-WP-0013` | Memory graph profile contracts are complete: graph/profile/event models, validation, context-package compilation, CLI, fixture breadth, invalid fixtures, and runtime adapter handoff descriptors. | | `MKTT-WP-0020` | complete | done | `MKTT-WP-0013`, `MKTT-WP-0015` | Render/export adapter contract is complete: descriptors, registry/discovery, request/result/artifact/provenance envelopes, fake deterministic renderer, capability diagnostics, extension descriptors, docs, examples, and tests. | | `MKTT-WP-0021` | complete | done | `MKTT-WP-0010`, `MKTT-WP-0015`, `MKTT-WP-0020` | Render reference and asset manifest contract is complete: passive render unit identities, cross-reference/TOC planning, deterministic asset manifests, source maps, fake-renderer metadata integration, docs, examples, and tests. | ## Dependency Notes The first important nuance is `MKTT-WP-0006`: it should not wait for every task in `MKTT-WP-0003`, because it should shape cache architecture before `P3.7`. It should wait until `MKTT-WP-0003-T005` gives transform/composition enough shape to know what cached identities and invalidation rules must preserve. The second important nuance is `MKTT-WP-0010`: it captures richer content reference, processor, explode/implode, and weave/tangle work. Its task-level trigger `MKTT-WP-0003-T006` is now satisfied. It should inform backend, index, context-memory, and access-control architecture before those become rigid. These are mixed task/workstream dependencies. State Hub does not currently model them natively. `MKTT-WP-0011` captures the practical workflow layer that wires existing primitives together: Markdown sources, selectors, deterministic processors, optional assisted generation hooks, and multiple Markdown outputs. It should not block P3.7, but it should follow the first reference model and processor registry decisions in `MKTT-WP-0010`. `MKTT-WP-0013` captures internal extensibility pressure found while adding optional query, backend, processor, and index features. It should precede major runtime/workflow expansion because it reduces central wiring and gives future features a canonical processing context/result/diagnostic/provenance model. It is not a business dataflow layer; that remains `MKTT-WP-0011`. `MKTT-WP-0012` completed the Quarkdown-inspired document function layer as a deterministic authoring surface over existing Markitect capabilities. Assisted, external, file, network, render/export, and provider-backed functions remain future optional extensions behind local capability and policy gates. `MKTT-WP-0015` captures those optional future extensions explicitly. It should not disturb the deterministic core. Its Quarkdown lesson is the typed value and render pipeline shape: functions can return document values that are mapped back to renderable content, while render/export, media, permissions, and numbering stay explicit extension concerns. `MKTT-WP-0014` completed Markitect-side enterprise IAM integration for the access-control gateway. Central authorization administration remains optional external-service scope; Markitect now provides resource registration, policy request, decision, diagnostics, local development adapter contracts, workflow declarations, and CLI inspection/mapping commands. Remaining Markitect workplans should depend only on Markitect-local contracts and adapter protocols. A live flex-auth service can improve enterprise deployment, central policy administration, and durable audit, but it is not a prerequisite for the document function layer or local agent context packages. Remaining Markitect workplans, including the future `MKTT-WP-0015` extension track, should keep this policy posture: - use `AccessPolicyGateway`, `PolicySubject`, `PolicyObject`, and `PolicyDecision` as local contracts - support local label policy and deterministic test fixtures first - treat flex-auth, OpenFGA, OPA, Cedar, Keycloak, Entra, and other external systems as optional adapters - never make external IAM or authorization services required for core Markdown parsing, deterministic functions, workflows, cache queries, or context package lifecycle `MKTT-WP-0008` completed the local agent working-memory package layer. It deliberately implements explicit, inspectable context packages rather than hidden ambient agent memory. LLM-assisted summaries, embeddings, vector stores, remote registries, retention/decay, and reviewed long-term identity packages remain future optional extensions. `MKTT-WP-0016` captures the next memory architecture layer. It should extend the context package model into reasoning graphs, conversational event paths, knowledge graphs, and deployment blueprints with operational parameters such as memory size, latency, retention, refresh, compaction, activation budgets, and policy reauthorization. It should compile graph neighborhoods into `ContextPackage` objects rather than replacing the WP-0008 package layer. `MKTT-WP-0017` is the current practical-adoption polish track. It should run before the remaining advanced extension work because users and agents need a complete, documented, shell-friendly, test-backed public surface before the tool grows further. `MKTT-WP-0019` completed the source-adapter refinement track. It pins the field-level normalized model semantics, package entry point discovery, read protocol behavior, CLI/API envelopes, fake adapter fixtures, and `markitect-filter` handoff criteria in `docs/source-adapter-contract.md`. The v1 contract is read-only; writer/export adapters belong in later format-specific work once preservation semantics are explicit. `MKTT-WP-0018` completed the source-adapter implementation track. The v1 read-only contract now has public models, protocol types, registry/discovery, extension descriptors, `mkt source` commands, API exports, fake adapter fixtures, and sibling-repo migration notes. Concrete EPUB3 extraction remains `markitect-filter` scope. `MKTT-WP-0015` has been narrowed to document-function typed value contracts. The former render-and-function extension scope is split across native workplans: `MKTT-WP-0020` owns render/export adapter contracts, `MKTT-WP-0021` owns passive render reference and asset manifests, `MQD-WP-0001` owns concrete Quarkdown adapter implementation in `markitect-quarkdown`, and `MKTF-WP-0003` owns read-side source attachment metadata compatibility in `markitect-filter`. This preserves the `markitect-filter` read-only boundary and avoids pulling renderer execution into `markitect-tool`. ## State Hub Mirror Native State Hub dependency edges should mirror the whole-workstream dependencies: - `MKTT-WP-0002 -> MKTT-WP-0001` - `MKTT-WP-0004 -> MKTT-WP-0001` - `MKTT-WP-0004 -> MKTT-WP-0002` - `MKTT-WP-0003 -> MKTT-WP-0001` - `MKTT-WP-0003 -> MKTT-WP-0002` - `MKTT-WP-0003 -> MKTT-WP-0004` - `MKTT-WP-0006 -> MKTT-WP-0004` - `MKTT-WP-0010 -> MKTT-WP-0004` - `MKTT-WP-0007 -> MKTT-WP-0006` - `MKTT-WP-0005 -> MKTT-WP-0003` - `MKTT-WP-0005 -> MKTT-WP-0004` - `MKTT-WP-0011 -> MKTT-WP-0003` - `MKTT-WP-0009 -> MKTT-WP-0006` - `MKTT-WP-0013 -> MKTT-WP-0003` - `MKTT-WP-0013 -> MKTT-WP-0004` - `MKTT-WP-0013 -> MKTT-WP-0006` - `MKTT-WP-0013 -> MKTT-WP-0007` - `MKTT-WP-0013 -> MKTT-WP-0010` - `MKTT-WP-0012 -> MKTT-WP-0004` - `MKTT-WP-0012 -> MKTT-WP-0010` - `MKTT-WP-0012 -> MKTT-WP-0011` - `MKTT-WP-0014 -> MKTT-WP-0009` - `MKTT-WP-0008 -> MKTT-WP-0006` - `MKTT-WP-0008 -> MKTT-WP-0007` - `MKTT-WP-0008 -> MKTT-WP-0009` - `MKTT-WP-0015 -> MKTT-WP-0010` - `MKTT-WP-0015 -> MKTT-WP-0011` - `MKTT-WP-0015 -> MKTT-WP-0012` - `MKTT-WP-0016 -> MKTT-WP-0008` - `MKTT-WP-0016 -> MKTT-WP-0007` - `MKTT-WP-0016 -> MKTT-WP-0009` - `MKTT-WP-0016 -> MKTT-WP-0013` - `MKTT-WP-0017 -> MKTT-WP-0003` - `MKTT-WP-0017 -> MKTT-WP-0013` - `MKTT-WP-0019 -> MKTT-WP-0013` - `MKTT-WP-0019 -> MKTT-WP-0017` - `MKTT-WP-0018 -> MKTT-WP-0013` - `MKTT-WP-0018 -> MKTT-WP-0017` - `MKTT-WP-0018 -> MKTT-WP-0019` - `MKTT-WP-0020 -> MKTT-WP-0013` - `MKTT-WP-0020 -> MKTT-WP-0015` - `MKTT-WP-0021 -> MKTT-WP-0010` - `MKTT-WP-0021 -> MKTT-WP-0015` - `MKTT-WP-0021 -> MKTT-WP-0020`