content-explorer/history/2026-10-12-1905-scope-against-intent.md
tegwick 072a7fa550 Freeze the v0.1 contract and the local ingest connector.
The snapshot and manifest schemas, both example dataspaces, and the shared text renderer now pass the fixture validator and the negative contract tests. JSON, NDJSON, and Markdown frontmatter publish a snapshot only when rights, identity, and references allow it. CONTENT-WP-0001 and CONTENT-WP-0003 are marked finished against those artifacts. CONTENT-WP-0000-T04 stays open. SCOPE.md and the 19:05 scope-against-intent note record the stop.

Assistant: grok
Assistant-Session: 01a130f1-abfb-7d71-9cd6-a8b75ec7f95a
2026-10-12 19:07:32 +02:00

6.2 KiB

SCOPE against INTENT — 2026-10-12 19:05 CEST

This note compares SCOPE.md (the tree at the stop below) with INTENT.md (initial intent v0.1, 2026-10-12). It can be read without the session transcript.

Stop

Implementation stopped at 2026-10-12 19:05 CEST, before 24:00 local. The reason is dependency order, not the clock. CONTENT-WP-0001 and CONTENT-WP-0003 are finished in the workplan files. CONTENT-WP-0002 depends on CONTENT-WP-0000 as well as 0001, and 0000 still has T04 open. CONTENT-WP-0004, 0005, and 0006 depend on plans that have not started. CONTENT-WP-0007 stays blocked on data-use authorization. No further registered plan was eligible.

CONTENT-WP-0000-T04 stays todo. At 18:52 CEST the workstation had no Chrome, Chromium, Firefox, or Playwright launcher (command -v found none). Live OnCo page titles were fetched over HTTP during the baseline. No screenshot and no keyboard walkthrough were produced, and T04 was not marked done. The same absence is why the v0.1 browser journey below is unmet. Chromium was not installed during this session.

What already matches the mission

INTENT asks for a maintainable, domain-independent adaptation, with a connector projecting sources into a provenance-aware model and a manifest configuring presentation.

  • Two unrelated authored dataspaces exist: systems thinking and software architecture. Their sentences were written for this demo. They are not an OnCo import. Both pass python3 scripts/validate_fixtures.py, including the size gate of at least three kinds and eight entities.
  • The canonical types Dataspace, Kind, Entity, Relation, Claim, and Source are required by contracts/snapshot.schema.json at schemaVersion 0.1. Navigation, kind views, panels, relation labels, and fact policy live in contracts/manifest.schema.json.
  • Domain wording is data. content_explorer/render.py reads the heading, kind plurals, and relation labels from the snapshot and the manifest. tests/test_contract.py switches the manifest while holding the systems snapshot fixed, and checks that the renderer source does not contain the fixture vocabulary.
  • Fact policy distinguishes missing, unknown, one asserted value, withheld, and two asserted values. show-all, preferred, and withhold are specified in contracts/fact-policy.md and covered by tests. Absence is not stored as unknown or false.
  • Ingestion is replaceable and does not render. content_explorer/ingest.py loads local JSON, NDJSON, and Markdown frontmatter (PyYAML). Equivalent records from those three inputs produce one snapshot hash. A second run of the same input repeats that hash. The report carries connector version 0.1.0 and a SHA-256 source digest.
  • Every published tldr claim has evidenceRefs pointing at the source id. The source carries uri, title, license, and attribution.
  • Dangling relations, duplicate identity, a key that is both live and tombstoned, an unknown kind, a missing relation label, a missing or disallowed license, and CC-BY-4.0 without attribution all refuse publication. Allowed licenses are CC0-1.0, CC-BY-4.0, and MIT. CC BY-NC is quarantined.
  • Publish writes snapshot.json, manifest.json, import-report.json, and a human import-report.md by renaming a completed directory into place.
  • Reuse limits match INTENT principle 10. The baseline record separates MIT code from CC BY-NC data, logos, and portraits. Those assets are not in this repo. CONTENT-WP-0007 was not advanced.

v0.1 proof that is still unmet

INTENT's exit criteria are stronger than the seed that exists tonight.

  • No browser UI. Switching dataspaces is proven for the text renderer, not for React components. There is still no landing page, faceted index, detail page, search, graph view, or route per entity. The browse, filter, entity, neighbor, and source journey has not been walked by mouse or keyboard.
  • CONTENT-WP-0000 is partial. The pin, license matrix, import trace, and reuse decision exist. Screenshots and the keyboard walkthrough do not.
  • CONTENT-WP-0002 has not started, so no OnCo table, facet control, or detail shell has been extracted. The earlier reuse note names ResultsTable, FacetSelect, browser sort, URL state, and a detail shell as later candidates. They were not copied in this session.
  • Collection is named in INTENT's common types and is not a v0.1 schema object. Navigation and view metadata are on the manifest instead.
  • The connector is local only. Remote static files, wiki-style references, refresh checkpoints, and the GitHub or Wikidata connector are not implemented. connectors/json_fixture.py only reads a snapshot that already exists.
  • Conflicting source values are not merged into a contested claim. Two records with the same kind and key block publication as an identity conflict. The snapshot schema can store contested claims, and the fact policy can display them, but the connector does not produce that state.
  • No two-domain visual review and no automated UI or end-to-end test. research/UXParityMatrix.md is still a research note, not a release-candidate parity result.
  • Regression coverage is the Python contract and ingest tests, not an upstream next build or the OnCo test suite.

Deferrals

Left for a later session, in workplans/README.md order:

  • Finish CONTENT-WP-0000-T04 when a headless browser is available, then start CONTENT-WP-0002.
  • CONTENT-WP-0004 (relations and journeys) after 0002. 0003, which it also needs, is finished.
  • CONTENT-WP-0005 after 0004. Quality measurement was not opened early.
  • CONTENT-WP-0006 (third connector, MCP is out of scope until then) after 0005.
  • CONTENT-WP-0007 until a person authorizes OnCo data use. Do not vendor src/data, public/logos, or public/portraits.

Status the files claim

Workplan File status SCOPE verdict
CONTENT-WP-0000 active partial
CONTENT-WP-0001 finished finished for the contract and text renderer, not for a browser proof
CONTENT-WP-0002 proposed not started
CONTENT-WP-0003 finished finished for the local connector described in its evidence section
CONTENT-WP-0004 proposed not started
CONTENT-WP-0005 proposed not started
CONTENT-WP-0006 proposed not started
CONTENT-WP-0007 blocked blocked, not finished