A OpenCMIS TCK harness to assess CMIS Standard conformity.
Find a file
codex d8d63f8244
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): declare records the hub already holds as workplans
Canon defines six work-record kinds — workplan, task, intake, decision,
engagement, register-entry. These files declared none of them (feature, runbook,
bug-report, extension-workplan, scorecard, session-note, adhoc) while the hub
held each as a workplan.

Selection is by 'type: workplan', so the mismatch made them invisible to any
projection: a forge-derived reset read their correct hub records as no longer
deriving and proposed retiring live work.

Where a file also lacked a canonical identifier, one was assigned continuing the
repository's sequence. Existing hub identifiers are preserved, so no record is
orphaned.

Refs STATE-WP-0083

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-26 10:29:31 +02:00
.claude/rules docs: workplan-first agent guidance prose (CUST-WP-0055 T04 batch 5) 2026-07-08 19:51:42 +02:00
.forgejo/workflows Add Forgejo CI smoke workflow (enablement template) 2026-07-08 12:35:18 +02:00
adapters maturity scorecard generation 2026-05-08 01:59:42 +02:00
docs Log analysis functionality for self-assessment 2026-05-14 02:47:00 +02:00
integration feat(integration): add open-reuse Integration Definition for OpenCMIS TCK 2026-06-24 18:25:13 +02:00
mappings chore(consistency): sync task status from DB [auto] 2026-05-07 22:58:28 +02:00
profiles Log analysis functionality for self-assessment 2026-05-14 02:47:00 +02:00
registry Draft capability entry (reuse-surface REUSE-WP-0017-T04, cohort 3) 2026-07-06 19:50:53 +02:00
runners maturity scorecard generation 2026-05-08 01:59:42 +02:00
runtime/opencmis-tck local OpenCMIS TCK runtime 2026-05-07 23:43:21 +02:00
scripts Log analysis functionality for self-assessment 2026-05-14 02:47:00 +02:00
src/open_cmis_tck Log analysis functionality for self-assessment 2026-05-14 02:47:00 +02:00
tests Log analysis functionality for self-assessment 2026-05-14 02:47:00 +02:00
workplans fix(workplans): declare records the hub already holds as workplans 2026-08-26 10:29:31 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-07-03 18:51:25 +02:00
.gitignore local OpenCMIS TCK runtime 2026-05-07 23:43:21 +02:00
.repo-classification.yaml Add .repo-classification.yaml (CUST-WP-0050 T11 agent first-pass) 2026-06-22 17:47:39 +02:00
AGENTS.md docs(agents): repoint remote State Hub URL to the in-cluster address 2026-08-25 00:21:26 +02:00
CLAUDE.md Add credential routing instructions for all agent runtimes 2026-06-18 22:48:38 +02:00
extension.json chore(consistency): sync task status from DB [auto] 2026-05-07 22:58:28 +02:00
INTENT.md Separated open-cmis-tck and guide-board repositories 2026-05-07 21:52:08 +02:00
LICENSE Adopt Target Revenue Source License V1C1 (org-wide preliminary rollout) 2026-07-30 00:38:05 +02:00
pyproject.toml Separated open-cmis-tck and guide-board repositories 2026-05-07 21:52:08 +02:00
README.md Log analysis functionality for self-assessment 2026-05-14 02:47:00 +02:00
SCOPE.md Refresh agent instruction files 2026-05-18 16:55:46 +02:00

open-cmis-tck

open-cmis-tck is the CMIS conformance-preparation extension for guide-board. It keeps CMIS-specific runner code, profiles, capability mappings, and workplans outside the generic framework repo.

This extension does not issue certifications. It produces preparation evidence that can support compatibility reviews and future certification work.

Relationship To Guide Board

Use this repo as an external extension root:

cd ../guide-board
PYTHONPATH=src python3 -m guide_board \
  --extension-dir ../open-cmis-tck \
  extensions list

The extension root is this repository directory. It exposes:

  • extension.json
  • src/open_cmis_tck/preflight.py
  • runners/opencmis_tck.py
  • mappings/cmis-capability-map.json
  • CMIS sample profiles under profiles/

Local Baseline

From the guide-board repo:

PYTHONPATH=src python3 -m guide_board \
  --extension-dir ../open-cmis-tck \
  plan \
  --target ../open-cmis-tck/profiles/targets/kontextual-cmis-compat.json \
  --assessment ../open-cmis-tck/profiles/assessments/cmis-browser-baseline.json

To run the current baseline:

PYTHONPATH=src python3 -m guide_board \
  --extension-dir ../open-cmis-tck \
  run \
  --target ../open-cmis-tck/profiles/targets/kontextual-cmis-compat.json \
  --assessment ../open-cmis-tck/profiles/assessments/cmis-browser-baseline.json \
  --output-dir /tmp/open-cmis-tck-baseline

Expected current behavior:

  • CMIS Browser Binding preflight runs first.
  • Failed preflight blocks downstream TCK groups.
  • The Java/Maven OpenCMIS wrapper reports structured blockers until a local Apache Chemistry TCK command is configured.
  • If a command is configured, raw stdout/stderr and normalized runner output are captured under the guide-board run directory.

Runner command configuration lives in runtime_policy.opencmis_tck.command. See docs/OPENCMIS-TCK-RUNNER.md.

If the workstation does not have Java and Maven in WSL, see docs/LOCAL-RUNBOOK.md for the repo-local toolchain installer path.

After a run, generate the OpenCMIS warning/stderr/skip review and archive any important product evidence outside /tmp:

cd ../open-cmis-tck
PYTHONPATH=src python3 scripts/opencmis_log_review.py \
  --run-dir /tmp/open-cmis-tck-baseline
PYTHONPATH=src python3 scripts/archive_assessment_run.py \
  --run-dir /tmp/open-cmis-tck-baseline \
  --archive-root .local/runs/archive

Tests

Run extension tests with the guide-board core on PYTHONPATH:

PYTHONPATH=../guide-board/src python3 -m unittest discover -s tests

Docs

Boundary

Apache Chemistry/OpenCMIS TCK dependencies may be restricted by upstream licensing or distribution constraints. This repo records the extension boundary and wrapper interface, but restricted harness assets should be resolved or mounted explicitly by the user or by a future extension-specific image.