Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .governance/docs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"schema": "wellmanifest.docs/adoption/v1",
"repository": "semcod/clickmd",
"standard": "wellmanifest/docs",
"source_revision": "ebe7501063ef4f3e63ded610c2d3183010ca636e",
"policy_sha256": "f6ba9c011ea1d9260e7fac3a1638a767d5ebc9f7d9b32ed51cc3aea22fe95d8c"
}
5 changes: 4 additions & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -352,4 +352,7 @@ pip install -e ".[dev]"
| `examples/` | Usage examples | [Browse](./examples) |
| `mkdocs.yml` | MkDocs configuration | — |

<!-- code2docs:end -->
<!-- code2docs:end -->
## Authored information

- [Protected local verification](information/local-verification.md) — immutable documentation pin, local Python matrix and publication requirements.
83 changes: 83 additions & 0 deletions docs/information/local-verification.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
---
{
"schema": "wellmanifest.docs/document/v1",
"id": "local-verification",
"kind": "information",
"version": 1,
"title": "Protected local verification for Clickmd",
"status": "proposed",
"owner": "semcod/clickmd",
"created": "2026-09-08",
"updated": "2026-09-08",
"review_after": "2026-09-15",
"source_revision": "b8720fb50d63103007e229872c92c190d7fa326e",
"affected_repositories": [
"semcod/clickmd"
],
"evidence": [
"https://github.com/subactor/onedev-agent/pull/202",
"https://github.com/semcod/clickmd/issues/4"
]
}
---

# Protected local verification

<!-- docs:section purpose -->
## Purpose

Verify the complete Clickmd test suite in the independent local executor while
preserving the existing required hosted Python matrix. This repository adopts
Wellmanifest Docs metadata for authored information through `.governance/docs.json`.

<!-- docs:section scope -->
## Scope

The local profile runs Python 3.10.19 and 3.13.15 with the same locked dev,
click and rich extras as `.github/workflows/test-locked.yml`. The protected
image prepares dependencies before candidate execution; both test runs are
networkless. A second gate runs the pinned documentation checker against the
trusted current base. The OneDev deployment is owned by subactor/onedev-agent.

<!-- docs:section evidence -->
## Evidence

An offline image canary of the bound source passed 66 tests on each Python,
with three existing absent-Click cases skipped because the required Click
extra is installed. The executor's regression suite rejects altered, missing
or symlinked dependency inputs and propagates failures from either interpreter.
This document and pin form the real consumer PR canary after executor deployment.
Its terminal receipt determines publication success; the document does not
approve itself.

<!-- docs:section content -->
## Contract

The executor compares candidate `pyproject.toml` and `uv.lock` to independently
approved digests. A change requires an explicit executor package update before
publication can pass. The candidate cannot introduce new trusted pins.
Each Python imports Clickmd from this checkout's `src`, validates the source
path and runs the complete pytest suite. This validates source behavior, not
wheel packaging or every IDE/LLM integration.

OneDev reports the existing `onedev/local-verify` status. The protected
Validator continues requiring both hosted `test (3.10)` and `test (3.13)`;
the new local result does not silently replace them. Independent exact-head
review and an explicit merge grant remain separate publication requirements.

<!-- docs:section limitations -->
## Limits

This is a Linux matrix. It does not certify Windows, macOS, GUI integrations,
LLM correctness or deployed product behavior. The three skipped tests cover
an environment without Click; they are not runtime test failures.
The documentation pin declares adoption. Actual enforcement additionally
requires the deployed protected checker and a successful exact-base PR receipt.

<!-- docs:section next_actions -->
## Acceptance

Publish after both hosted tests, the deployed local matrix and documentation
gate pass. Preserve the exact head/base/merge evidence in the independent
receipt. Future dependency changes must update the protected image through
its own reviewed source, test and deployment process.
10 changes: 10 additions & 0 deletions project/ticket-004/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Ticket 004: Protected local verification

Status: IN_PROGRESS / EDIT.
SESSION_EXECUTION_AUTHORIZATION: continue, push, test and deploy.
Allocation: https://github.com/semcod/clickmd/issues/4.

AC-01: Adopt immutable Wellmanifest Docs metadata and canonical verification information.
AC-02: Verify both local Python matrix members plus documentation against current base.
AC-03: Preserve both hosted checks and independently publish the exact head.
Canonical result: [local verification](../../docs/information/local-verification.md).
18 changes: 18 additions & 0 deletions project/ticket-004/intent.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"schema": "new-project.intent/v3",
"ticket": "ticket-004",
"summary": "Adopt documentation metadata and specify protected local verification",
"workstream": "integration",
"allowedPaths": [
".governance/docs.json",
"docs/README.md",
"docs/information/local-verification.md",
"project/ticket-004/**"
],
"forbiddenPaths": [
"pyproject.toml",
"uv.lock"
],
"dependsOn": [],
"conflictsWith": []
}