Skip to content

docs: add index README and YAML frontmatter to every doc#13

Closed
rafael5 wants to merge 5 commits into
mainfrom
docs-discoverability-phase0
Closed

docs: add index README and YAML frontmatter to every doc#13
rafael5 wants to merge 5 commits into
mainfrom
docs-discoverability-phase0

Conversation

@rafael5
Copy link
Copy Markdown
Collaborator

@rafael5 rafael5 commented May 11, 2026

Summary

  • Adds docs/README.md indexing every document in docs/ with the shared TYPE/CONNECTION vocabulary established across the m-dev-tools org on 2026-05-11.
  • Adds YAML frontmatter (created, last_modified, revisions, doc_type) to every existing doc in docs/. Existing frontmatter is merged, not replaced.
  • Implements Phase 0 of the org-wide docs-discoverability standard. The accepted standard, vocabulary, schema, and 4-phase CI rollout plan live in m-dev-tools/.github at docs/docs-discoverability/README.md (committed via #35).

Test plan

  • Existing make check-docs-prose gate passes (docs/ is still prose-only).
  • docs/README.md lists every doc; labels use the agreed 23-type vocabulary.
  • No existing frontmatter fields lost (verified during the org-wide pass; m-stdlib module docs in particular preserve their module: / synopsis: / errors: / conformance: / etc. fields).

🤖 Generated with Claude Code

rafael5 and others added 5 commits May 10, 2026 22:50
Convert §6.2 of language-cli-survey.md into an actionable punch list
for the remaining Phase 3 work — m fix, m profile, m bench, and
m debug — with explicit dependencies, priority ordering, exit
criteria, and per-subcommand risks. Phase 3a is shipped, so the
plan picks up at 3b.

Add a pointer from language-cli-survey.md so the plan is
discoverable from the source survey.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This reverts c27dbfa. The doc was scoped to m-cli's internal Phase 3
from language-cli-survey.md §6.2 (m fix / m profile / m bench /
m debug), but "Phase 3" in this org refers to the org-level
AI-discoverability Phase 3 (recipes + handshake test) tracked in
.github/docs/. The plan now lands there instead.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add docs/README.md indexing every document in docs/ with a shared
TYPE/CONNECTION vocabulary used consistently across all m-dev-tools
repos.

Add YAML frontmatter (created, last_modified, revisions, doc_type)
to every existing doc. Existing frontmatter is merged, not replaced.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Implements Phase 1b of the `m engine` plan
(see m-test-engine/docs/m-engine-implementation-plan.md):

* dist/m-test-engine.json — vendored from m-test-engine's tier-1 contract
* .gitignore — allowlist the vendored manifest
* Makefile — `manifest` target re-vendors from $(M_TEST_ENGINE) when
  upstream is newer; existing `git diff --exit-code dist/` is the
  drift gate
* m_cli.engine_manifest — typed loader (EngineManifest / BindMount /
  Volume / RunArgs) with protocol-version handshake
* m_cli.doctor._runtime — five injectable docker/filesystem probes;
  tests monkeypatch the runtime surface instead of faking subprocess

Doctor extensions:
* Status.SKIPPED for prerequisite-failed downstream checks
* Fix dataclass (command tuple + destructive bool)
* Check.prerequisites declares the dependency chain
* run_all_checks() skips downstream when any declared prereq is non-OK,
  emitting a SKIPPED Check that names the failing prereq
* 5 new Docker checks (docker_installed, docker_daemon, engine_image,
  engine_container, engine_bind_mount) — hint+fix derived from manifest
* Text output renders `hint:` and `fix:` lines under failing checks
* JSON output exposes fix.command (list) + fix.destructive (bool) and
  prerequisites (list) per check

Local YDB checks (ydb_dist, ydb_routines, parser, keywords, ydb_binary)
remain unchanged — they handle their own missing-input cases.

Tests: 18 new in test_doctor.py + 11 in test_engine_manifest.py. Full
suite 1393 passing, 1 skipped (pre-existing). Lint + mypy clean.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Implements Phase 2 of the m-engine plan from m-test-engine repo
(docs/m-engine-implementation-plan.md). Coordinated with
m-test-engine commit 694094e which flipped the runtime bind mount
from /work to /m-work.

* src/m_cli/engine_driver.py — EngineDriver Protocol + DockerDriver.
  All command construction reads from the vendored manifest (no
  hardcoded strings). Injectable `runner` for tests so no real docker
  calls fire. Compose-first start path with docker-run fallback
  reconstructed from manifest.run_args.

* src/m_cli/engine_cli.py — argparse + dispatcher for 12 verbs:
  status (text + --json), install, start, stop, restart, logs
  [--follow], shell, exec <m-cmd>, version, upgrade, reset
  [--confirm], capabilities --json. `set_driver_factory()` is the
  test injection point.

* src/m_cli/engine.py — DockerEngine.bind_root default flipped to
  /m-work (matches manifest); stage_routines() learns to map host
  /m-work/<repo> → container /m-work/<repo> (legacy single-mount
  fallback retained for explicit bind_root overrides).

* src/m_cli/cli.py — `m engine` registered via add_engine_arguments;
  appears in `m capabilities --json` (dist/commands.json regenerated).

* docs/plugin-development.md — new "Engine drivers (out-of-tree)"
  section documenting the `m_cli_engines` entry-point group seam.
  Built-in `docker` driver is NOT registered through the group;
  out-of-tree drivers (future m-cli-iris-engine, etc.) register a
  class implementing EngineDriver. Locked under PLUGIN_API_VERSION=1.

35 new tests (17 driver + 16 CLI + 2 entry-point) across
test_engine_driver.py and test_engine_cli.py, plus 3 in
test_engine_transports.py and 1 in test_engine_manifest.py for the
/m-work cutover. Full suite 1431 passing / 1 skipped (pre-existing).
ruff + mypy clean on the new modules.

Phase 2.4 (m doctor --fix delegation) deferred — design ambiguity
around sudo'd fixes documented in the tracker narrative log.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@rafael5
Copy link
Copy Markdown
Collaborator Author

rafael5 commented May 11, 2026

Closing in favor of split PRs: the docs work moves to a fresh PR (matching the other 5 sibling docs PRs from the same org-wide pass); the Phase 1b doctor + Phase 2 engine work is preserved on engine-phase2 and will get its own PR. See https://github.com/m-dev-tools/.github (phase5-D merge #35) for the org-wide docs standard this implements.

@rafael5 rafael5 closed this May 11, 2026
@rafael5 rafael5 deleted the docs-discoverability-phase0 branch May 11, 2026 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant