Catalog (70)

IDDocumentUpdatedAnchorsSHA
agents/ag2-extraction-notesAG2 Extraction Notes
agents/ag2-extraction-notes.md
10/20/2018, 1:46:40 AM11e8d0072ebec1
asset-provenanceAsset Provenance
asset-provenance.md
10/20/2018, 1:46:40 AM41025c0acc117
closeout-notesAI-RSI one-click closeout notes
closeout-notes.md
10/20/2018, 1:46:40 AM21f560f6a8535
content-credibility-engineContent Credibility Engine
content-credibility-engine.md
10/20/2018, 1:46:40 AM8d9aa32358670
demo-scriptDemo Video — Shot List & Script (60–90s)
demo-script.md
10/20/2018, 1:46:40 AM2131ddae42e6e
deploymentDeployment — Vercel + Render
deployment.md
10/20/2018, 1:46:40 AM84911b1f459b5
development-roadmapMeta Museum Development Roadmap
development-roadmap.md
10/20/2018, 1:46:40 AM23624a8a089d72
development/aidd-tddAIDD + TDD Discipline
development/aidd-tdd.md
10/20/2018, 1:46:40 AM5cd0a0524525a
envEnvironment Variables
env.md
10/20/2018, 1:46:40 AM109c18634cab1a
evals/golden-museum-questionsGolden Eval Dataset: Complex Museum Questions
evals/golden-museum-questions.md
10/20/2018, 1:46:40 AM62876a2b5e78d
linked-art/conformance-matrixLinked Art 1.0 — Conformance Matrix
linked-art/conformance-matrix.md
10/20/2018, 1:46:40 AM553ff87000bf4
linked-art/Linked%20Art%20NotesLinked Art Notes.md
linked-art/Linked Art Notes.md
10/20/2018, 1:46:40 AM0aca66d51107b
linked-art/Linked%20Open%20Art%20Data%20Web%20App%20-%20Must-have%20Data%20SourcesLinked Open Art Data Web App (AI) — Must-have Data Sources
linked-art/Linked Open Art Data Web App - Must-have Data Sources.md
10/20/2018, 1:46:40 AM77b7d350fe8a0
linked-art/LinkedArtAppFeatures🏛️ Art Explorer: Linked Art Application & Ecosystem
linked-art/LinkedArtAppFeatures.md
10/20/2018, 1:46:40 AM14e23b890ecd2a
linked-art/LinkedArtChallengesLinkedArtChallenges.md
linked-art/LinkedArtChallenges.md
10/20/2018, 1:46:40 AM0d8c987070277
linked-art/LinkedArtCollaborationLinkedArtCollaboration.md
linked-art/LinkedArtCollaboration.md
10/20/2018, 1:46:40 AM114ccf63edef3
linked-art/LinkedArtDashboardLinkedArtDashboard.md
linked-art/LinkedArtDashboard.md
10/20/2018, 1:46:40 AM06d04d4b2bf79
linked-art/LinkedArtFeatureRoadmapFeature Roadmap for Linked Open Art Data Apps
linked-art/LinkedArtFeatureRoadmap.md
10/20/2018, 1:46:40 AM8ac10d8e79c20
linked-art/LinkedArtJobReadyLinkedArtJobReady.md
linked-art/LinkedArtJobReady.md
10/20/2018, 1:46:40 AM0c60b357bcb87
linked-art/LinkedArtModel1.0-ReferenceLinked Art Model 1.0 Reference (Round 1)
linked-art/LinkedArtModel1.0-Reference.md
10/20/2018, 1:46:40 AM344e6d48d474b3e
linked-art/LinkedArtPatternsLinkedArtPatterns.md
linked-art/LinkedArtPatterns.md
10/20/2018, 1:46:40 AM0d45bbbb02d70
linked-art/LinkedArtPRD🖼️ Product Requirements Document
linked-art/LinkedArtPRD.md
10/20/2018, 1:46:40 AM2091bc1f37307c
linked-art/LinkedArtRoadmapLinkedArtRoadmap.md
linked-art/LinkedArtRoadmap.md
10/20/2018, 1:46:40 AM0e52e71c6bd28
linked-art/LinkedArtSaaSLinkedArtSaaS.md
linked-art/LinkedArtSaaS.md
10/20/2018, 1:46:40 AM03d260738fb29
linked-art/LinkedArtSoftwareCode and Tools
linked-art/LinkedArtSoftware.md
10/20/2018, 1:46:40 AM89e8fef24aea9
linked-art/LinkedArtSOTAWebAppLinkedArt SOTA Web App — Master Build Specification
linked-art/LinkedArtSOTAWebApp.md
10/20/2018, 1:46:40 AM129a5f0baca89c6
linked-art/LinkedArtUnmetNeedsLinkedArtUnmetNeeds.md
linked-art/LinkedArtUnmetNeeds.md
10/20/2018, 1:46:40 AM0cb35fac29cc1
linked-art/LinkedArtUseCasesLinkedArtUseCases.md
linked-art/LinkedArtUseCases.md
10/20/2018, 1:46:40 AM05c572ce8e7f3
linked-art/LinkedArtWidgetsLinkedArtWidgets.md
linked-art/LinkedArtWidgets.md
10/20/2018, 1:46:40 AM0b39911c7d97d
linked-art/LinkedDesignLinkedDesign.md
linked-art/LinkedDesign.md
10/20/2018, 1:46:40 AM00a02240471e5
linked-art/LODEngineLODEngine.md
linked-art/LODEngine.md
10/20/2018, 1:46:40 AM0ef73426f80db
linked-art/LODPipelineLODPipeline.md
linked-art/LODPipeline.md
10/20/2018, 1:46:40 AM0fe95e61ed9da
linked-art/LODToolsLODTools.md
linked-art/LODTools.md
10/20/2018, 1:46:40 AM03167947fc4e4
linked-art/SPARQLSPARQL.md
linked-art/SPARQL.md
10/20/2018, 1:46:40 AM050e00ed51733
linked-art/VocabulariesVocabularies.md
linked-art/Vocabularies.md
10/20/2018, 1:46:40 AM0e0574a338aaa
linked-art/YaleLuxYaleLux.md
linked-art/YaleLux.md
10/20/2018, 1:46:40 AM074fd47fae749
meta-wiki-art-bridgeMeta Wiki Art Bridge (MediaWiki + Wikibase)
meta-wiki-art-bridge.md
10/20/2018, 1:46:40 AM77a43fb0c48b8
ops/activity-adoption-proofActivity Feed Adoption Proof Runbook
ops/activity-adoption-proof.md
10/20/2018, 1:46:40 AM568a80b43ae58
ops/ag2-workerAG2 Worker and Bridge Runbook
ops/ag2-worker.md
10/20/2018, 1:46:40 AM950efcd4e3318
ops/auth-credential-rotationAuth credential rotation runbook
ops/auth-credential-rotation.md
10/20/2018, 1:46:40 AM4449b8b8eecb6
ops/deployment-preflightDeployment Preflight Runbook
ops/deployment-preflight.md
10/20/2018, 1:46:40 AM5ac60432d0aed
ops/era-c-exit-gate-evidenceEra C Exit-Gate Evidence Pack
ops/era-c-exit-gate-evidence.md
10/20/2018, 1:46:40 AM6656b9c7f85c6
ops/go-live-checklistGo-Live & Evidence-Pipeline Checklist
ops/go-live-checklist.md
10/20/2018, 1:46:40 AM6ae7f5d71f7dc
ops/k6-slok6 SLO Load Test (SOTA §20.4)
ops/k6-slo.md
10/20/2018, 1:46:40 AM4328b5b3163d4
ops/kpi-evidenceSOTA §26 KPI Evidence Input
ops/kpi-evidence.md
10/20/2018, 1:46:40 AM5d7b2973d2927
ops/launch-reviewLaunch Review Packet
ops/launch-review.md
10/20/2018, 1:46:40 AM5880e41ebcbe3
ops/managed-linked-art-pilot-runbookManaged Linked Art Pilot Runbook
ops/managed-linked-art-pilot-runbook.md
10/20/2018, 1:46:40 AM11d4f125c2ddae
ops/otel-localLocal OpenTelemetry Wiring (Tempo / Jaeger)
ops/otel-local.md
10/20/2018, 1:46:40 AM51ebbc3b33f92
ops/outbox-projectorTransactional Outbox Projector (Postgres -> Solr/GraphDB)
ops/outbox-projector.md
10/20/2018, 1:46:40 AM5dc70ad766471
ops/procurement-readiness-packetProcurement Readiness Packet
ops/procurement-readiness-packet.md
10/20/2018, 1:46:40 AM9c5685e82cca7
ops/reconciliation-serviceReconciliation Service (C2)
ops/reconciliation-service.md
10/20/2018, 1:46:40 AM605162c313ea9
ops/search-graph-provisioningSolr 9 + GraphDB Provisioning
ops/search-graph-provisioning.md
10/20/2018, 1:46:40 AM6fc1b15279a84
ops/security-dr-drillPen Test Baseline + DR Drill Runbook
ops/security-dr-drill.md
10/20/2018, 1:46:40 AM3a766ef3e2afc
progress/2026-05-31/era-c-readiness-snapshotEra C Readiness Snapshot (May 31, 2026)
progress/2026-05-31/era-c-readiness-snapshot.md
10/20/2018, 1:46:40 AM39672614ceb53
progress/era-historyMeta Museum — Era Delivery History
progress/era-history.md
10/20/2018, 1:46:40 AM47cc030755d1e5
providers/harvard-art-museumsHarvard Art Museums API Integration Plan
providers/harvard-art-museums.md
10/20/2018, 1:46:40 AM11fa8b980154f5
providers/louvre-collections-jsonLouvre Collections JSON Integration Plan
providers/louvre-collections-json.md
10/20/2018, 1:46:40 AM11775f91a8d813
providers/nga-open-dataNational Gallery of Art (NGA) Open Data Integration Plan
providers/nga-open-data.md
10/20/2018, 1:46:40 AM1151c4807c8de0
providers/princeton-art-museumPrinceton University Art Museum API Integration Plan
providers/princeton-art-museum.md
10/20/2018, 1:46:40 AM11c8823f65ee41
providers/rkd-knowledge-graphRKD Knowledge Graph Integration Plan
providers/rkd-knowledge-graph.md
10/20/2018, 1:46:40 AM162b4b42f2ad42
providers/smithsonian-open-accessSmithsonian Open Access Integration Plan
providers/smithsonian-open-access.md
10/20/2018, 1:46:40 AM12db1ffa4cab02
providers/vanda-collections-apiVictoria and Albert Museum (V&A) Collections API Integration Plan
providers/vanda-collections-api.md
10/20/2018, 1:46:40 AM11755d93972233
qualityQuality & Performance
quality.md
10/20/2018, 1:46:40 AM6174add040960
reconciliation/exhibition-literature-reconciliationExhibition + Literature Reconciliation (B6.1)
reconciliation/exhibition-literature-reconciliation.md
10/20/2018, 1:46:40 AM7293e9d81dd7c
responsible-aiResponsible AI
responsible-ai.md
10/20/2018, 1:46:40 AM8f90006650821
risk-registerRisk Register
risk-register.md
10/20/2018, 1:46:40 AM4becb213d5c5e
roadmap-to-10Roadmap to 10/10
roadmap-to-10.md
10/20/2018, 1:46:40 AM1540a11000dc7e
roadmapMeta Museum Roadmap
roadmap.md
10/20/2018, 1:46:40 AM18145d0cbbe54a
rsi-wikiAI-RSI compounding wiki
rsi-wiki.md
10/20/2018, 1:46:40 AM8b64914fe6f20
wikibase-cloud-migration-checklistWikibase Cloud -> Self-Host Migration Checklist
wikibase-cloud-migration-checklist.md
10/20/2018, 1:46:40 AM12170657fcbf2b

    Current Document: Roadmap to 10/10

    Source updated 10/20/2018, 1:46:40 AM · SHA-256 40a11000dc7e · 85 lines

    Canonical ID: roadmap-to-10

    JSON for this doc:/api/docs/content?path=roadmap-to-10.md

    Human link:/docs?doc=roadmap-to-10.md

    Canonical API endpoint:/api/docs/content?path=roadmap-to-10.md

    Sections (stable anchors):

    Roadmap to 10/10

    Goal: raise both scores to a defensible 10/10 — portfolio readiness and Linked Art 1.0 adherence. Current honest baseline: ~9 / ~8.5.

    Each milestone is one focused PR with explicit acceptance criteria. Check items off as they land.

    ---

    Track A — Portfolio readiness → 10

    A1. Reliable, badged CI ✅ done (2026-06-24)

    Was: the close-out guard (wired into `pnpm test`/`lint`/`build`) turned CI red whenever the local close-out log was >24h old (e.g. PR #16).

    • [x] `scripts/session-closeout.ts` now skips the `--check` guard when `CI` is set (GitHub Actions) — CI tests code, not the local session ritual; the guard still enforces locally. Verified both ways (CI=true → skip; local → enforce).
    • [x] README header carries CI, License: MIT, Linked Art 1.0, and tests badges.
    • Done when: consecutive green CI runs on `main` (this merge produces the first); badges render. ✅ mechanism fixed; green runs accrue from here.

    A2. Dependency & supply-chain hygiene ✅ done (2026-06-24)

    • [x] Resolved the 3 moderate `pnpm audit --prod` advisories via `pnpm.overrides`: postcss → `>=8.5.10` (XSS), and the OTel tree consolidated on `@opentelemetry/core`/`resources`/`sdk-trace-base` `^2.8.0` (memory-DoS fix; also corrects `@vercel/otel`'s mis-resolved 1.30.1 peers). Verified: audit clean, tests 1,114, build green.
    • [x] `.github/dependabot.yml` covers npm + github-actions + all four pip services (weekly, grouped minor/patch); `ci.yml` gains a `pnpm audit --prod --audit-level high` gate.
    • Done: `pnpm audit --prod` reports "No known vulnerabilities found"; Dependabot config active. (One pre-existing upstream `@vercel/otel` peer warning on `instrumentation@0.57.2` remains — not a vulnerability; Dependabot will surface the `@vercel/otel` bump that fixes it.)

    A3. Measured test coverage ✅ done (2026-06-24)

    • [x] `pnpm test:coverage` runs the suite under c8 with a `--check-coverage` gate (lines 85 / functions 85 / branches 70). CI's test step now runs it, so coverage is measured and gated on every run.
    • [x] README shows a coverage badge; current 89.4% lines / 92.1% funcs / 75.5% branch (`src/services` 91.9%, `src/adapters` 91.3%, `src/gateway` 100% — core services well above the 80% bar).
    • [x] Also fixed a CRLF-fragility in the B3 conformance-matrix drift test/generator (normalize line endings) so coverage runs clean on Windows.
    • Done: coverage runs + gates in CI; badge published; core services ≥ 80%.

    A4. Published quality scores ✅ done (2026-06-24)

    • [x] `docs/quality.md`(quality.md) publishes the CI-measured numbers: Lighthouse a11y 100/100 (`/`, `/explore`, `/artwork`), axe 0 severe WCAG 2A/2AA violations across 18 routes, and the k6 performance budget met (cached read 73.5 ms < 200, cold read 56.1 ms < 500, facet search 55.1 ms < 300, 0% errors). README gains an a11y badge.
    • Done: a11y ≥ 95 (it's 100), the stated p95 performance budget is met, all scores published + CI-gated.

    A5. Coherent docs (no remaining walls) ✅ done (2026-06-24)

    • [x] Trimmed `docs/roadmap.md` 1,510 → ~420 lines: kept the current Status, SaaS track, Linked Art uplift, Stack decisions, cross-cutting standards, and forward plan; archived the slice-by-slice Era A/B/C saga (~1,100 lines) to `docs/progress/era-history.md`(progress/era-history.md) with a concise pointer. `getStructuredRoadmap` aggregates both so `/api/roadmap` still exposes full phases/milestones to agents.
    • Done: the roadmap reads as current; full suite 1,128 green.

    A6. (Optional wow) 🟡 script ready — recording pending

    • [x] Shot-by-shot demo script + screenshot-gallery plan at `docs/demo-script.md`(demo-script.md) (60–90s, 6 shots).
    • [ ] Record + embed the video — needs a human screen-record (can't be automated here).

    ---

    Track B — Linked Art 1.0 adherence → 10

    B1. Rights as `Right` entities for ALL providers ✅ done (2026-06-24)

    Was: only the Getty adapter emitted full `Right` entities; others flattened rights to labels.

    • [x] `src/utils/linked-art-rights.ts` synthesizes a `subject_to` `Right` classified by a CC0 / rightsstatements.org URI, wired into both boundaries — `normalizeIncomingRecord` (import) and `migrateToCurrentSchema` (read, so existing stored records conform too). Getty's `Right` entities are preserved; non-object entities are never given one; default is the honest "Copyright Undetermined".
    • Done: every object record carries `Right` + classification; covered by `tests/utils/linked-art-rights.test.ts` (full suite 1,114 green).

    B2. SHACL conformance in CI ✅ done (2026-06-24)

    • [x] `services/validation-service/shacl_gate.py` validates every provider's pass fixture against the Linked Art SHACL shapes with pyld + pyshacl + rdflib (the same pipeline as the validation service); the JSON-LD expands to CIDOC-CRM and the `crm:E22` targetClass applies (not vacuous — a missing `identified_by`/`label` fails).
    • [x] `.github/workflows/shacl-conformance.yml` runs it as a path-filtered CI job (shapes/fixtures/service changes); `pnpm shacl:gate` runs it locally.
    • Done: all 14 pass fixtures conform; a regression that breaks CRM expansion blocks the build. (Shapes are still minimal — richer SHACL coverage is follow-on work.)

    B3. Systematic per-provider fixture matrix ✅ done (2026-06-24)

    • [x] All 13 production providers (+ generic `linked-art`) have pass and fail fixtures in `provider-fixture-manifest.json`, asserted in CI by `validation-architecture-depth.test.ts` (pass conforms, fail rejected) — this part pre-existed.
    • [x] `scripts/generate-conformance-matrix.ts` now generates the per-provider table in `conformance-matrix.md` from those fixtures + the capability registry, validating each fixture live with `inspectLinkedArtRecord`. `pnpm conformance:matrix` rewrites it; `conformance:matrix:check` + `conformance-matrix-generated.test.ts` gate drift in CI.
    • Done: 13/13 providers pass both directions; the published matrix is generated, not hand-maintained. Full suite 1,116 green.

    B4. Faceted / relevance search ✅ done (2026-06-24)

    • [x] `src/services/search.ts` ranks matches by hit quality (exact label > prefix > substring > name) and computes `type`/`provider` facet counts over the full match set; `/api/search` exposes `q`/`type`/`provider`/`limit`/`offset` and returns relevance order + facets in the `ld+json` `OrderedCollectionPage`. Tested (`tests/services/search.test.ts`, plus API-level facet/score/filter assertions).
    • [x] Conformance-matrix "basic, not faceted" gap closed; Solr 9 documented as the env-gated scale-out backend, this in-app impl as the portable default.
    • Done: facets + ranking live + tested; matrix gap closed.

    B5. Activity Streams change-feed conformance ✅ done (2026-06-24)

    • [x] Aligned `/api/activity` to Activity Streams 2.0: added the AS2 `@context`, AS2 `next`/`prev` page links (kept `nextPage`/`prevPage` aliases), a fuller `partOf` `OrderedCollection` with `first`/`last`/`totalItems`, and the `application/activity+json` media type. `Create`/`Update`/`Delete` items unchanged.
    • Done: the feed validates against the AS2 spec shape (`tests/api/activity-as2.test.ts`); suite 1,129.

    B6. HTTP SHOULDs ✅ done (2026-06-24)

    • [x] Canonical Linked Art entity/collection routes (`objects`, `artworks`, `works`, `agents`, `sets`, `concepts`, `entities`, `records`, `search`) export `HEAD` via a `bodilessResponse(await GET(...))` helper — same headers as GET, no body, mirrors 200/404; `OPTIONS` advertises `GET,HEAD,OPTIONS`. Covered by `tests/api/head-methods.test.ts`.
    • [x] HTTP/2 confirmed on the live deploy (`HTTP/2.0 200` via Vercel edge).
    • Done: `HEAD` returns headers without a body; HTTP/2 verified live. Full suite 1,128.

    ---

    1. A1 — green, badged CI (fast, unblocks a clean portfolio surface).
    1. A2 — vulns + Dependabot (quick, removes a real ding).
    1. B1 — rights as `Right` entities (the biggest Linked Art win).
    1. A3 + B3 — measurable rigor (coverage + the fixture matrix).
    1. B2 + B4 — the heavier conformance lifts (SHACL CI, faceted search).
    1. A4 / A5 / A6 + B5 / B6 — polish to close out both 10s.

    Each step ships as its own PR with the acceptance criteria above met and the full suite green.

    AI/agent quick endpoints