Files changed: - .gitea/workflows/ci.yml - AGENTS.md - CHANGES.md - VERSION - instructions/CONTRACT.md - instructions/link-taxonomy.md - instructions/migrations/4.0.0-link-taxonomy.md - instructions/setup-instance.md - kb/CONTRACT.md - kb/CONVENTIONS.md - kb/CONVENTIONS.md.template - kb/comparisons/COLLECTION.md - kb/concepts/COLLECTION.md - kb/entities/COLLECTION.md - kb/sources/COLLECTION.md - tools/CONTRACT.md - tools/README.md - tools/chemenu/blocks.py - tools/chemenu/cli.py - tools/chemenu/commands/cite_cmd.py - tools/chemenu/commands/dist_cmd.py - tools/chemenu/commands/docs_verify.py - tools/chemenu/commands/doctor.py - tools/chemenu/commands/links_cmd.py - tools/chemenu/commands/migrate_cmd.py - tools/chemenu/commands/new_page.py - tools/chemenu/commands/page_ops.py - tools/chemenu/commands/run_budget.py - tools/chemenu/commands/xref.py - tools/chemenu/conventions.py - tools/chemenu/corpus_diff.py - tools/chemenu/frontmatter_io.py - tools/chemenu/kb_collections.py - tools/chemenu/kb_state.py - tools/chemenu/links.py - tools/chemenu/lint_core.py - tools/chemenu/provenance.py - tools/chemenu/sections.py - tools/chemenu/tests/conftest.py - tools/chemenu/tests/test_blocks.py - tools/chemenu/tests/test_cite_cmd.py - tools/chemenu/tests/test_conventions.py - tools/chemenu/tests/test_dist_cmd.py - tools/chemenu/tests/test_doctor.py - tools/chemenu/tests/test_migrate_cmd.py - tools/chemenu/tests/test_new_page.py - tools/chemenu/tests/test_pipeline_l0.py - tools/chemenu/tests/test_types_cmd.py - tools/chemenu/tests/test_xref.py - types/concept.schema.yaml - types/entity.md - types/entity.schema.yaml - types/instruction.schema.yaml - types/type-spec.md - work/link-taxonomy-migration/README.md - work/link-taxonomy-migration/plan.md
2.7 KiB
profile, outbound, required_by_stack
| profile | outbound | required_by_stack | |||||
|---|---|---|---|---|---|---|---|
| comparisons |
|
false |
kb/comparisons/ - Collection Contract
Structured head-to-head evaluations of two or more things that already have pages here. A comparison exists so that neither subject's own page has to argue against the other.
Quality goal: decidability - a reader with a concrete situation should be able to choose. That needs named, checkable dimensions and a stated trade-off; a page that lists differences without saying what they cost has described, not compared.
Inherits kb/CONTRACT.md for the rules the stack enforces - linking mechanics, provenance, citation, the confidence machinery - and kb/CONVENTIONS.md for what this instance decided: language, naming forms, tone, relationship labels, the confidence rubric. Neither is restated here.
Types offered
comparison (tools/wikitool types describe comparison).
Naming
The title form is kb/CONVENTIONS.md § Naming's. What is local here is the ordering: name the subjects as they are most commonly spoken together, not alphabetically.
Requirements
- Every subject must already have its own page. A comparison is a view over existing knowledge, not a place to introduce it. Create the entity or concept pages first, then compare them.
- Compare on stated, checkable dimensions - a table with one row per dimension, one column per subject. Cite hard facts the same way any other page does.
- State the trade-off, not a winner. Where a recommendation is genuinely warranted, scope it: "for X workload", not "better".
Authorised labels
The outbound: block above is what wikitool lint and xref add check: which labels a page in
this collection may use, per destination. The catalogue they are drawn from - and what each one
asserts - is instructions/link-taxonomy.md, which binds
nothing on its own.
Narrow for the opposite reason: a comparison's substance is its table, and its links to the compared subjects are the one relationship it asserts.
Adding a label here is a deliberate contract change, not a way around a refusal.
Outbound linking
A comparison links to every subject with compares-with. The subjects do not have to link back:
a comparison is reached through the catalog, and each subject's inbound view renders the edge
anyway. Comparison pages are exempt from the orphan check for the same reason.
What does not belong here
- A comparison of things this wiki does not otherwise cover.
- Feature-matrix dumps copied from a vendor page. If the material is a source, ingest it as one and compile the comparison from it.