Skip to content

Ops Cityjsonseq Feature Root Id Not Shared

Hand-written CityJSONSeq stream with a base CityJSON header and multiple CityJSONFeature items that differ only by their root id. Verifies that the root id is preserved per feature and does not affect shared-root compatibility.

Case

  • id: ops_cityjsonseq_feature_root_id_not_shared
  • layer: operation
  • family: operation_kernel
  • artifact_mode: checked-in
  • source_kind: synthetic
  • representation: jsonl
  • path: cases/operations/ops_cityjsonseq_feature_root_id_not_shared

Files

  • source: cases/operations/ops_cityjsonseq_feature_root_id_not_shared/ops_cityjsonseq_feature_root_id_not_shared.city.jsonl

Source JSON

case.json

{
  "artifact_mode": "checked-in",
  "artifact_paths": {
    "source": "cases/operations/ops_cityjsonseq_feature_root_id_not_shared/ops_cityjsonseq_feature_root_id_not_shared.city.jsonl"
  },
  "assertions": [
    "feature_root_id_not_shared_state",
    "feature_boundaries_preserved"
  ],
  "cityjson_version": "2.0",
  "description": "Hand-written CityJSONSeq stream with a base CityJSON header and multiple CityJSONFeature items that differ only by their root id. Verifies that the root id is preserved per feature and does not affect shared-root compatibility.",
  "family": "operation_kernel",
  "geometry_kind": "dummy",
  "id": "ops_cityjsonseq_feature_root_id_not_shared",
  "layer": "operation",
  "representation": "jsonl",
  "source_kind": "synthetic",
  "version": 2
}

invariants.json

{
  "checks": [
    {
      "description": "Feature root id remains local to each feature item.",
      "id": "feature_root_id_not_shared_state"
    },
    {
      "description": "Feature boundaries remain stable during streaming.",
      "id": "feature_boundaries_preserved"
    }
  ],
  "id": "ops_cityjsonseq_feature_root_id_not_shared",
  "kind": "positive",
  "version": 1
}