UAT: UKO Layer 1 domain specializations (uko-code:, uko-doc:, uko-data:, uko-infra:) are not implemented — Layer 2 extends Layer 0 directly #6817

Open
opened 2026-04-10 02:14:06 +00:00 by HAL9000 · 0 comments
Owner

Background and Context

The Universal Knowledge Ontology (UKO) is specified as a four-layer architecture. Layer 1 defines domain-specific specializations that Layer 2 and Layer 3 must extend. This is a foundational architectural requirement per the specification.

Current Behavior

Inspecting src/cleveragents/acms/uko/:

__init__.py
detail_level_maps.py
layer3_java.py
layer3_py.py
layer3_rs.py
layer3_ts.py
vocabularies.py       ← Layer 2 only (uko-oo:, uko-func:, uko-proc:)
vocabulary.py
vocabulary_registry.py

Layer 2 vocabularies (uko-oo:, uko-func:, uko-proc: in vocabularies.py) reference only Layer 0 URIs directly:

# Layer 0 URIs
UKO_CONTAINER = "https://cleveragents.ai/ontology/uko#Container"
UKO_ATOM = "https://cleveragents.ai/ontology/uko#Atom"
UKO_BOUNDARY = "https://cleveragents.ai/ontology/uko#Boundary"

There is no Layer 1 module implementing:

  • uko-code: — general software concepts (modules, callables, types)
  • uko-doc: — document concepts (sections, paragraphs, citations)
  • uko-data: — data schema concepts (tables, columns, constraints)
  • uko-infra: — infrastructure concepts (services, endpoints, config)

Layer 3 Python vocabulary (layer3_py.py) declares Layer2Dependency pointing to uko-oo: Layer 2 URIs but no dependency on the intermediate uko-code: Layer 1 vocabulary it should extend via inheritance chain.

Expected Behavior (from spec)

Per spec §ACMS Architecture (lines 44133–44136):

Layer 1 specializes for domain-specific concepts: general software (uko-code: — modules, callables, types), documents (uko-doc: — sections, paragraphs, citations), data schemas (uko-data: — tables, columns, constraints), and infrastructure (uko-infra: — services, endpoints, config). Each domain registers a DetailLevelMap that assigns named labels to specific integer depths (e.g., uko-code: maps MODULE_LISTING → 0, SIGNATURES → 4, FULL_SOURCE → 9).

And from the Glossary:

UKO (Universal Knowledge Ontology): Four layers: universal foundation, domain specializations (software, documents, data schemas, infrastructure), paradigm/format specializations (procedural programming, markdown), and technology-specific (Python, PostgreSQL).

The required Layer 1 namespaces and their DetailLevelMaps must exist:

  • uko-code: at https://cleveragents.ai/ontology/uko/code# — with MODULE_LISTING → 0, SIGNATURES → 4, FULL_SOURCE → 9
  • uko-doc: at https://cleveragents.ai/ontology/uko/doc#
  • uko-data: at https://cleveragents.ai/ontology/uko/data#
  • uko-infra: at https://cleveragents.ai/ontology/uko/infra#

Layer 2 vocabularies must extend Layer 1 (not Layer 0 directly). Layer 3 vocabularies must declare Layer 1 dependencies.

Steps to Reproduce

  1. Inspect src/cleveragents/acms/uko/ — no layer1_*.py modules exist
  2. Inspect src/cleveragents/acms/uko/vocabularies.py — Layer 2 directly references UKO_CONTAINER (Layer 0), bypassing Layer 1
  3. Inspect src/cleveragents/acms/uko/layer3_py.pyLayer2Dependency entries reference uko-oo: (Layer 2) but no uko-code: (Layer 1) intermediate

Code Location

  • src/cleveragents/acms/uko/ — missing layer1_code.py, layer1_doc.py, layer1_data.py, layer1_infra.py
  • src/cleveragents/acms/uko/vocabularies.py — Layer 2 references Layer 0 directly

Acceptance Criteria

  • layer1_code.py implements the uko-code: vocabulary with classes for modules, callables, types, and a DetailLevelMap mapping MODULE_LISTING → 0, SIGNATURES → 4, FULL_SOURCE → 9
  • layer1_doc.py implements the uko-doc: vocabulary with classes for sections, paragraphs, citations
  • layer1_data.py implements the uko-data: vocabulary with classes for tables, columns, constraints
  • layer1_infra.py implements the uko-infra: vocabulary with classes for services, endpoints, config
  • Layer 2 vocabularies (uko-oo:, uko-func:, uko-proc:) extend appropriate Layer 1 types (not Layer 0 directly)
  • Layer 3 vocabularies declare Layer1Dependency entries for uko-code: (or uko-data:, etc. as appropriate)
  • VocabularyRegistry supports registering and retrieving Layer 1 vocabularies

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: uat-tester

## Background and Context The Universal Knowledge Ontology (UKO) is specified as a four-layer architecture. Layer 1 defines domain-specific specializations that Layer 2 and Layer 3 must extend. This is a foundational architectural requirement per the specification. ## Current Behavior Inspecting `src/cleveragents/acms/uko/`: ``` __init__.py detail_level_maps.py layer3_java.py layer3_py.py layer3_rs.py layer3_ts.py vocabularies.py ← Layer 2 only (uko-oo:, uko-func:, uko-proc:) vocabulary.py vocabulary_registry.py ``` Layer 2 vocabularies (`uko-oo:`, `uko-func:`, `uko-proc:` in `vocabularies.py`) reference only **Layer 0** URIs directly: ```python # Layer 0 URIs UKO_CONTAINER = "https://cleveragents.ai/ontology/uko#Container" UKO_ATOM = "https://cleveragents.ai/ontology/uko#Atom" UKO_BOUNDARY = "https://cleveragents.ai/ontology/uko#Boundary" ``` There is **no Layer 1 module** implementing: - `uko-code:` — general software concepts (modules, callables, types) - `uko-doc:` — document concepts (sections, paragraphs, citations) - `uko-data:` — data schema concepts (tables, columns, constraints) - `uko-infra:` — infrastructure concepts (services, endpoints, config) Layer 3 Python vocabulary (`layer3_py.py`) declares `Layer2Dependency` pointing to `uko-oo:` Layer 2 URIs but no dependency on the intermediate `uko-code:` Layer 1 vocabulary it should extend via inheritance chain. ## Expected Behavior (from spec) Per spec §ACMS Architecture (lines 44133–44136): > **Layer 1** specializes for domain-specific concepts: general software (`uko-code:` — modules, callables, types), documents (`uko-doc:` — sections, paragraphs, citations), data schemas (`uko-data:` — tables, columns, constraints), and infrastructure (`uko-infra:` — services, endpoints, config). Each domain registers a DetailLevelMap that assigns named labels to specific integer depths (e.g., `uko-code:` maps `MODULE_LISTING` → 0, `SIGNATURES` → 4, `FULL_SOURCE` → 9). And from the Glossary: > **UKO (Universal Knowledge Ontology):** Four layers: universal foundation, domain specializations (software, documents, data schemas, infrastructure), paradigm/format specializations (procedural programming, markdown), and technology-specific (Python, PostgreSQL). The required Layer 1 namespaces and their DetailLevelMaps must exist: - `uko-code:` at `https://cleveragents.ai/ontology/uko/code#` — with `MODULE_LISTING → 0`, `SIGNATURES → 4`, `FULL_SOURCE → 9` - `uko-doc:` at `https://cleveragents.ai/ontology/uko/doc#` - `uko-data:` at `https://cleveragents.ai/ontology/uko/data#` - `uko-infra:` at `https://cleveragents.ai/ontology/uko/infra#` Layer 2 vocabularies must extend Layer 1 (not Layer 0 directly). Layer 3 vocabularies must declare Layer 1 dependencies. ## Steps to Reproduce 1. Inspect `src/cleveragents/acms/uko/` — no `layer1_*.py` modules exist 2. Inspect `src/cleveragents/acms/uko/vocabularies.py` — Layer 2 directly references `UKO_CONTAINER` (Layer 0), bypassing Layer 1 3. Inspect `src/cleveragents/acms/uko/layer3_py.py` — `Layer2Dependency` entries reference `uko-oo:` (Layer 2) but no `uko-code:` (Layer 1) intermediate ## Code Location - `src/cleveragents/acms/uko/` — missing `layer1_code.py`, `layer1_doc.py`, `layer1_data.py`, `layer1_infra.py` - `src/cleveragents/acms/uko/vocabularies.py` — Layer 2 references Layer 0 directly ## Acceptance Criteria - [ ] `layer1_code.py` implements the `uko-code:` vocabulary with classes for modules, callables, types, and a DetailLevelMap mapping `MODULE_LISTING → 0`, `SIGNATURES → 4`, `FULL_SOURCE → 9` - [ ] `layer1_doc.py` implements the `uko-doc:` vocabulary with classes for sections, paragraphs, citations - [ ] `layer1_data.py` implements the `uko-data:` vocabulary with classes for tables, columns, constraints - [ ] `layer1_infra.py` implements the `uko-infra:` vocabulary with classes for services, endpoints, config - [ ] Layer 2 vocabularies (`uko-oo:`, `uko-func:`, `uko-proc:`) extend appropriate Layer 1 types (not Layer 0 directly) - [ ] Layer 3 vocabularies declare `Layer1Dependency` entries for `uko-code:` (or `uko-data:`, etc. as appropriate) - [ ] `VocabularyRegistry` supports registering and retrieving Layer 1 vocabularies --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
HAL9000 added this to the v3.6.0 milestone 2026-04-10 02:14:15 +00:00
HAL9000 self-assigned this 2026-04-10 06:07:50 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#6817
No description provided.