drawspec 0.4.2__tar.gz → 0.4.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {drawspec-0.4.2 → drawspec-0.4.3}/CHANGELOG.md +15 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/Makefile +4 -1
- drawspec-0.4.3/PKG-INFO +332 -0
- drawspec-0.4.3/README.md +292 -0
- drawspec-0.4.3/docs/readme/chart-bars-dark.png +0 -0
- drawspec-0.4.3/docs/readme/chart-bars-light.png +0 -0
- drawspec-0.4.3/docs/readme/entities-orders-dark.png +0 -0
- drawspec-0.4.3/docs/readme/entities-orders-light.png +0 -0
- drawspec-0.4.3/docs/readme/fishbone-flaky-ci-dark.png +0 -0
- drawspec-0.4.3/docs/readme/fishbone-flaky-ci-light.png +0 -0
- drawspec-0.4.3/docs/readme/flow-retry-dark.png +0 -0
- drawspec-0.4.3/docs/readme/flow-retry-light.png +0 -0
- drawspec-0.4.3/docs/readme/gantt-migration-dark.png +0 -0
- drawspec-0.4.3/docs/readme/gantt-migration-light.png +0 -0
- drawspec-0.4.3/docs/readme/mindmap-offsite-dark.png +0 -0
- drawspec-0.4.3/docs/readme/mindmap-offsite-light.png +0 -0
- drawspec-0.4.3/docs/readme/sankey-budget-dark.png +0 -0
- drawspec-0.4.3/docs/readme/sankey-budget-light.png +0 -0
- drawspec-0.4.3/docs/readme/sequence-checkout-dark.png +0 -0
- drawspec-0.4.3/docs/readme/sequence-checkout-light.png +0 -0
- drawspec-0.4.3/docs/readme/sequence-dns-dark.png +0 -0
- drawspec-0.4.3/docs/readme/sequence-dns-light.png +0 -0
- drawspec-0.4.3/docs/readme/states-ticket-dark.png +0 -0
- drawspec-0.4.3/docs/readme/states-ticket-light.png +0 -0
- drawspec-0.4.3/docs/readme/venn-telemetry-dark.png +0 -0
- drawspec-0.4.3/docs/readme/venn-telemetry-light.png +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/pyproject.toml +1 -1
- {drawspec-0.4.2 → drawspec-0.4.3}/server.json +2 -2
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/__init__.py +1 -1
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_docs.py +19 -6
- drawspec-0.4.3/tools/readme.py +55 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/uv.lock +1 -1
- drawspec-0.4.2/PKG-INFO +0 -472
- drawspec-0.4.2/README.md +0 -432
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/settings.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/continue/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/continue/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/continue/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/coverage-gaps/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/coverage-gaps/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/coverage-gaps/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/coverage-gaps/scripts/analyze_coverage.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/dep-upgrade/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/dep-upgrade/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/dep-upgrade/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/dep-upgrade/scripts/compare_lockfile.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/design/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/design/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/design/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/design/references/template-plan.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/design/references/template-specification-tail.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/design/scripts/validate_plan.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/execution/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/execution/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/execution/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/execution/references/template.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/gate-check/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/gate-check/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/gate-check/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/gate-check/references/gate-grammar.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/gate-check/scripts/run_gate.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/references/pr-review-loop.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/references/projects-detection.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/scripts/query_pr_state.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/github/scripts/query_project_type.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/.bundle-version +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/AGENTS.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/agents/worker.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/budget_check.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/check_skill_workshop_loaded.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/check_update.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/claim_task.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/detect_surface.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/gate_run.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/gate_target.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/github_channel.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/mark_skill_workshop_loaded.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/mark_skill_workshop_loaded_from_prompt.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/open_task_pr.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/outline.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/rebase_stack.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/rescue_snapshot.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/statusline_capture.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/worker_postcheck.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/workspace_list.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/bin/worktree_probe.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/claiming-internals.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/evidence-gates.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/github-automation.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/queue-seeding.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/quota-governance.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/state-layout.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/references/worker-loop.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/arsenal_config.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/arsenal_migrate.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/create_reader.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/gate_evidence.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/handle_sync.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/issue_for_task.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/issue_import.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/query_status.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/queue_hooks.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/scripts/task_select.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/session/handover.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/assets/workflows/arsenal-queue.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/init/scripts/init.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/mutmut-report/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/mutmut-report/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/mutmut-report/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/mutmut-report/scripts/analyze_mutmut.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/pypi-release/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/pypi-release/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/pypi-release/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/pypi-release/scripts/validate_release.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/python-bootstrap/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/python-bootstrap/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/python-bootstrap/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/python-bootstrap/references/canonical-config.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/python-bootstrap/scripts/analyze_project.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-add/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-add/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-add/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-add/references/payload-template.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-add/scripts/new_task.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-status/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-status/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/queue-status/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/review/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/review/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/review/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/review/references/template.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/references/auto-fire-setup.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/references/handoff-mode.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/references/retrospective-rubric.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/scripts/create_handoff.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/session-end/scripts/query_session_history.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/ship/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/ship/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/ship/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/ship/references/template.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/specify/.arsenal-vendored +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/specify/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/specify/evals/loading_verification.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/specify/references/template.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.claude/skills/specify/scripts/validate_spec.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.dockerignore +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/ISSUE_TEMPLATE/kind_or_field_request.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/dependabot.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/pull_request_template.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/workflows/arsenal-queue.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/workflows/ci.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.github/workflows/release.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/.gitignore +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/AGENTS.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/CLAUDE.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/CONTRIBUTING.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/Dockerfile +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/LICENSE +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/_config.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/config.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/session/handover.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-0727.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-0e20.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-0e91.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-1270.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-1291.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-1b55.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-1c11.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-1c47.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-1d28.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-2158.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-21c8.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-2382.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-2f7f.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-2f92.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-30b0.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-38d8.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-3b60.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-3ecf.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-4c51.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-4e89.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-4f9b.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-52fa.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-533d.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-666f.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-6e34.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-70ef.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-7bfe.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-825e.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-88b7.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-9dd6.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-a204.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-a63e.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-b569.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-b67b.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-b7a8.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-b94c.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-c107.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-dcd5.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-e854.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-e93c.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-ee92.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-f0f8.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-f75a.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/lo-fbbb.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-1a23523c.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-2117d467.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-29944b23.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-2f4aa14a.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-36a712a2.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-4796518d.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-4a1b3b93.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-4b992703.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-5355943b.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-5641cbd3.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-5e82a719.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-629fc7cd.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-641a4cdc.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-7e3d313a.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-875d4d3f.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-99eb4b61.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-9b329b00.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-ae407597.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-caeb21fc.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-df2996f3.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-e783b178.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_history/t-f26679ad.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/arsenal/tasks/_migrated-history.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/.bundle-version +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/AGENTS.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/agents/worker.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/budget_check.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/check_skill_workshop_loaded.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/check_update.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/claim_task.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/detect_surface.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/gate_run.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/gate_target.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/github_channel.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/mark_skill_workshop_loaded.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/mark_skill_workshop_loaded_from_prompt.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/open_task_pr.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/outline.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/rebase_stack.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/rescue_snapshot.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/statusline_capture.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/worker_postcheck.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/workspace_list.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/bin/worktree_probe.sh +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/claiming-internals.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/evidence-gates.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/github-automation.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/queue-seeding.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/quota-governance.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/state-layout.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/references/worker-loop.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/arsenal_config.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/arsenal_migrate.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/create_reader.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/gate_evidence.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/handle_sync.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/issue_for_task.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/issue_import.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/query_status.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/queue_hooks.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/scripts/task_select.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/session/handover.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/claude-arsenal/workflows/arsenal-queue.yml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/README.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-001.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-002.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-003.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-004.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-005.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-006.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-007.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-008.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-009.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-010.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-011.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-012.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-013.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-014.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-015.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-016.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-017.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-018.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-019.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-020.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-021.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-022.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-023.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-024.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-025.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-026.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-027.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-028.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-029.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-030.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-031.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-032.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-033.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-034.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-035.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-036.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-037.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-038.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-039.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-040.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-041.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-042.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-043.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-044.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-045.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-046.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-047.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-048.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-049.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-050.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-051.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-052.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-053.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-054.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-055.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-056.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-057.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-058.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-059.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-060.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-061.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-062.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-063.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-064.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-065.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-066.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-067.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-068.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-069.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-070.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-071.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-072.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-073.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-074.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-075.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-076.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-077.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-078.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-079.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-080.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-081.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-082.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-083.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-084.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-085.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-086.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/fixtures/fixture-087.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/corpus/metrics.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/brief.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/claude-arsenal-logo.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/cli.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/format.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/argument-congestion.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/argument-contract.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/argument-homework.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/argument-readmissions.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/barmodel-bus.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/barmodel-fraction.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/barmodel-pages.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/barmodel-ratio.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/barmodel-savings.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/board-migration.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/board-onboarding.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/board-retrospective.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/board-story-map.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-accent.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-across.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-area.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-bars.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-brand-readings.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-complaints.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-responsibility.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/chart-stacked.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/clock-journey.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/clock-quarters.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/clock-roman.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/clock-worksheet.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/columns-before-after.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/columns-rise.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/curve-burndown.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/curve-hype.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/curve-variance.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/cycle-hub-flywheel.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/cycle-hub-oncall.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/cycle-hub-quality.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/cycle-review.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/cycle-wheel.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/entities-blueprint-parts.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/entities-enrolment.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/entities-library.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/entities-orders.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/entities-shapes.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/entities-star.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/familytree-clinic.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/familytree-cousins.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/familytree-reunion.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/familytree-tudors.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/files-project.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/files-text.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/fishbone-backup.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/fishbone-flaky-ci.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/fishbone-late-orders.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/fishbone-signups.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-accent.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-actor-handover.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-actors.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-bands.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-blueprint-pump.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-brand-release.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-classes-context.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-classes-teams.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-critical-path.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-edge-roles.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-groups.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-hub.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-inventory.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-loops-adoption.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-loops-predators.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-loops-town.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-loops-waiting.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-mesh.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-meter-readings.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-node-roles.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-person-helpdesk.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-retry.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-status-failover.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-status-search.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-triage.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/flow-validation.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/funnel-applications.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/funnel-innovation.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/gantt-critical-path.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/gantt-life-cycles.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/gantt-migration.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/gantt-progress.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/gantt-semester.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/gantt-upgrade.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/index.html +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/journey-bug-report.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/journey-first-week.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/journey-outpatient.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/journey-parking-permit.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-appointment.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-classes-claim.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-disclosure.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-expense.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-onboarding.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-phases-loan.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-phases-purchase.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-phases-release.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/lanes-tender.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/matrix-process.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/matrix-raid.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/matrix-scale-ci.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/matrix-scale-risk.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/matrix-scale-skills.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/meter-appeal.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/meter-library.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/meter-migration.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/meter-ward.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/mindmap-essay-plan.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/mindmap-moving-house.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/mindmap-offsite.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/mindmap-photosynthesis.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/numberline-inequality.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/numberline-interval-us.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/numberline-ph.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/numberline-spectrum.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/numberline-tense.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/pie-spending.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/pie-team-week.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/pie-travel.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/pie-trip.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/pyramid-evidence.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/pyramid-top-heavy.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/quadrant-conflict.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/quadrant-priorities.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/rag-confidence.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/rag-refit.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/rag-register.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/rag-school.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/rings-scope.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sankey-budget.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sankey-cores.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sankey-energy.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sankey-tickets.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/scatter-pareto.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-actor-handover.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-actor-signin.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-async-export.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-checkout.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-dns.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-drain.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-terminal.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/sequence-upload.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/stack-decisions.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-blueprint-lift.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-brand-station.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-breaker.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-fork-onboarding.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-fork-order.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-fork-release.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-invoice.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-process.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-regions-keyboard.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-regions-order.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-regions-player.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/states-ticket.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/timeline-disaster.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/timeline-rise.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/timeline-work.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/tree-classes-board.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/tree-compartments.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/tree-decisions.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/tree-person-escalation.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/tree-status-reorg.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/treemap-bundle.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/treemap-disk.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/treemap-latency.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/treemap-oncall.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-data-roles.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-four-ikigai.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-four-launch.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-four-ponds.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-frameworks.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-parity.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/venn-telemetry.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/waterfall-budget-gap.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/waterfall-cash.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/waterfall-deficit.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/gallery/waterfall-result.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/guide.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/hero.png +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/hero.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/kinds-wanted.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/logo.png +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/logo.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/plan-round-five.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/plan-round-three.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/plan-round-two.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/README.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/argument.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/barmodel.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/board.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/clock.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/coverage-vs-diagram-design.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/cycle-hub.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/entities-centre.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/entities.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/exports.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/familytree.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/filetree.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/fishbone.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/flow-loops.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/flow-status.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/gantt-events-iterations.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/gantt.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/journey.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/lanes.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/matrix-scale.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/meter.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/mindmap.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/numberline.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/pie.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/rag.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/sankey.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/sequence.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/states.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/text.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/theme-from.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/treemap.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/venn.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/venn4.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/proposals/waterfall.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/argument-congestion.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/argument-contract.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/argument-homework.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/argument-readmissions.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/barmodel-bus.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/barmodel-fraction.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/barmodel-pages.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/barmodel-ratio.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/barmodel-savings.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/board-migration.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/board-onboarding.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/board-retrospective.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/board-story-map.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/brand/tidemark.css +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/brand/tidemark.tokens.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/brand/tidemark.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-accent.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-across.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-area.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-bars.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-brand-readings.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-complaints.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-responsibility.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/chart-stacked.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/clock-journey.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/clock-quarters.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/clock-roman.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/clock-worksheet.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/columns-before-after.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/columns-rise.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/curve-burndown.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/curve-hype.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/curve-variance.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/cycle-hub-flywheel.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/cycle-hub-oncall.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/cycle-hub-quality.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/cycle-review.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/cycle-wheel.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/entities-blueprint-parts.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/entities-enrolment.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/entities-library.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/entities-orders.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/entities-shapes.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/entities-star.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/familytree-clinic.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/familytree-cousins.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/familytree-reunion.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/familytree-tudors.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/files-project.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/files-text.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/fishbone-backup.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/fishbone-flaky-ci.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/fishbone-late-orders.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/fishbone-signups.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-accent.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-actor-handover.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-actors.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-bands.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-blueprint-pump.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-brand-release.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-classes-context.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-classes-teams.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-critical-path.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-edge-roles.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-groups.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-hub.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-inventory.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-loops-adoption.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-loops-predators.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-loops-town.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-loops-waiting.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-mesh.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-meter-readings.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-node-roles.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-person-helpdesk.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-retry.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-status-failover.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-status-search.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-triage.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/flow-validation.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/funnel-applications.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/funnel-innovation.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/gantt-critical-path.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/gantt-life-cycles.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/gantt-migration.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/gantt-progress.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/gantt-semester.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/gantt-upgrade.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/journey-bug-report.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/journey-first-week.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/journey-outpatient.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/journey-parking-permit.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-appointment.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-classes-claim.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-disclosure.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-expense.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-onboarding.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-phases-loan.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-phases-purchase.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-phases-release.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/lanes-tender.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/matrix-process.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/matrix-raid.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/matrix-scale-ci.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/matrix-scale-risk.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/matrix-scale-skills.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/meter-appeal.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/meter-library.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/meter-migration.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/meter-ward.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/mindmap-essay-plan.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/mindmap-moving-house.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/mindmap-offsite.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/mindmap-photosynthesis.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/numberline-inequality.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/numberline-interval-us.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/numberline-ph.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/numberline-spectrum.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/numberline-tense.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/pie-spending.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/pie-team-week.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/pie-travel.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/pie-trip.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/pyramid-evidence.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/pyramid-top-heavy.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/quadrant-conflict.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/quadrant-priorities.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rag-confidence.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rag-refit.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rag-register.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rag-school.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/cycle-review-grandalf-down.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/cycle-review-grandalf-right.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/cycle-review-layered-down.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/cycle-review-layered-right.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/flow-validation-grandalf-down.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/flow-validation-grandalf-right.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/flow-validation-layered-down.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/flow-validation-layered-right.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/tree-decisions-grandalf-down.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/tree-decisions-grandalf-right.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/tree-decisions-layered-down.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rendered/tree-decisions-layered-right.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/rings-scope.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sankey-budget.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sankey-cores.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sankey-energy.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sankey-tickets.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/scatter-pareto.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-actor-handover.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-actor-signin.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-async-export.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-checkout.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-dns.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-drain.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-terminal.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/sequence-upload.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/stack-decisions.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-blueprint-lift.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-brand-station.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-breaker.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-fork-onboarding.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-fork-order.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-fork-release.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-invoice.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-process.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-regions-keyboard.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-regions-order.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-regions-player.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/states-ticket.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/themes/algebra-us.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/themes/donut.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/themes/same-opposite.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/timeline-disaster.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/timeline-rise.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/timeline-work.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/tree-classes-board.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/tree-compartments.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/tree-decisions.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/tree-person-escalation.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/tree-status-reorg.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/treemap-bundle.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/treemap-disk.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/treemap-latency.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/treemap-oncall.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-data-roles.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-four-ikigai.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-four-launch.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-four-ponds.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-frameworks.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-parity.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/venn-telemetry.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/waterfall-budget-gap.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/waterfall-cash.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/waterfall-deficit.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/reference/waterfall-result.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/research/corpus-round2.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/research/kind-audit.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/research/kinds-survey.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/review-2026-10.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/social-preview.png +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/social-preview.svg +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/theme-requirements.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/docs/theme.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/glama.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/llms.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/schema/drawspec-v1.schema.json +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/skills/drawspec/SKILL.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/brand.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/charts.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/clearance.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/cli.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/emit.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/errors.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/examples.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/export.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/filetree.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/LICENSE +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/mono-bold.ttf +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/mono.ttf +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/sans-bold.ttf +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/sans.ttf +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/serif-bold.ttf +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/fonts/serif.ttf +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/geometry.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/__init__.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/argument.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/barmodel.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/board.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/clock.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/common.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/containers.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/cycle.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/entities.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/familytree.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/files.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/fishbone.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/gantt.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/graph.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/graphtext.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/grid.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/journey.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/lanes.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/loops.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/meter.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/mindmap.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/numberline.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/pie.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/rag.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/sankey.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/sequence.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/shape.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/treemap.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/venn.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/kinds/waterfall.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/layout/__init__.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/layout/base.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/layout/grandalf_engine.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/layout/layered.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/legend.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/mcp.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/py.typed +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/render.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/routing.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/scene.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/schema.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/sheet.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/text/__init__.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/text/fontlib.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/text/measure.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/text/wrap.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/textgrid.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/theme.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/themes/accent.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/themes/blueprint.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/themes/compartment.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/themes/default.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/themes/wheel.toml +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/src/drawspec/variants.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/status/plan.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/status/spec-annotated.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/status/spec-reader.html +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/status/specification.md +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/board-story-map.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/board-story-map.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/files-project.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/files-project.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/flow-retry.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/flow-retry.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/gantt-semester.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/gantt-semester.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/lanes-phases-loan.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/lanes-phases-loan.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-appeal.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-appeal.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-library.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-library.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-migration.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-migration.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-ward.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/meter-ward.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/rag-refit.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/rag-refit.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/sequence-upload.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/sequence-upload.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/stack-decisions.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/stack-decisions.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/states-process.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/states-process.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/timeline-disaster.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/timeline-disaster.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/tree-compartments.ascii.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/golden/text/tree-compartments.unicode.txt +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_acceptance.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_actor.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_blueprint.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_box.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_brand.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_caption.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_clearance.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_cli.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_clipping.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_clock.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_drawn_fields.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_embedding.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_emit.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_export.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_failure_families.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_flow_loops.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_frame_crossings.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_gallery.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_argument.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_barmodel.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_board.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_chart.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_containers.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_cycle.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_entities.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_family.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_files.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_fishbone.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_gantt.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_graph.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_grid.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_journey.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_lanes.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_mindmap.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_numberline.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_pie.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_sankey.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_sequence.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_shape.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_states.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_treemap.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_kinds_venn.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_labels.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_layout.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_layout_spike.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_lead_rule.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_legend.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_margins.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_mcp.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_measure.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_meter.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_packaging.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_readability.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_routing.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_routing_crossings.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_schema.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_self_loops.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_skill.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_status.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_status_rag.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_text_graph.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_text_output.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_theme.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_variants.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_venn4.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_waterfall.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tests/test_wrap.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/clipping.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/collisions.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/compare.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/docs.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/frames.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/gallery.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/hero.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/spike_layout.py +0 -0
- {drawspec-0.4.2 → drawspec-0.4.3}/tools/subset_fonts.py +0 -0
|
@@ -10,6 +10,21 @@ against it would stop working. Everything below is about the *package*.
|
|
|
10
10
|
|
|
11
11
|
## [Unreleased]
|
|
12
12
|
|
|
13
|
+
## [0.4.3] — 2026-10-20
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- **The README renders on PyPI.** Every image and link in it is now an absolute
|
|
18
|
+
`raw.githubusercontent.com` / `github.com` URL, because PyPI shows the long description
|
|
19
|
+
without the repository beside it and relative paths broke there; the new README, merged
|
|
20
|
+
after 0.4.2, reaches PyPI with this release.
|
|
21
|
+
|
|
22
|
+
- **A shorter README that leads with what drawspec does.** The long status list and the
|
|
23
|
+
corpus figures are gone; a flow and a sequence are shown spec-beside-drawing, with a
|
|
24
|
+
grid of nine more kinds and a section on use from an LLM. The drawings are PNGs, one
|
|
25
|
+
per GitHub theme (`make readme`, `tools/readme.py`), so they show on the dark theme,
|
|
26
|
+
and the text example is ASCII, whose columns line up in any font.
|
|
27
|
+
|
|
13
28
|
## [0.4.2] — 2026-10-19
|
|
14
29
|
|
|
15
30
|
### Fixed
|
|
@@ -2,7 +2,7 @@ ARSENAL_REPO ?= https://github.com/nuncaeslupus/claude-arsenal.git
|
|
|
2
2
|
ARSENAL_REF ?= v0.23.1
|
|
3
3
|
ARSENAL_PLUGINS ?= all
|
|
4
4
|
|
|
5
|
-
.PHONY: help sync build lint format test schema docs gallery hero compare clean update-skills
|
|
5
|
+
.PHONY: help sync build lint format test schema docs gallery readme hero compare clean update-skills
|
|
6
6
|
|
|
7
7
|
help: ## list targets
|
|
8
8
|
@grep -hE '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | \
|
|
@@ -35,6 +35,9 @@ docs: ## regenerate the format, CLI and theme references from the code
|
|
|
35
35
|
gallery: ## render every reference document to docs/gallery and open the page
|
|
36
36
|
uv run python tools/gallery.py
|
|
37
37
|
|
|
38
|
+
readme: ## redraw the README's example images, docs/readme, one PNG per GitHub theme
|
|
39
|
+
uv run --extra png python tools/readme.py
|
|
40
|
+
|
|
38
41
|
hero: ## redraw the README banner, docs/hero.svg and docs/hero.png
|
|
39
42
|
uv run --extra png python tools/hero.py
|
|
40
43
|
|
drawspec-0.4.3/PKG-INFO
ADDED
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: drawspec
|
|
3
|
+
Version: 0.4.3
|
|
4
|
+
Summary: Declarative diagram spec to clean, themeable SVG — writable by an LLM with no coordinates.
|
|
5
|
+
Project-URL: Homepage, https://github.com/nuncaeslupus/drawspec
|
|
6
|
+
Project-URL: Documentation, https://github.com/nuncaeslupus/drawspec/blob/main/docs/guide.md
|
|
7
|
+
Project-URL: Repository, https://github.com/nuncaeslupus/drawspec
|
|
8
|
+
Project-URL: Issues, https://github.com/nuncaeslupus/drawspec/issues
|
|
9
|
+
Project-URL: Changelog, https://github.com/nuncaeslupus/drawspec/blob/main/CHANGELOG.md
|
|
10
|
+
Author-email: nuncaeslupus <imarcos@gmail.com>
|
|
11
|
+
License: MIT
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Keywords: dataviz,declarative,diagram,diagram-generator,diagrams,documentation,flowchart,json-schema,llm,svg
|
|
14
|
+
Classifier: Development Status :: 4 - Beta
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
22
|
+
Classifier: Topic :: Documentation
|
|
23
|
+
Classifier: Topic :: Multimedia :: Graphics :: Presentation
|
|
24
|
+
Classifier: Topic :: Software Development :: Documentation
|
|
25
|
+
Classifier: Topic :: Text Processing :: Markup
|
|
26
|
+
Classifier: Typing :: Typed
|
|
27
|
+
Requires-Python: >=3.12
|
|
28
|
+
Requires-Dist: fonttools>=4.53
|
|
29
|
+
Provides-Extra: dev
|
|
30
|
+
Requires-Dist: mypy>=1.11; extra == 'dev'
|
|
31
|
+
Requires-Dist: pytest>=8.0; extra == 'dev'
|
|
32
|
+
Requires-Dist: ruff>=0.6; extra == 'dev'
|
|
33
|
+
Provides-Extra: mcp
|
|
34
|
+
Requires-Dist: mcp>=2.0; extra == 'mcp'
|
|
35
|
+
Provides-Extra: png
|
|
36
|
+
Requires-Dist: resvg-py>=0.5; extra == 'png'
|
|
37
|
+
Provides-Extra: spike
|
|
38
|
+
Requires-Dist: grandalf>=0.8; extra == 'spike'
|
|
39
|
+
Description-Content-Type: text/markdown
|
|
40
|
+
|
|
41
|
+
# <img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/logo.png" width="40" height="40" alt="" align="top"> drawspec
|
|
42
|
+
|
|
43
|
+
<!-- mcp-name: io.github.nuncaeslupus/drawspec -->
|
|
44
|
+
|
|
45
|
+
[](https://pypi.org/project/drawspec/)
|
|
46
|
+
[](https://github.com/nuncaeslupus/drawspec/blob/main/LICENSE)
|
|
47
|
+
[](https://glama.ai/mcp/servers/nuncaeslupus/drawspec)
|
|
48
|
+
<!-- claude-arsenal:attribution: added by claude-arsenal's /init. Delete this block to drop it (it is not put back), or set `attribution = false` in the arsenal config.toml. -->
|
|
49
|
+
[](https://github.com/nuncaeslupus/claude-arsenal)
|
|
50
|
+
<!-- /claude-arsenal:attribution -->
|
|
51
|
+
|
|
52
|
+
<p align="center">
|
|
53
|
+
<img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/hero.png" width="100%" alt="drawspec: a blueprint sheet with the wordmark, a JSON flow spec and the flow chart drawspec renders from it, with large faint venn and pie drawings behind the wordmark, a mind map and a project file tree drawn by drawspec, and beside them a small sequence diagram as drawspec's text output, once in box drawing and once in ASCII">
|
|
54
|
+
</p>
|
|
55
|
+
|
|
56
|
+
**Diagrams from a JSON description — no coordinates, so nothing to misplace.**
|
|
57
|
+
You say what the diagram *means*: the boxes, the arrows, the labels, and a role
|
|
58
|
+
for each. drawspec decides every position, size, route and colour, and draws a
|
|
59
|
+
clean SVG, PNG or plain-text diagram.
|
|
60
|
+
|
|
61
|
+
It is built for language models first. An LLM that writes SVG by hand gets the
|
|
62
|
+
content right and the placement wrong — arrows that miss their boxes, text that
|
|
63
|
+
spills out, lines that stop short. A drawspec document has no `x`, `y` or font
|
|
64
|
+
size to get wrong: those fields are refused, and every mistake comes back as an
|
|
65
|
+
error pointing at the exact field, so the model can fix it and try again.
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
pip install drawspec
|
|
69
|
+
drawspec render diagram.json -o diagram.svg
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**[Browse the gallery: more than 30 kinds, drawn →](https://nuncaeslupus.github.io/drawspec/docs/gallery/)**
|
|
73
|
+
|
|
74
|
+
## Example
|
|
75
|
+
|
|
76
|
+
You write this:
|
|
77
|
+
|
|
78
|
+
```json
|
|
79
|
+
{
|
|
80
|
+
"$schema": "https://nuncaeslupus.github.io/drawspec/schema/drawspec-v1.schema.json",
|
|
81
|
+
"version": 1,
|
|
82
|
+
"kind": "flow",
|
|
83
|
+
"title": "The nightly import",
|
|
84
|
+
"description": "The vendor's export is fetched, checked and loaded into staging before it replaces the live table; a timeout and a deadlock are each retried in place.",
|
|
85
|
+
"nodes": [
|
|
86
|
+
{"id": "fetch", "text": "Fetch the vendor's export", "role": "start"},
|
|
87
|
+
{"id": "check", "text": "Do the row counts match?", "role": "decision"},
|
|
88
|
+
{"id": "load", "text": "Load into staging"},
|
|
89
|
+
{"id": "page", "text": "Page the data owner", "role": "terminal"},
|
|
90
|
+
{"id": "swap", "text": "Swap staging into live", "role": "terminal"}
|
|
91
|
+
],
|
|
92
|
+
"edges": [
|
|
93
|
+
{"from": "fetch", "to": "fetch", "label": "timed out: retry"},
|
|
94
|
+
{"from": "fetch", "to": "check"},
|
|
95
|
+
{"from": "check", "to": "load", "label": "yes"},
|
|
96
|
+
{"from": "check", "to": "page", "label": "no"},
|
|
97
|
+
{"from": "load", "to": "load", "label": "deadlock: retry"},
|
|
98
|
+
{"from": "load", "to": "swap"}
|
|
99
|
+
]
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
drawspec draws this:
|
|
104
|
+
|
|
105
|
+
<p align="center">
|
|
106
|
+
<picture>
|
|
107
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/flow-retry-dark.png">
|
|
108
|
+
<img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/flow-retry-light.png" alt="A flow chart: fetch the vendor's export, retried on timeout; check the row counts; on a match load into staging, retried on deadlock, then swap into live; otherwise page the data owner" width="620">
|
|
109
|
+
</picture>
|
|
110
|
+
</p>
|
|
111
|
+
|
|
112
|
+
The same document as text, for a terminal, a commit message or a code block
|
|
113
|
+
(`--format text --charset ascii`):
|
|
114
|
+
|
|
115
|
+
```text
|
|
116
|
+
*---------------------------*
|
|
117
|
+
| Fetch the vendor's export +-+ timed out: retry
|
|
118
|
+
| |<+
|
|
119
|
+
*-------------+-------------*
|
|
120
|
+
|
|
|
121
|
+
v
|
|
122
|
+
+--------------------------+
|
|
123
|
+
< Do the row counts match? >
|
|
124
|
+
++-------------------+-----+
|
|
125
|
+
| yes | no
|
|
126
|
+
+----+ |
|
|
127
|
+
v v
|
|
128
|
+
+-------------------+ .---------------------.
|
|
129
|
+
| Load into staging +-+ deadlock: retry ( Page the data owner )
|
|
130
|
+
| |<+ '---------------------'
|
|
131
|
+
+---------+---------+
|
|
132
|
+
|
|
|
133
|
+
v
|
|
134
|
+
.------------------------.
|
|
135
|
+
( Swap staging into live )
|
|
136
|
+
'------------------------'
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
A sequence diagram works the same way — participants and messages in order;
|
|
140
|
+
activation bars, arrows and spacing are worked out for you:
|
|
141
|
+
|
|
142
|
+
```json
|
|
143
|
+
{
|
|
144
|
+
"version": 1,
|
|
145
|
+
"kind": "sequence",
|
|
146
|
+
"title": "Resolving a name the first time",
|
|
147
|
+
"caption": "Nothing is cached yet, so the resolver walks the hierarchy from the top.",
|
|
148
|
+
"participants": [
|
|
149
|
+
{"id": "laptop", "text": "Laptop"},
|
|
150
|
+
{"id": "resolver", "text": "Recursive resolver", "role": "emphasis"},
|
|
151
|
+
{"id": "root", "text": "Root server"},
|
|
152
|
+
{"id": "tld", "text": "`.org` server"},
|
|
153
|
+
{"id": "auth", "text": "Authoritative server"}
|
|
154
|
+
],
|
|
155
|
+
"messages": [
|
|
156
|
+
{"from": "laptop", "to": "resolver", "text": "where is `wiki.example.org`?"},
|
|
157
|
+
{"from": "resolver", "to": "root", "text": "where is `wiki.example.org`?"},
|
|
158
|
+
{"from": "root", "to": "resolver", "text": "ask the `.org` servers", "role": "weak"},
|
|
159
|
+
{"from": "resolver", "to": "tld", "text": "where is `wiki.example.org`?"},
|
|
160
|
+
{"from": "tld", "to": "resolver", "text": "ask `ns1.example.org`", "role": "weak"},
|
|
161
|
+
{"from": "resolver", "to": "auth", "text": "where is `wiki.example.org`?"},
|
|
162
|
+
{"from": "auth", "to": "resolver", "text": "`203.0.113.7`", "role": "weak"},
|
|
163
|
+
{"from": "resolver", "to": "resolver", "text": "cache it for the TTL", "note": "the next lookup stops here"},
|
|
164
|
+
{"from": "resolver", "to": "laptop", "text": "`203.0.113.7`", "role": "weak"}
|
|
165
|
+
]
|
|
166
|
+
}
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
<p align="center">
|
|
170
|
+
<picture>
|
|
171
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/sequence-dns-dark.png">
|
|
172
|
+
<img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/sequence-dns-light.png" alt="A sequence diagram: a laptop asks a recursive resolver, which asks the root, the .org server and the authoritative server in turn, caches the answer and replies" width="720">
|
|
173
|
+
</picture>
|
|
174
|
+
</p>
|
|
175
|
+
|
|
176
|
+
## More than 30 kinds of diagram
|
|
177
|
+
|
|
178
|
+
Flow charts, sequence diagrams, state machines, ER and class diagrams, Gantt
|
|
179
|
+
charts, swimlanes, mind maps, timelines, Venn, Sankey, treemaps, pie and bar
|
|
180
|
+
charts, kanban boards, fishbone, family trees, file trees and more — one format
|
|
181
|
+
for all of them. Click a drawing for its source.
|
|
182
|
+
|
|
183
|
+
<table>
|
|
184
|
+
<tr><th width="33%"><code>sequence</code></th><th width="33%"><code>entities</code></th><th width="33%"><code>states</code></th></tr>
|
|
185
|
+
<tr>
|
|
186
|
+
<td align="center" valign="middle">
|
|
187
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/sequence-checkout.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/sequence-checkout-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/sequence-checkout-light.png" alt="A checkout sequence diagram with alt and par fragments"></picture></a>
|
|
188
|
+
</td>
|
|
189
|
+
<td align="center" valign="middle">
|
|
190
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/entities-orders.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/entities-orders-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/entities-orders-light.png" alt="A database schema of customers, orders and order lines with crow's-foot ends"></picture></a>
|
|
191
|
+
</td>
|
|
192
|
+
<td align="center" valign="middle">
|
|
193
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/states-ticket.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/states-ticket-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/states-ticket-light.png" alt="A support ticket state machine"></picture></a>
|
|
194
|
+
</td>
|
|
195
|
+
</tr>
|
|
196
|
+
<tr><th width="33%"><code>gantt</code></th><th width="33%"><code>mindmap</code></th><th width="33%"><code>sankey</code></th></tr>
|
|
197
|
+
<tr>
|
|
198
|
+
<td align="center" valign="middle">
|
|
199
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/gantt-migration.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/gantt-migration-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/gantt-migration-light.png" alt="A migration plan as a Gantt chart with phases and milestones"></picture></a>
|
|
200
|
+
</td>
|
|
201
|
+
<td align="center" valign="middle">
|
|
202
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/mindmap-offsite.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/mindmap-offsite-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/mindmap-offsite-light.png" alt="A mind map planning a team offsite"></picture></a>
|
|
203
|
+
</td>
|
|
204
|
+
<td align="center" valign="middle">
|
|
205
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/sankey-budget.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/sankey-budget-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/sankey-budget-light.png" alt="A Sankey diagram of where a budget goes"></picture></a>
|
|
206
|
+
</td>
|
|
207
|
+
</tr>
|
|
208
|
+
<tr><th width="33%"><code>venn</code></th><th width="33%"><code>chart</code></th><th width="33%"><code>fishbone</code></th></tr>
|
|
209
|
+
<tr>
|
|
210
|
+
<td align="center" valign="middle">
|
|
211
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/venn-telemetry.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/venn-telemetry-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/venn-telemetry-light.png" alt="A three-set Venn diagram of logs, metrics and traces"></picture></a>
|
|
212
|
+
</td>
|
|
213
|
+
<td align="center" valign="middle">
|
|
214
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/chart-bars.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/chart-bars-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/chart-bars-light.png" alt="A bar and line chart of incidents per quarter"></picture></a>
|
|
215
|
+
</td>
|
|
216
|
+
<td align="center" valign="middle">
|
|
217
|
+
<a href="https://github.com/nuncaeslupus/drawspec/blob/main/docs/reference/fishbone-flaky-ci.json"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/fishbone-flaky-ci-dark.png"><img src="https://raw.githubusercontent.com/nuncaeslupus/drawspec/main/docs/readme/fishbone-flaky-ci-light.png" alt="A fishbone diagram of causes of a flaky CI"></picture></a>
|
|
218
|
+
</td>
|
|
219
|
+
</tr>
|
|
220
|
+
</table>
|
|
221
|
+
|
|
222
|
+
The full list: `flow` · `tree` · `cycle` · `stack` · `timeline` · `columns` ·
|
|
223
|
+
`matrix` · `pyramid` · `rings` · `funnel` · `chart` · `quadrant` · `scatter` ·
|
|
224
|
+
`curve` · `files` · `states` · `sequence` · `lanes` · `entities` · `gantt` ·
|
|
225
|
+
`board` · `fishbone` · `venn` · `journey` · `treemap` · `sankey` · `numberline` ·
|
|
226
|
+
`barmodel` · `waterfall` · `pie` · `mindmap` · `argument` · `familytree` ·
|
|
227
|
+
`meter` · `rag` · `clock`. Each has an example in [`docs/reference`](https://github.com/nuncaeslupus/drawspec/tree/main/docs/reference),
|
|
228
|
+
and [the gallery](https://nuncaeslupus.github.io/drawspec/docs/gallery/)
|
|
229
|
+
(`docs/gallery/index.html`) draws every one.
|
|
230
|
+
|
|
231
|
+
## Using it from an LLM
|
|
232
|
+
|
|
233
|
+
- **MCP server** — `pip install 'drawspec[mcp]'` adds `drawspec-mcp`, with the tools
|
|
234
|
+
`list_kinds`, `get_example`, `get_schema`, `validate_document` and
|
|
235
|
+
`render_document`. A mistake comes back as data the model can act on:
|
|
236
|
+
`{"pointer": "/edges/0/to", "message": …}`.
|
|
237
|
+
See [the guide](https://github.com/nuncaeslupus/drawspec/blob/main/docs/guide.md#using-it-from-an-agent-the-mcp-server).
|
|
238
|
+
- **[`AGENTS.md`](https://github.com/nuncaeslupus/drawspec/blob/main/AGENTS.md)** — the whole format on one page, written for a model to
|
|
239
|
+
read in one pass: which kind fits, the size limits, the roles, worked examples, and
|
|
240
|
+
what each error means. [`llms.txt`](https://github.com/nuncaeslupus/drawspec/blob/main/llms.txt) indexes it.
|
|
241
|
+
- **Agent Skill** — copy [`skills/drawspec/`](https://github.com/nuncaeslupus/drawspec/blob/main/skills/drawspec/SKILL.md) into your
|
|
242
|
+
skills directory.
|
|
243
|
+
- **JSON Schema** — start a document with
|
|
244
|
+
`"$schema": "https://nuncaeslupus.github.io/drawspec/schema/drawspec-v1.schema.json"`
|
|
245
|
+
for completion and errors as you type, in an editor or a structured-output call.
|
|
246
|
+
|
|
247
|
+
A typical loop: the model picks a kind, writes the JSON, calls
|
|
248
|
+
`validate_document`, fixes what is reported, and renders.
|
|
249
|
+
|
|
250
|
+
## What you get
|
|
251
|
+
|
|
252
|
+
| You write | drawspec decides |
|
|
253
|
+
|---|---|
|
|
254
|
+
| Nodes, edges, labels | Coordinates, box sizes, canvas size |
|
|
255
|
+
| A semantic role per node (`start`, `decision`, `emphasis`…) | Shape, font, colour, stroke weight |
|
|
256
|
+
| The kind of diagram | Layout, edge routing, arrowheads, label placement |
|
|
257
|
+
|
|
258
|
+
- **SVG** that pastes inline into Markdown or HTML: it takes the page's text colour,
|
|
259
|
+
carries no global styles or colliding ids, and never relies on colour alone, so it
|
|
260
|
+
works in dark mode and in greyscale print. `--variant dark=<theme>` adds a dark
|
|
261
|
+
version that follows `prefers-color-scheme`.
|
|
262
|
+
- **PNG** on a light, dark or transparent background (`pip install 'drawspec[png]'`).
|
|
263
|
+
- **Plain text** (box-drawing or ASCII) for many kinds, including flows, state
|
|
264
|
+
machines, sequences, Gantt charts and file trees.
|
|
265
|
+
- **Themes**: change one TOML file and every diagram in a project follows.
|
|
266
|
+
`drawspec theme from site.css` builds one from your CSS or design tokens.
|
|
267
|
+
- **Readable by design**: each kind has a size budget;
|
|
268
|
+
past it, drawspec asks you to split the diagram rather than draw a dense one.
|
|
269
|
+
|
|
270
|
+
## Command line
|
|
271
|
+
|
|
272
|
+
```bash
|
|
273
|
+
drawspec render diagram.json -o diagram.svg # or to stdout
|
|
274
|
+
drawspec render diagram.json -o diagram.png # needs drawspec[png]; --background dark, --scale 3
|
|
275
|
+
drawspec render diagram.json --theme blueprint -o sheet.png
|
|
276
|
+
drawspec render diagram.json --format text # 80 columns; --charset ascii
|
|
277
|
+
drawspec validate diagram.json # every error, by JSON pointer
|
|
278
|
+
drawspec theme from site.css -o house.toml # a theme from your CSS
|
|
279
|
+
drawspec schema --out drawspec-v1.schema.json # for editor completion
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
## What it is not
|
|
283
|
+
|
|
284
|
+
- **Not a graph-layout engine.** For a hundred-node graph, use Graphviz.
|
|
285
|
+
- **Not a plotting library.** `chart` states a few numbers you already know; it has
|
|
286
|
+
no statistics, dates, log scales or interactivity.
|
|
287
|
+
- **Not a drawing program.** Anything whose point is *where* things are — a floor
|
|
288
|
+
plan, a map — has no place in a format without coordinates.
|
|
289
|
+
|
|
290
|
+
## Documentation
|
|
291
|
+
|
|
292
|
+
| Page | What it covers |
|
|
293
|
+
|---|---|
|
|
294
|
+
| [Guide](https://github.com/nuncaeslupus/drawspec/blob/main/docs/guide.md) | Install, a first diagram, choosing a kind, embedding, validating in CI, themes |
|
|
295
|
+
| [Document format](https://github.com/nuncaeslupus/drawspec/blob/main/docs/format.md) | Every field of every kind, and every refused field with the reason |
|
|
296
|
+
| [Command line](https://github.com/nuncaeslupus/drawspec/blob/main/docs/cli.md) | Every command, option and exit code |
|
|
297
|
+
| [Themes](https://github.com/nuncaeslupus/drawspec/blob/main/docs/theme.md) | Every theme key and its default |
|
|
298
|
+
| [AGENTS.md](https://github.com/nuncaeslupus/drawspec/blob/main/AGENTS.md) | The format on one page, for language models |
|
|
299
|
+
|
|
300
|
+
The references are generated from the code (`make docs`), and a test fails if they
|
|
301
|
+
drift.
|
|
302
|
+
|
|
303
|
+
## Development
|
|
304
|
+
|
|
305
|
+
```bash
|
|
306
|
+
make sync # install with dev extras
|
|
307
|
+
make lint # ruff + strict mypy
|
|
308
|
+
make test # pytest
|
|
309
|
+
make gallery # render every reference document into docs/gallery
|
|
310
|
+
make readme # redraw the README's example images in docs/readme
|
|
311
|
+
make docs # regenerate the format, CLI and theme references
|
|
312
|
+
make schema # regenerate the published JSON Schema
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
The library is in `src/drawspec/`, the examples in `docs/reference/`, the tests in
|
|
316
|
+
`tests/`. `docs/brief.md` and `corpus/` hold the original design brief and the
|
|
317
|
+
evidence it was based on. `.claude/` and `claude-arsenal/` are development tooling
|
|
318
|
+
and do not affect the package.
|
|
319
|
+
|
|
320
|
+
## Related projects
|
|
321
|
+
|
|
322
|
+
Built with [claude-arsenal](https://github.com/nuncaeslupus/claude-arsenal), a
|
|
323
|
+
spec-driven Claude Code workflow whose skills draw their diagrams with drawspec.
|
|
324
|
+
By the same author:
|
|
325
|
+
|
|
326
|
+
- [integral-job-search](https://github.com/nuncaeslupus/integral-job-search) — a candidate-centred job search run as a conversation in Claude Code.
|
|
327
|
+
- [literary-critic](https://github.com/nuncaeslupus/literary-critic) — lets an LLM index, analyse and advise on a full novel manuscript the way a professional editor would.
|
|
328
|
+
- [doc-control](https://github.com/nuncaeslupus/doc-control) — a deterministic tool for AI agents to edit Word documents as tracked changes (in development).
|
|
329
|
+
|
|
330
|
+
## License
|
|
331
|
+
|
|
332
|
+
MIT — see [`LICENSE`](https://github.com/nuncaeslupus/drawspec/blob/main/LICENSE).
|