MRK-1.0 · the specimen
The standard, demonstrated.
Below is one complete machine-ready article — not a template, not a mock. It records a true incident from running this estate's websites, it conforms to every MRK-1.0 clause, and its front matter validates against the served schema. You don't have to take any of that on faith:
Validate it yourself
$ curl -sO https://machinereadyknowledge.com/specimen.yaml
$ check-jsonschema \
--schemafile https://machinereadyknowledge.com/mrk-1.0.schema.json \
specimen.yaml
ok -- validation done
The whole article is also served raw at /specimen.md — the machine-consumable artifact itself, front matter and body, exactly as a retrieval pipeline would ingest it.
The machine layer: front matter under contract.
Everything in the rail to the right is the article's actual front matter — the copy served at /specimen.yaml, shown here verbatim (the build refuses to publish this page if the two drift). Four things to notice, one per clause of the standard:
- Explicit applicability —
applies_tonames the platform and scope. A machine can decide whether this article applies before quoting it. - Freshness signals —
verified: 2026-09-08is a date someone stood behind, not a CMS timestamp. - Stable identifiers —
ck-ops-1is immutable, and every section is addressable:ck-ops-1#resolutionresolves on this very page. - Self-contained sections — each
self_contained: trueis a human attestation made at the curation gate, which is why the schema stores it rather than infers it.
The article, as a human reads it.
Five sections, each written to stand alone — because the machine that quotes one of them will not show its reader the other four.
Environment
Apache 2.4 on shared hosting, serving a static site. Clean extensionless URLs (/page serving page.html) come from mod_rewrite rules in the docroot .htaccess. mod_dir is active with its default DirectorySlash On; directory listings are disabled.
Issue
On an Apache site that serves extensionless clean URLs, creating a subdirectory with the same name as a page (page/ next to page.html) makes the bare URL /page stop serving. It returns a 301 redirect to /page/, which returns 403. URLs deeper inside the new directory keep working, so the breakage is easy to miss. A plain fetch of the bare URL can look like a stale page, because the response body is the redirect stub — check the HTTP status line before diagnosing content.
Cause
mod_dir's trailing-slash redirect (DirectorySlash On, the Apache default) fires for any request URL that maps to an existing directory, and it wins before the per-directory mod_rewrite rule that would serve page.html. The slash-redirected URL then returns 403 because directory listings are disabled and the directory has no index document.
Resolution
In the docroot .htaccess of an Apache site whose extensionless page is shadowed by a same-named directory:
- Set
DirectorySlash Offso the trailing-slash redirect no longer preempts the rewrite topage.html. - Keep
Options -Indexesset explicitly. With DirectorySlash off, a bare directory URL is otherwise eligible for a listing wherever autoindex is enabled. - Add a one-hop 301 from the slashed form back to the canonical extensionless URL. The rule from the incident this article records (the page
/field-noteson contextkeeping.com, shadowed by a newfield-notes/directory):RewriteRule ^field-notes/$ https://contextkeeping.com/field-notes [R=301,L] - Add the verification probes below to the deployment checklist, so the next same-named directory cannot ship the regression silently.
Verify
Run three probes against the live Apache site after uploading the .htaccess that resolves a directory-shadowed extensionless page. These are the probes from the recorded incident, and they pass against the live site today — run them:
$ curl -sI https://contextkeeping.com/field-notes | head -1 HTTP/1.1 200 OK $ curl -sI https://contextkeeping.com/field-notes/ | grep -i "^location" Location: https://contextkeeping.com/field-notes $ curl -sI https://contextkeeping.com/field-notes/system-of-record | head -1 HTTP/1.1 200 OK
All three passing means the page serves, the slashed form canonicalizes in one hop, and the directory's real children are unaffected.
Where this article came from
The incident is real: it happened on 2026-09-08 while shipping the Contextkeeping build log — the directory for the new posts shadowed the page that listed them. The build-log series shows the same discipline this standard asks for, running as a system: a git-backed record, a validation gate, and a gap loop. Start at the reading room.
Read the four clauses The raw artifact — specimen.md
The specimen is a living record: when its content is re-verified, the verified: date moves, and this page moves with it — the freshness clause, practiced.