Repository navigation
feat(OMN-15651): align delegation task-class Literal to the 15-class Market authority - #1541
Conversation
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 1 minute Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
Comment |
…#6020) * evidence(OMN-15651): OCC companion for OmniNode-ai/omnibase_core#1541 Appends Evidence-Source autobind + schema-exactness dod_evidence entries for the omnibase_core landing-step-1b PR to the existing OMN-15651 ticket contract (net-new append only; the 5 prior entries from the omnimarket step-1a companion, OCC#6013, are untouched). * evidence(OMN-15651): self-bind OCC companion PR #6020 Adds the occ-self-bind entry for OCC#6020 to the OMN-15651 ticket contract.
OMN-15651: align delegation task-class Literal to the 15-class Market authority
Evidence-Source: OCC#6020
Evidence-Ticket: OMN-15651
This PR lands step 1b of the OMN-15651 task-class-authority landing: it adds
the two missing classes (
documentation,validator_generation) toModelDelegationRequest.task_type'sLiteralinmodel_delegation_wire_request.py, so the Core wire DTO admits the full15-class Market-authoritative universe. Core intentionally does not import
Market at runtime — this Literal is the Core-side full-consumer copy, kept
mechanically coherent with the Market authority through cross-repository
admission, not a shared import.
Ticket: OMN-15651
proof_class: receipt-bound
Seam declaration (OMN-14208)
omnimarket/src/omnimarket/configs/task_class_contracts.v1.yaml,top-level key
task_classes, exactly 15 classes:agent_delegation,code_generation,code_review,complex_reasoning,document,documentation,escalation,planning,reasoning,refactor,research,review,summarization,test,validator_generation.gateway_exposure, nested attask_classes.<class>.gateway_exposure,closed string enum
"public"|"internal", required on all 15 (no default,no inference) — owned by the Market authority (see companion PR
omnimarket#2012, not part of this PR's diff).public(11):code_generation,code_review,complex_reasoning,document,planning,reasoning,refactor,research,review,summarization,test.internal(4):agent_delegation,documentation,escalation,validator_generation.exactly): this PR's own file —
omnibase_core/src/omnibase_core/models/delegation/wire/model_delegation_wire_request.py(
ModelDelegationRequest.task_typeLiteral) — measured before this PR:13 members, missing
documentationandvalidator_generation; afterthis PR: all 15 present (verified by the new
test_task_type_schema_is_exact_canonical_full_universetest, which assertsfrozenset(schema["enum"]) == _CANONICAL_DELEGATION_TASK_TYPES— the full15-class frozenset). The remaining full_consumer copies
(
omnimarketmodels/contracts,node_delegate_skill_orchestrator,node_delegation_orchestrator,adapters/claude_code/delegate.py,node_task_execution_orchestrator) are Market-owned and land in thecompanion
omnimarket#2012PR, not this one.omninode_infra/docker/onex-api/workflow-contracts.yamltask_typeregex —already admits exactly the 11 public classes; no infra change required for
this landing (confirmed by the
omnimarket#2012companion's live oraclerun against the canonical
omninode_infraclone).grep -rn "^import omnimarket\|^from omnimarket" src/in theomnibase_coreworktree returns no matches. (String/comment mentions ofomnimarketintopics.pyandnormalization/are topic-name/docreferences, not imports.)
LIVE canonical
$OMNI_HOMEclones (omnibase_core,omnimarket,omninode_infra), not only frozen fixtures — see the omnimarket companionPR (
omnimarket#2012) for the full multi-repo oracle output; this PR's ownlocal evidence is the schema-exactness unit test plus the focused suite
below.
step 1a (
omnimarket#2012). Theomninode_infrafollow-up PR isexplicitly deferred until both 1a and 1b merge to
dev, because itsmanifest pins commit/blob-oid/sha256 against merged SHAs — it cannot be
authored against unmerged branches.
Live oracle-run evidence (this session, 2026-08-03)
Before this change, the live canonical
omnibase_coreclone under$OMNI_HOMEshowed exactly this gap against the Market authority (13 members vs the
15-class universe, missing
documentationandvalidator_generation) — thesame gap independently confirmed by the
omnimarket#2012companion'scross-repo oracle run:
After this PR's diff, the Literal carries all 15 members, and the schema
constant
_CANONICAL_DELEGATION_TASK_TYPESintests/unit/models/delegation/wire/test_delegation_wire_models.py— the same15-class frozenset as the Market authority — is asserted equal to
ModelDelegationRequest.model_json_schema()["properties"]["task_type"]["enum"]by
test_task_type_schema_is_exact_canonical_full_universe.Gates run (this session, on
Stickybeatz-Studio/.200, the canonical gate host)uv run ruff format --check src/ tests/— pass, 6083 files already formatteduv run ruff check src/ tests/—All checks passed!(one pre-existinginvalid
# noqawarning insrc/omnibase_core/utils/util_canonical_hash.pyis unrelated to this diff)
env -u PYTHONPATH uv run mypy src/ --strict— clean of new errors after avenv repair (see below); 9 remaining errors are pre-existing, in files
byte-identical to
origin/dev(model_adjacency_map.py,contract_loader.py,validator_evidence_shape_cli.py,cli_install.py,model_onex_container.py), unrelated to this diffenv -u PYTHONPATH uv run pytest -q tests/unit/models/delegation/— 222 passed
env -u PYTHONPATH uv run pre-commit run --files <the 2 changed files>—all applicable hooks Passed (the
--all-filesfull-repo sweep surfacedonly pre-existing, unrelated-to-this-diff repo-wide debt — confirmed
byte-identical to
origin/devfor every flagged file)git pushpre-push hook chain (the actual enforcing gate):trim trailing whitespace,fix end of files,check for added large files,mypy (type checking - strict),pyright (type checking - basic),Evidence-Source shape check,ONEX Naming Convention Validation,ONEX File Naming Convention Validation,Protocol UUID Enforcement Check,ONEX Enum Governance Validation,ONEX Node Purity Validation— all Passedsuite (
is_full_suite=True reason=shared_module) per rule 4 —uv run pytest tests/ --ignore=tests/integration -n4 --dist=loadgroup --timeout=60 --timeout-method=thread: 43711 passed, 0 failed, 53skipped, 3 xpassed in 5832.54s (1:37:12). (An ambient
POSTGRES_PASSWORD/
POSTGRES_HOST/POSTGRES_PORT/POSTGRES_USER/POSTGRES_DATABASEset of env vars on this host inflated an earlier attempt's runtime well
past the sibling
omnimarket#2012PR's reference full-suite time; unsetvia
env -ufor the push so integration-DB tests skip as designed — noproduct code was touched to achieve this, matching the same gotcha the
omnimarket#2012companion PR documented.)Landing
This PR lands via the normal Codex merge sweep. (An earlier revision of this
section carried a merge hold — that was the authoring lane's own stop-at-PR-open
constraint leaking into the body; it bound the build lane, never the sweep.
Hold lifted 2026-08-03 by fable-beta-0803; companion
omnimarket#2012isalready merged, so landing order 1a+1b is satisfied.)
omnimarket#2011,omnibase_infra#2632, andomnibase_core#1540were aseparate Codex landing lane and are untouched by this PR.