omnius 1.0.643 → 1.0.647

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -657,7 +657,10 @@ function installSystemd(nodeBin, omniusScript, user) {
657
657
  "Environment=OMNIUS_DAEMON=1",
658
658
  "Environment=OMNIUS_PORT=" + PORT,
659
659
  "Environment=NODE_ENV=production",
660
- "EnvironmentFile=-" + envPath,
660
+ // Keep this user-relative so a unit written during a root/global install
661
+ // still loads the owning user's overrides after the existing unit is
662
+ // rewritten on update.
663
+ "EnvironmentFile=%h/.config/omnius/daemon.env",
661
664
  "ExecStart=" + nodeBin + " " + omniusScript + " serve --daemon --quiet",
662
665
  // Restart=always (was on-failure) — also relaunch on clean exit.
663
666
  // Some upgrade flows trigger process.exit(0) (e.g. /update reload,
@@ -1,9 +1,10 @@
1
1
  #!/usr/bin/env python3
2
2
  """Persistent, offline CLAP semantic-audio embedding worker.
3
3
 
4
- This process deliberately has no setup behavior. The Node runtime has already
5
- created the system-site venv, installed its pinned non-Torch requirements, and
6
- verified the immutable model artifact before this process is started.
4
+ This process deliberately has no setup behavior. The Node runtime has already
5
+ created an isolated venv with an explicit vendor-Torch link, installed its
6
+ pinned non-Torch requirements, and verified the immutable model artifact
7
+ before this process is started.
7
8
  """
8
9
 
9
10
  import argparse
@@ -22,7 +23,14 @@ if os.environ.get("PYTHONNOUSERSITE") != "1":
22
23
  import numpy as np
23
24
  import torch
24
25
  import torch.nn.functional as F
25
- from transformers import ClapModel, ClapProcessor
26
+ from PIL import Image
27
+ from transformers import (
28
+ ClapAudioModelWithProjection,
29
+ ClapFeatureExtractor,
30
+ ClapModel,
31
+ ClapProcessor,
32
+ ClapTextModelWithProjection,
33
+ )
26
34
 
27
35
  MODEL_ID = "laion/clap-htsat-unfused"
28
36
  # The worker receives exactly Egg's caller-conditioned audio window. It does
@@ -245098,6 +245098,7 @@ init_venv_paths();
245098
245098
  var SETUP_TIMEOUT_MS2 = 30 * 6e4;
245099
245099
  var CLAP_RUNTIME_WHEELS = [
245100
245100
  { distribution: "numpy", version: "1.26.4", importName: "numpy", filename: "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", source: "https://files.pythonhosted.org/packages/fc/a5/4beee6488160798683eed5bdb7eead455892c3b4e1f78d79d8d3f3b084ac/numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", sha256: "d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4" },
245101
+ { distribution: "Pillow", version: "10.4.0", importName: "PIL", filename: "pillow-10.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", source: "https://files.pythonhosted.org/packages/8a/25/1fc45761955f9359b1169aa75e241551e74ac01a09f487adaaf4c3472d11/pillow-10.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", sha256: "7928ecbf1ece13956b95d9cbcfc77137652b02763ba384d9ab508099a2eca856" },
245101
245102
  { distribution: "transformers", version: "4.57.3", importName: "transformers", filename: "transformers-4.57.3-py3-none-any.whl", source: "https://files.pythonhosted.org/packages/6a/6b/2f416568b3c4c91c96e5a365d164f8a4a4a88030aa8ab4644181fdadce97/transformers-4.57.3-py3-none-any.whl", sha256: "c77d353a4851b1880191603d36acb313411d3577f6e2897814f333841f7003f4" },
245102
245103
  { distribution: "huggingface-hub", version: "0.36.0", importName: "huggingface_hub", filename: "huggingface_hub-0.36.0-py3-none-any.whl", source: "https://files.pythonhosted.org/packages/cb/bd/1a875e0d592d447cbc02805fd3fe0f497714d6a2583f59d14fa9ebad96eb/huggingface_hub-0.36.0-py3-none-any.whl", sha256: "7bcc9ad17d5b3f07b57c78e79d527102d08313caa278a641993acddcb894548d" },
245103
245104
  { distribution: "hf-xet", version: "1.1.5", importName: "hf_xet", filename: "hf_xet-1.1.5-cp37-abi3-manylinux_2_28_aarch64.whl", source: "https://files.pythonhosted.org/packages/d0/54/0fcf2b619720a26fbb6cc941e89f2472a522cd963a776c089b189559447f/hf_xet-1.1.5-cp37-abi3-manylinux_2_28_aarch64.whl", sha256: "dbba1660e5d810bd0ea77c511a99e9242d920790d0e63c0e4673ed36c4022d18" },
@@ -245118,6 +245119,9 @@ var CLAP_RUNTIME_WHEELS = [
245118
245119
  ];
245119
245120
  var CLAP_PYTHON_REQUIREMENTS = CLAP_RUNTIME_WHEELS.map((wheel) => `${wheel.distribution}==${wheel.version}`);
245120
245121
 
245122
+ // packages/execution/dist/openclip-memory-admission.js
245123
+ init_jetson_monitor();
245124
+
245121
245125
  // packages/execution/dist/speaker-embedding-runtime.js
245122
245126
  init_jetson_monitor();
245123
245127
  init_process_async();
@@ -0,0 +1,233 @@
1
+ # ASD-STE100 Communication Audit
2
+
3
+ Date: 2026-08-28
4
+
5
+ ## Objective
6
+
7
+ Use ASD-STE100 Issue 9 for all Omnius natural-language communication.
8
+ Apply the rule to external replies and internal agent messages.
9
+ Preserve exact machine content without a change.
10
+
11
+ ## Standard boundary
12
+
13
+ [ASD-STE100 Issue 9](https://www.asd-ste100.org/assets/files/ASD-STE100_ISSUE9.pdf) has 53 writing rules.
14
+ It also has an approved-word dictionary and permits necessary technical terms.
15
+ The standard requires consistent technical terms, short sentences, direct verbs, and clear procedures.
16
+
17
+ Issue 9 limits a procedure sentence to 20 words.
18
+ It limits a descriptive sentence to 25 words.
19
+ It requires one instruction in most procedure sentences.
20
+ It also requires quoted text to remain unchanged.
21
+
22
+ The [official STE description](https://www.asd-ste100.org/about.html) identifies an approved dictionary and permitted technical terms.
23
+ The [official checker guidance](https://www.asd-ste100.org/ste-software.html) states that software aids are not complete compliance proof.
24
+
25
+ Therefore, Omnius can enforce structural STE rules automatically.
26
+ A qualified human must confirm full dictionary compliance.
27
+ Omnius must not claim certified compliance from a model or heuristic check.
28
+
29
+ ## 2026 reliability evidence
30
+
31
+ Current research supports three separate communication layers.
32
+
33
+ 1. Use controlled natural language for human and agent prose.
34
+ 2. Use schemas and exact fields for machine messages.
35
+ 3. Use code validators for syntax and meaning.
36
+
37
+ A 2026 protocol review reports weak support for clarification, context alignment, and semantic verification.
38
+ Omnius now names these duties in the common contract.
39
+ Source: [Beyond Message Passing](https://arxiv.org/abs/2604.02369).
40
+
41
+ A 2026 harness study reports that prompt text alone did not preserve critical guarantees.
42
+ It assigns deterministic guarantees to code, schemas, manifests, and validators.
43
+ Omnius now uses this rule in the common contract.
44
+ Source: [From Prompts to Contracts](https://arxiv.org/abs/2607.08028).
45
+
46
+ A 2026 structured-output study separates valid syntax from valid meaning.
47
+ It also reports model-specific failure patterns.
48
+ Omnius must validate JSON structure and field meaning.
49
+ Source: [StructHallu-Drift](https://aclanthology.org/2026.surgellm-1.22/).
50
+
51
+ A 2026 reliability framework treats retries and verification as different recovery operators.
52
+ Omnius must classify a failure before it selects a recovery method.
53
+ Source: [Cost-Aware Adaptive Reliability](https://arxiv.org/abs/2605.09121).
54
+
55
+ 2025 structured-output studies remain directly applicable.
56
+ They show that schema constraints need adapted prompts, examples, and validators.
57
+ Sources: [The Hidden Cost of Structure](https://aclanthology.org/2025.ranlp-1.124/) and [Schema Reinforcement Learning](https://aclanthology.org/2025.acl-long.243/).
58
+
59
+ ## Lossless exception boundary
60
+
61
+ Do not change these items during STE conversion:
62
+
63
+ - Code and code blocks
64
+ - JSON, schemas, keys, and enum values
65
+ - Commands, paths, options, and environment keys
66
+ - API routes, headers, status codes, and media types
67
+ - Tool names and tool argument names
68
+ - Model names and provider names
69
+ - Sentinels, tags, placeholders, and parser labels
70
+ - User input and source quotations
71
+ - Logs, errors, traces, and tool output
72
+ - Required literal replies
73
+
74
+ Use STE for text that introduces or explains these items.
75
+ If STE conflicts with an exact contract, the exact contract has priority.
76
+
77
+ ## Runtime architecture review
78
+
79
+ | Surface | Previous condition | Current control | Status |
80
+ |---|---|---|---|
81
+ | Small tier | Large duplicated prose with long sentences | Shared common contract and small-tier addition | Updated |
82
+ | Medium tier | Large duplicated prose with long sentences | Shared common contract and medium-tier addition | Updated |
83
+ | Large tier | Large duplicated prose with long sentences | Shared common contract and large-tier addition | Updated |
84
+ | Ollama and compatible providers | No common language envelope | Provider adds one STE policy message | Updated |
85
+ | Anthropic adapter | Independent system translation | Provider policy enters before translation | Updated |
86
+ | Native Ollama stream | Independent message path | Provider policy enters before native transport | Updated |
87
+ | Nexus remote peer | Independent message path | Nexus adds the same policy | Updated |
88
+ | Cascade backend | Delegates to Ollama or Nexus | Inner backend adds the policy | Updated |
89
+ | Web chat | Separate non-tier system prompt | Web prompt starts with the shared policy | Updated |
90
+ | Realtime and phone | Explicit contraction preference | Shared policy and direct spoken rules | Updated |
91
+ | Task templates | Long compound instructions | Eight source templates use short direct rules | Updated |
92
+ | Telegram router | Many inline contracts and exact schemas | Provider policy governs output | Controlled rewrite required |
93
+ | Sub-agent delegation | Separate preambles and exact envelopes | Provider policy governs output | Controlled rewrite required |
94
+ | RALPH runners | Separate JSON-sensitive prompt files | Provider policy governs output | Controlled rewrite required |
95
+ | Memory and compaction | Separate JSON and summary prompts | Provider policy governs output | Controlled rewrite required |
96
+ | CLI dream and emotion prompts | Creative and machine output contracts | Provider policy governs output | Profile-specific review required |
97
+ | Reference contracts | 39 long Markdown contracts | Included under the common policy | Controlled rewrite required |
98
+ | OpenAPI and help text | Human prose in TypeScript literals | Not model-generated | User-interface review required |
99
+
100
+ The final provider boundary adds the policy before each model request.
101
+ This rule covers inline prompts that still need a controlled source rewrite.
102
+ It also covers new prompts that a feature adds later.
103
+ The policy does not change exact machine content.
104
+
105
+ ## Source inventory
106
+
107
+ The prompt audit found 83 source Markdown files.
108
+ Generated files under `publish/` are not source files.
109
+
110
+ - CLI TUI prompts: 7 files
111
+ - Prompt package contracts and templates: 15 files
112
+ - Orchestrator prompts: 22 files
113
+ - Root reference contracts: 39 files
114
+
115
+ TypeScript also contains direct model prompts and user-interface messages.
116
+ These strings need a separate literal extractor because many strings contain machine data.
117
+
118
+ ## Main defects found
119
+
120
+ ### Tier prompts
121
+
122
+ The three tier files duplicated nearly all content.
123
+ Many sentences had more than 25 words.
124
+ Several sentences contained more than one instruction.
125
+ The smaller tiers did not have a materially smaller common contract.
126
+
127
+ The new design keeps one common contract.
128
+ Each tier file now contains only its tier rules.
129
+ This design prevents language drift between tiers.
130
+
131
+ ### Realtime prompt
132
+
133
+ The previous prompt explicitly permitted contractions.
134
+ This rule directly conflicted with STE.
135
+ The fallback reply also used a contraction.
136
+
137
+ The new prompt prohibits contractions.
138
+ The fallback now uses two short sentences.
139
+ An exact user-requested reply remains exempt.
140
+
141
+ ### Task templates
142
+
143
+ The source templates used long labels, questions, vague terms, and compound instructions.
144
+ The revised templates use one direct action in each procedure sentence.
145
+ Exact placeholders and tool names remain unchanged.
146
+
147
+ ### Telegram and tool contracts
148
+
149
+ Telegram router prompts contain safety, identity, route, and reply policies.
150
+ They also contain exact JSON fields and enum values.
151
+ A broad text conversion can change router behavior.
152
+
153
+ Tool contracts contain exact JSON, tool names, argument names, and parser sentinels.
154
+ These elements need token-preservation tests before a controlled prose conversion.
155
+
156
+ ### Corrected prompt defect
157
+
158
+ `packages/cli/prompts/tui/emotion-center.md` had an unclosed parenthesis.
159
+ Its examples also conflicted with its required emoji-and-word output.
160
+ The revised prompt has short instructions and valid examples.
161
+ A test now protects the placeholders and required output format.
162
+
163
+ ## Telegram router failure review
164
+
165
+ The live failure was not an unavailable model.
166
+ The broker completed the requests with hidden reasoning tokens.
167
+ Omnius then removed the hidden text and received no visible decision contract.
168
+
169
+ One predicate controlled two different facts.
170
+ It controlled Ollama transport features and Omnius pool ownership.
171
+ The broker discovery correctly disabled the local Omnius pool.
172
+ That result also disabled Ollama transport behavior by mistake.
173
+
174
+ The affected requests omitted `think:false` and Ollama context options.
175
+ They also used `/v1/chat/completions` instead of the preferred native `/api/chat` route.
176
+ The model used its reply budget for hidden reasoning.
177
+
178
+ The backend now uses two predicates.
179
+
180
+ - `isOllamaTransport` controls Ollama request fields and native routes.
181
+ - `useOllamaPool` controls only local runner acquisition and spawn behavior.
182
+
183
+ Broker-managed endpoints now use native Ollama transport without a local pool slot.
184
+ Regression tests cover unary and streaming requests through `http://localhost:11434`.
185
+ The tests also prove that Omnius does not acquire a local pool slot.
186
+
187
+ The Telegram bridge had a separate token-count defect.
188
+ It read usage fields from the wrong level of each stream chunk.
189
+ It now reads the `usage` object, which corrects the false `~0 tok` display.
190
+
191
+ Each model-generation block now has a bottom `read mode` control.
192
+ The control expands all preserved thinking, content, tool-contract, and handling rows.
193
+ The control remains available after the block completes.
194
+ The Telegram chat fast path now streams into its block and closes the block on success or failure.
195
+
196
+ ## Validation policy
197
+
198
+ The structural check must mask exact machine content.
199
+ It must then inspect only authored prose.
200
+
201
+ Use these hard checks for core prompts:
202
+
203
+ - No contraction
204
+ - No semicolon
205
+ - No unresolved placeholder
206
+ - Balanced delimiters outside protected content
207
+ - Maximum 20 words for a procedure sentence
208
+ - Maximum 25 words for a descriptive sentence
209
+ - One instruction in each procedure sentence
210
+ - Exact preservation of machine tokens
211
+
212
+ Do not use automatic passive-voice detection as a hard failure.
213
+ Do not use an incomplete dictionary as compliance proof.
214
+
215
+ ## Remaining controlled work
216
+
217
+ Use a token manifest before any broad prompt conversion.
218
+ Record placeholders, schema keys, enum values, tags, sentinels, and tool names.
219
+ Require the same token set after each prose change.
220
+
221
+ Convert the remaining groups in this order:
222
+
223
+ 1. Telegram router and reflection prose
224
+ 2. Sub-agent and delegation prose
225
+ 3. Recovery and completion prose
226
+ 4. RALPH runner prose
227
+ 5. Memory and compaction prose
228
+ 6. CLI setup and recovery text
229
+ 7. API descriptions and help text
230
+ 8. Reference contracts
231
+
232
+ Run parser and snapshot tests after each group.
233
+ Do not use a repository-wide blind text replacement.
@@ -4631,7 +4631,7 @@
4631
4631
  "tags": [
4632
4632
  "Audio"
4633
4633
  ],
4634
- "description": "Non-mutating readiness for NVIDIA diar_streaming_sortformer_4spk-v2. It never downloads, installs, creates environments, or loads a model. Managed JetPack setup pins NVIDIA's Q8 GGUF plus NeMo-Speech.cpp source revision and keeps one persistent worker/controller serialized; operator-provided .nemo/Python snapshots remain supported. 200 requires the verified runtime worker to be active. Session-local labels are never durable identities.",
4634
+ "description": "Non-mutating readiness for NVIDIA diar_streaming_sortformer_4spk-v2. It never downloads, installs, creates environments, or loads a model. Managed JetPack setup pins NVIDIA's Q8 GGUF plus NeMo-Speech.cpp source revision and keeps one persistent worker/controller serialized; operator-provided .nemo/Python snapshots remain supported. Readiness persists setup.stage, setup.failed_stage, complete setup stderr, and the terminal error across daemon restart. 200 requires the verified runtime worker to be active. Session-local labels are never durable identities.",
4635
4635
  "responses": {
4636
4636
  "200": {
4637
4637
  "description": "Verified local snapshot and warm managed live worker."
@@ -4707,7 +4707,7 @@
4707
4707
  "tags": [
4708
4708
  "Audio"
4709
4709
  ],
4710
- "description": "Admin-only and asynchronous. An empty JSON object provisions the pinned public Q8 Sortformer artifact and builds an immutable-revision CUDA NeMo-Speech.cpp runtime under ~/.omnius without modifying JetPack Torch. Poll readiness after HTTP 202. Advanced operators may instead provide snapshot_path/manifest_path plus python_path for a checksum-pinned .nemo runtime. Setup may download/build; inference never does.",
4710
+ "description": "Admin-only and asynchronous. An empty JSON object provisions the pinned public Q8 Sortformer artifact and builds an immutable-revision CUDA NeMo-Speech.cpp runtime under ~/.omnius without modifying JetPack Torch. nvcc discovery checks OMNIUS_DIAR_NVCC, /usr/local/cuda-12.2/bin/nvcc, then /usr/local/cuda/bin/nvcc and reports exact absence before downloading a model. Poll readiness after HTTP 202. Advanced operators may instead provide snapshot_path/manifest_path plus python_path for a checksum-pinned .nemo runtime. Setup may download/build; inference never does.",
4711
4711
  "requestBody": {
4712
4712
  "required": true,
4713
4713
  "content": {
@@ -5401,7 +5401,7 @@
5401
5401
  "tags": [
5402
5402
  "Audio"
5403
5403
  ],
5404
- "description": "Admin-only. Requires kind=acoustic|speaker|semantic in the query (canonical) or JSON body. acoustic reuses pinned JetPack YAMNet/TensorRT. speaker creates a private CPU-only WeSpeaker CAM++ venv with checksum-pinned NumPy/ONNX Runtime wheels and no Torch/Torchaudio dependency. semantic installs a checksum-locked CPython 3.10/aarch64 dependency closure plus the immutable CLAP revision while leaving vendor Torch untouched. Omnius never imports, links, replaces, or resolves a generic Torch package over JetPack Torch for either isolated runtime. JetPack daemon bootstrap provisions all three roles by default; OMNIUS_AUDIO_AUTO_SETUP=0 disables all and OMNIUS_SEMANTIC_AUDIO_AUTO_SETUP=0 disables CLAP. Semantic provisioning may finish under memory pressure, while activation/inference still requires the 8 GiB admission threshold and never evicts another workload. This is the only REST operation allowed to provision, and no role is substituted for another.",
5404
+ "description": "Admin-only. Requires kind=acoustic|speaker|semantic in the query (canonical) or JSON body. acoustic reuses pinned JetPack YAMNet/TensorRT. speaker creates a private CPU-only WeSpeaker CAM++ venv with checksum-pinned NumPy/ONNX Runtime wheels and no Torch/Torchaudio dependency. semantic creates a private include-system-site-packages=false venv, explicitly links only the validated vendor CUDA Torch provider, and installs a checksum-locked CPython 3.10/aarch64 dependency closure (including Pillow and probed Transformers CLAP imports) plus the immutable CLAP revision. Omnius never replaces or resolves a generic Torch package over JetPack Torch. JetPack daemon bootstrap provisions all three roles by default; OMNIUS_AUDIO_AUTO_SETUP=0 disables all and OMNIUS_SEMANTIC_AUDIO_AUTO_SETUP=0 disables CLAP. Semantic provisioning may finish under memory pressure, while activation/inference still requires the 8 GiB admission threshold and never evicts another workload. CLAP readiness persists setup stage, failed_stage, complete subprocess stderr, and error. This is the only REST operation allowed to provision, and no role is substituted for another.",
5405
5405
  "parameters": [
5406
5406
  {
5407
5407
  "name": "kind",
@@ -16896,7 +16896,7 @@
16896
16896
  "tags": [
16897
16897
  "Vision"
16898
16898
  ],
16899
- "description": "Admin-only single-flight setup, also daemon-bootstrapped by default on JetPack (OMNIUS_VISION_AUTO_SETUP=0 disables). It creates a --system-site-packages venv, inherits existing CUDA Torch and vendor torchvision, installs a fully pinned non-Torch wheel closure with --no-deps, and then validates the managed runtime with user-site packages disabled. It downloads the OpenCLIP checkpoint from immutable revision 1a25a446712ba5ee05982a381eed697ef9b435cf with a fixed SHA-256. It never resolves Torch/torchvision from generic PyPI. A checksum-pinned local torchvision wheel override remains supported. Provisioning completes despite transient memory pressure; only model loading/inference applies the 8 GiB admission gate.",
16899
+ "description": "Admin-only single-flight setup, also daemon-bootstrapped by default on JetPack (OMNIUS_VISION_AUTO_SETUP=0 disables). It creates an include-system-site-packages=false venv, explicitly links only the validated vendor CUDA Torch provider, installs a fully pinned non-Torch wheel closure including wcwidth with --no-deps, and then validates Torch, vendor torchvision, and OpenCLIP with user-site packages disabled. It downloads the OpenCLIP checkpoint from immutable revision 1a25a446712ba5ee05982a381eed697ef9b435cf with a fixed SHA-256. It never resolves Torch/torchvision from generic PyPI. A checksum-pinned local torchvision wheel override remains supported. Provisioning completes despite transient memory pressure; only model loading/inference applies the OpenCLIP-specific OMNIUS_VISION_MIN_AVAILABLE_MB admission gate.",
16900
16900
  "responses": {
16901
16901
  "200": {
16902
16902
  "description": "Provisioned; readiness may still report memory-blocked until model loading is admitted"
@@ -28394,6 +28394,39 @@
28394
28394
  }
28395
28395
  ]
28396
28396
  },
28397
+ {
28398
+ "id": "guide.asd-ste100-communication-audit-uppercase",
28399
+ "kind": "guide",
28400
+ "title": "ASD-STE100 Communication Audit",
28401
+ "summary": "Use ASD-STE100 Issue 9 for all Omnius natural-language communication. Apply the rule to external replies and internal agent messages. Preserve exact machine content without a change.",
28402
+ "keywords": [
28403
+ "ASD",
28404
+ "STE100",
28405
+ "COMMUNICATION",
28406
+ "AUDIT",
28407
+ "md"
28408
+ ],
28409
+ "maturity": "stable",
28410
+ "audiences": [
28411
+ "user",
28412
+ "integrator",
28413
+ "coding-agent"
28414
+ ],
28415
+ "layer": "documentation",
28416
+ "interfaces": [
28417
+ {
28418
+ "type": "file",
28419
+ "target": "docs/ASD-STE100-COMMUNICATION-AUDIT.md"
28420
+ }
28421
+ ],
28422
+ "references": [
28423
+ {
28424
+ "type": "documentation",
28425
+ "target": "docs/ASD-STE100-COMMUNICATION-AUDIT.md",
28426
+ "relation": "canonical-artifact"
28427
+ }
28428
+ ]
28429
+ },
28397
28430
  {
28398
28431
  "id": "guide.concept-relational-language",
28399
28432
  "kind": "guide",
@@ -29569,6 +29602,40 @@
29569
29602
  }
29570
29603
  ]
29571
29604
  },
29605
+ {
29606
+ "id": "guide.ontology-long-horizon-work-graph-uppercase",
29607
+ "kind": "guide",
29608
+ "title": "Ontology WorkGraph Review",
29609
+ "summary": "Use an ontological graph to control large and long tasks. Make each work item, relation, claim, and evidence item addressable. Keep one canonical graph across planning, execution, verification, and completion.",
29610
+ "keywords": [
29611
+ "ONTOLOGY",
29612
+ "LONG",
29613
+ "HORIZON",
29614
+ "WORK",
29615
+ "GRAPH",
29616
+ "md"
29617
+ ],
29618
+ "maturity": "stable",
29619
+ "audiences": [
29620
+ "user",
29621
+ "integrator",
29622
+ "coding-agent"
29623
+ ],
29624
+ "layer": "documentation",
29625
+ "interfaces": [
29626
+ {
29627
+ "type": "file",
29628
+ "target": "docs/ONTOLOGY-LONG-HORIZON-WORK-GRAPH.md"
29629
+ }
29630
+ ],
29631
+ "references": [
29632
+ {
29633
+ "type": "documentation",
29634
+ "target": "docs/ONTOLOGY-LONG-HORIZON-WORK-GRAPH.md",
29635
+ "relation": "canonical-artifact"
29636
+ }
29637
+ ]
29638
+ },
29572
29639
  {
29573
29640
  "id": "guide.opencode-agentic-loop-comparison",
29574
29641
  "kind": "guide",
package/docs/DISCOVERY.md CHANGED
@@ -407,6 +407,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
407
407
  | `guide.agent-memory-index-uppercase` | Agent-Explorable Documentation | Omnius documentation is exposed to agents through project-local AIWG-style bundles under .aiwg/addons/. |
408
408
  | `guide.architecture-agent-system-map` | Omnius Agent System Map | Use this page when you need to understand how a user-visible behavior travels through Omnius, where its state lives, and which package owns a change. For a specific task recipe, search the generated catalog first: |
409
409
  | `guide.architecture-overview` | Architecture Overview | Omnius combines a terminal-first agent loop, REST daemon, model routing layer, tool runtime, persistent context, and peer mesh. |
410
+ | `guide.asd-ste100-communication-audit-uppercase` | ASD-STE100 Communication Audit | Use ASD-STE100 Issue 9 for all Omnius natural-language communication. Apply the rule to external replies and internal agent messages. Preserve exact machine content without a change. |
410
411
  | `guide.concept-relational-language` | Concept Relational Language (CRL) — Token-Efficient Concept Communication | &gt; Experimental hyper-compressed symbolic notation for mind-mapped logical flow tracking |
411
412
  | `guide.context-management-medium-models-proposal` | Context Management for Medium Models (30-40B) — Implementation Proposal | Date: 2026-04-25 Problem: Medium-tier models (~35B params) exhibit excessive repetition at ~35% context fill despite 256K context windows Root Cause: Monolithic context structure + attention degradation + tool schema bloat |
412
413
  | `guide.dedup-false-positive-meta-analysis` | Meta-Analysis: False Positive Duplicate Tool Call Detection | Date: 2026-05-14 Scope: packages/orchestrator/src/agenticRunner.ts — proactivePrune() + buildResourceKey() |
@@ -443,6 +444,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
443
444
  | `guide.model-capability-awareness-and-multimodal-memory-root-fix` | Model Capability Awareness And Multimodal Identity Memory Root Fix | Status: planning and integration tracker |
444
445
  | `guide.multimodal-identity-memory-implementation` | Multimodal Identity Memory Implementation Tracker | Goal: make voice, text, image, Telegram reply context, CLIP-like embeddings, zettelkasten links, and social profiles converge on one evidence-based identity substrate. |
445
446
  | `guide.omnius-self-edit-eval-2026-06-10` | Omnius Self-Edit Evaluation — Uncommitted Changes &amp; Duplicate-Tool-Call Failure Mode | &gt; Eval of the working-tree changes against docs/opencode-agentic-loop-comparison.md. &gt; Subject: an Omnius instance editing its own orchestrator to implement the P0–P10 &gt; learnings. Generated 2026-06-10. |
447
+ | `guide.ontology-long-horizon-work-graph-uppercase` | Ontology WorkGraph Review | Use an ontological graph to control large and long tasks. Make each work item, relation, claim, and evidence item addressable. Keep one canonical graph across planning, execution, verification, and completion. |
446
448
  | `guide.opencode-agentic-loop-comparison` | OpenCode → Omnius: Agentic Loop &amp; Sub-Agent Delegation Comparison | &gt; Exhaustive comparison between https://github.com/anomalyco/opencode/tree/dev and &gt; packages/orchestrator/src/agenticRunner.ts (omnius). &gt; Generated 2026-06-10. |
447
449
  | `guide.operations-delay-analysis` | Unnecessary Causes of Delays Between Agent Actions | Analysis of packages/orchestrator/src/ (95 files) — identified delay sources ranked by impact. |
448
450
  | `guide.operations-delay-fix-review` | Delay Fix Review — Commits Since Delay Analysis | Date: 2026-06-10 Reference: /docs/operations/delay-analysis.md (15 delay sources documented) |