omnius 1.0.854 → 1.0.856
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.
- package/dist/api/py-embed.js +4 -4
- package/dist/index.js +2 -2
- package/dist/library.js +2838 -1452
- package/dist/scripts/crawlee-scraper.py +165 -185
- package/dist/scripts/web_scrape.py +22 -20
- package/dist/update-worker.js +4 -4
- package/docs/DISCOVERY.json +513 -0
- package/docs/DISCOVERY.md +14 -0
- package/docs/guides/tools-and-web-search.md +44 -0
- package/docs/work-orders/WO-fallback-contract-cooldown-20261013.md +83 -0
- package/docs/work-orders/WO-telegram-public-research-stream-progress-20261013.md +100 -0
- package/docs/work-orders/WO-telegram-retained-source-handoff-20261013.md +111 -0
- package/docs/work-orders/WO-web-browser-crawl-full-coverage-20261013.md +65 -0
- package/docs/work-orders/WO-web-source-full-coverage-extraction-20261013.md +135 -0
- package/docs/work-orders/evidence/browser-complete-source-live-20261013.json +111 -0
- package/docs/work-orders/evidence/fallback-contract-cooldown-before-20261013.json +259 -0
- package/docs/work-orders/evidence/telegram-public-research-stream-live-20261013.json +754 -0
- package/docs/work-orders/evidence/telegram-retained-source-handoff-live-20261013.json +335 -0
- package/docs/work-orders/evidence/web-source-installed-capacity-guard-20261013.json +127 -0
- package/docs/work-orders/evidence/web-source-installed-public-live-20261013.json +651 -0
- package/docs/work-orders/evidence/web-source-parent-capacity-before-20261013.json +233 -0
- package/docs/work-orders/evidence/web-source-wide-coordinator-live-20261013.json +485 -0
- package/docs/work-orders/evidence/web-source-worker-validation-before-20261013.json +97 -0
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# Keep internal inference failures within their contract and budget
|
|
2
|
+
|
|
3
|
+
Status: contract cooldown, aggregate deadline and phase output allocations
|
|
4
|
+
verified; final installed full-source public-path acceptance passed.
|
|
5
|
+
|
|
6
|
+
The installed full-source Telegram harness, with a configured 32k context,
|
|
7
|
+
reached a real `virtual-memory:plan` request before its first work turn. Muse
|
|
8
|
+
returned HTTP 200, but its 1,000-token structured reply failed validation
|
|
9
|
+
(`transport_envelope`, `json_object`). A model-wide cooldown then suppressed
|
|
10
|
+
the different primary native-tool request without sending it. Intake failed
|
|
11
|
+
before any page was fetched. This is a production-path failure, not a mocked
|
|
12
|
+
provider response or a source-extraction failure.
|
|
13
|
+
|
|
14
|
+
Observed bundle SHA256:
|
|
15
|
+
`e1e3a9dfedc1a811497de0949c3d76ce3886f9cce6fd6227c903c9cf9758a716`.
|
|
16
|
+
Receipt: `/tmp/omnius-web-source-installed-public-live-20261013.json`.
|
|
17
|
+
|
|
18
|
+
1. Scope empty/invalid/expected-response validation cooldowns to the actual
|
|
19
|
+
requested response contract and output allowance. A failed auxiliary JSON
|
|
20
|
+
reply cannot suppress ordinary tool calling or a different response schema.
|
|
21
|
+
2. Preserve global availability, authentication and provider rate-limit
|
|
22
|
+
cooldowns, including retry-after behavior. Do not change provider identity
|
|
23
|
+
or bypass quota enforcement.
|
|
24
|
+
3. Verify failures remain cooled for equivalent contracts, while distinct
|
|
25
|
+
work/review contracts and corrected output allowances can proceed.
|
|
26
|
+
4. Rebuild the installed candidate and repeat the real public full-source
|
|
27
|
+
task. Keep the failed receipt, and record actual auxiliary terminal metadata
|
|
28
|
+
without model text or credentials. Do not disable the failing phase merely
|
|
29
|
+
to make the fixture pass.
|
|
30
|
+
5. Repair the confirmed underlying tiny-output defaults. Actual provider
|
|
31
|
+
terminal receipts report `incomplete/max_output_tokens` with no visible
|
|
32
|
+
output for both the 1,000-token VM planner and a 900-token artifact-search
|
|
33
|
+
helper. Allocate adequate internal structured output, bounded by complete
|
|
34
|
+
input, schemas, communication policy, context margin and explicit user caps.
|
|
35
|
+
Preserve every input character; never fund output by clipping the request.
|
|
36
|
+
6. Fence the aggregate deadline after asynchronous preparation and route
|
|
37
|
+
callbacks. An attempt timer clipped to the whole cascade's remaining time
|
|
38
|
+
must end that cascade, including millisecond clock/timer skew; shorter
|
|
39
|
+
per-attempt timeouts must still permit fallback.
|
|
40
|
+
7. Restore adequate primary-turn output before context admission. Reserve
|
|
41
|
+
4,096 tokens, honoring an explicit lower user cap. Try the existing canonical
|
|
42
|
+
owned-duplicate release before rejecting capacity; never clip protected
|
|
43
|
+
source, request or authority. Remote eligibility must enforce the same
|
|
44
|
+
host-owned reserve without sending that internal marker to providers or
|
|
45
|
+
poisoning model-wide cooldowns when a route lacks capacity.
|
|
46
|
+
8. Keep completed extraction findings separate from its verbose checkpoint.
|
|
47
|
+
Reopen all findings without rerunning completed workers. If the complete
|
|
48
|
+
result still does not fit, return an explicit pending/capacity receipt.
|
|
49
|
+
|
|
50
|
+
An intermediate installed diagnostic run processed all 109,910 RFC source
|
|
51
|
+
characters in five valid workers, then exhausted its explicit 20-generation
|
|
52
|
+
test budget while small auxiliary requests fell through providers. This proves
|
|
53
|
+
whole-source processing, not accepted final delivery. A previous invalid worker
|
|
54
|
+
reply was not captured, so its exact rejecting field cannot honestly be inferred
|
|
55
|
+
from the later valid replies. It remains distinct from confirmed output
|
|
56
|
+
exhaustion and global cooldown poisoning.
|
|
57
|
+
|
|
58
|
+
The cooldown/deadline repair passes the original 94 remote-fallback tests,
|
|
59
|
+
11 contract tests and eight deterministic aggregate-deadline tests. Installed
|
|
60
|
+
live receipts show healthy main requests reaching Muse after auxiliary failures.
|
|
61
|
+
A broader legacy keyless-routing suite has 20 failures expecting older provider
|
|
62
|
+
priority; the same 20 failures reproduce with the prior committed fallback
|
|
63
|
+
source (`06443c0a`). Those fixtures are not counted as passing or changed here.
|
|
64
|
+
|
|
65
|
+
Subsequent live wire diagnostics distinguished a separate primary-turn limit:
|
|
66
|
+
662/882-token native tool requests failed after all source workers had already
|
|
67
|
+
completed. That was not the earlier 900-token artifact-query helper. Both
|
|
68
|
+
allocations are repaired without shortening their inputs. Final selected
|
|
69
|
+
runner/extraction/fallback/budget suites pass 264 tests with one existing
|
|
70
|
+
opt-in test skipped, including explicit user ceilings, provider route reserves,
|
|
71
|
+
unchanged inputs and completed-findings reopening.
|
|
72
|
+
|
|
73
|
+
The [final installed public acceptance](evidence/web-source-installed-public-live-20261013.json)
|
|
74
|
+
uses nine real model requests, all 109,910 RFC source characters and three
|
|
75
|
+
validated extraction workers. It produces a sourced final reply and settles
|
|
76
|
+
the native host goal after a scratch Telegram ACK. A separate
|
|
77
|
+
[32k run](evidence/web-source-installed-capacity-guard-20261013.json) proves that
|
|
78
|
+
insufficient capacity causes a typed before-transport pause with no tiny-output
|
|
79
|
+
request or automatic replay. It does not pass final-answer acceptance. No live
|
|
80
|
+
Telegram network delivery, local inference or fabricated provider response is
|
|
81
|
+
claimed by these receipts.
|
|
82
|
+
|
|
83
|
+
This repair supports the [complete-source work order](WO-web-source-full-coverage-extraction-20261013.md).
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# Public research stream recovery and meaningful progress
|
|
2
|
+
|
|
3
|
+
Status: repaired and verified in the isolated installed runtime. Publication
|
|
4
|
+
and the operator's bot restart are separate.
|
|
5
|
+
|
|
6
|
+
## Live incident
|
|
7
|
+
|
|
8
|
+
Installed Omnius 1.0.855, main PID 1141122, started at 20:10:15Z from
|
|
9
|
+
`telegram_test`. OMNIUS group `chat:-1003888256865`, input 5826 asks for this
|
|
10
|
+
week's biggest AI research; task `tgtask-b3b2802ea8259be5a181`, bridge run
|
|
11
|
+
`telegram:8928c8a1534bdb23`, actor
|
|
12
|
+
`telegram-c34a3d7d53728329-1791922362455-1`.
|
|
13
|
+
|
|
14
|
+
- Attention succeeds on Muse at 20:12:41Z after guarded schema adaptation.
|
|
15
|
+
- Three searches succeed. Four page fetches run: three succeed, one gets 429.
|
|
16
|
+
The final successful fetch ends at 20:13:03Z.
|
|
17
|
+
- The next actor request has approximately 34,904 input tokens. Its context
|
|
18
|
+
falsely says `web_fetch:no-target` has failed 46 rounds, despite this being
|
|
19
|
+
a fresh native goal with one failed fetch.
|
|
20
|
+
- At 20:15:03Z finalization commits `inference_stream_interrupted`, turn 3,
|
|
21
|
+
`retryable:false`, before any accepted final answer. This is approximately
|
|
22
|
+
120 seconds after the last request started. The old actor trace was not saved,
|
|
23
|
+
and the interruption error discarded its cause/frame categories, so the
|
|
24
|
+
precise provider failure or timer cannot be reconstructed from this receipt.
|
|
25
|
+
- Message 5828 is solely the canned incomplete sentence. An absent native goal
|
|
26
|
+
assessment caused the host to append it to an empty failed result, then mark
|
|
27
|
+
intake failed after delivery. A separate empty-result branch would instead
|
|
28
|
+
wrongly consume it as a social no-reply if the appendix alone were removed.
|
|
29
|
+
- The first edited progress message stores three differently worded “pulling
|
|
30
|
+
the research” paragraphs. Exact-text deduplication permits near duplicates;
|
|
31
|
+
no stage grouping replaces the stale explanation when inference waits/fails.
|
|
32
|
+
|
|
33
|
+
Incident bundle SHA256:
|
|
34
|
+
`1c51f6f647513d3b3f43c2ed42d9aa3ea3bb56eeb0a27aab4daf63cdd85e5625`.
|
|
35
|
+
Finalization SHA256:
|
|
36
|
+
`362776f300db24c47c81b32708ac11ea90151aedb1e7996c37029904e6d4e9dd`.
|
|
37
|
+
Scoped log copies and hashes were preserved outside the live state. No
|
|
38
|
+
historical transcript or private source content is sent by the live harness.
|
|
39
|
+
|
|
40
|
+
## Repairs and constraints
|
|
41
|
+
|
|
42
|
+
1. Scope persisted convergence to stable native task identity and epoch;
|
|
43
|
+
retain genuine continuations, isolate new original inputs. Hash the whole
|
|
44
|
+
normalized URL as the operation target, preserving query distinctions and
|
|
45
|
+
omitting fragments. Successful work resolves only its exact target/family.
|
|
46
|
+
2. Buffer each Telegram primary generation until its complete turn validates.
|
|
47
|
+
Failed uncommitted text/tool frames may fall back without replaying prior
|
|
48
|
+
successful research tools. Use the existing configured per-attempt limit
|
|
49
|
+
within the total/caller limit, preserving time for the next route. Immediate
|
|
50
|
+
TUI streams retain their no-replay fence after actual output. Stop and manual
|
|
51
|
+
approval remain authoritative; marked auxiliary review allowances remain.
|
|
52
|
+
3. Hidden reasoning/accounting alone never constitutes an irreversible answer
|
|
53
|
+
or tool effect. Discard failed hidden-only attempts before switching models.
|
|
54
|
+
Bound buffered frames/bytes, and recheck ownership before release.
|
|
55
|
+
4. Save actor inference routes as well as auxiliary routes. Record only static
|
|
56
|
+
failure category, status, deadline kind, frame categories and commit policy;
|
|
57
|
+
never provider bodies, generated text, endpoints or credentials.
|
|
58
|
+
5. Group public progress by actual host tool stage. Replace same-step model
|
|
59
|
+
explainers, retain factual completed stages and show waiting/paused/stopped
|
|
60
|
+
state. Counts describe successful operations, not unique sources or goal
|
|
61
|
+
fulfillment. Keep tool chronology behind Activity and explicit progress
|
|
62
|
+
available; do not add progress-only model requests or change admin behavior.
|
|
63
|
+
6. Empty failed native work produces no fabricated final answer, no final
|
|
64
|
+
delivery receipt and no consumed intake. Retain the original goal/evidence
|
|
65
|
+
and make the existing progress message paused. Legitimate current accepted
|
|
66
|
+
partial answers retain their separate receipt-backed delivery path.
|
|
67
|
+
7. Hand the bridge an issued, immutable source receipt directly from the
|
|
68
|
+
actual runner result, bound to the current scope/run/epoch/tool action.
|
|
69
|
+
Display projection cannot remove verified source custody. Forged, copied,
|
|
70
|
+
stale, failed or blocked event carriers confer no source evidence; legacy
|
|
71
|
+
marker parsing remains only for events without the new field.
|
|
72
|
+
|
|
73
|
+
The follow-up [complete-source work order](WO-web-source-full-coverage-extraction-20261013.md)
|
|
74
|
+
tracks the operator's additional requirement to remove page prefixes and
|
|
75
|
+
account for every source chunk when dedicated extraction is necessary.
|
|
76
|
+
|
|
77
|
+
## Verification
|
|
78
|
+
|
|
79
|
+
The isolated workspace build, tarball audit (573 files, no warnings) and fresh
|
|
80
|
+
compiler-free npm install pass. Isolated suites pass 137 orchestrator checks,
|
|
81
|
+
133 CLI checks and 40 typed receipt/public-native checks (overlapping suites,
|
|
82
|
+
not a unique total). Four broader native-transport fixture failures reproduce
|
|
83
|
+
unchanged on baseline `ba291791`; they are not represented as passing.
|
|
84
|
+
|
|
85
|
+
The [installed live receipt](evidence/telegram-public-research-stream-live-20261013.json)
|
|
86
|
+
records nine real free-model POSTs, two actual scoped RFC page reads and real
|
|
87
|
+
native goal assessment. After both reads, the harness cuts a real Step text
|
|
88
|
+
delta (227 bytes forwarded). MiMo completes the same logical generation,
|
|
89
|
+
without another source read. Both issued receipts reach the bridge, both source
|
|
90
|
+
URLs reach the final wire text, and intake settles consumed/goal fulfilled.
|
|
91
|
+
Bundle SHA256: `666eaaf77fce81bd82f2a214c0f787447af75decaafc6bd2bda65527822a7266`.
|
|
92
|
+
|
|
93
|
+
Only Telegram transport/ACK is simulated in disposable state. No inference or
|
|
94
|
+
catalog response is fabricated, no local inference runs, and no actual Telegram
|
|
95
|
+
message is sent. Earlier fault-fixture runs completed useful research but did
|
|
96
|
+
not actually inject a disconnect; they are excluded from interruption proof.
|
|
97
|
+
The first fresh-install attempt hit a SQLite prebuild download timeout; the
|
|
98
|
+
unchanged tarball passed on retry. Actual Telegram delivery/typing needs
|
|
99
|
+
operator deployment. The separate full-source extraction work remains tracked
|
|
100
|
+
in its follow-up order.
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Recover accepted Telegram drafts without restarting completed work
|
|
2
|
+
|
|
3
|
+
Status: implementation and installed-package live verification complete.
|
|
4
|
+
Follow-up to the Case Theory stall on installed Omnius 1.0.854, PID 161677,
|
|
5
|
+
running from `telegram_test`. Publication and bot restart remain operator-owned.
|
|
6
|
+
|
|
7
|
+
## Incident anchors
|
|
8
|
+
|
|
9
|
+
The original input is `telegram:chat:-1003960149435:0:1083`; task
|
|
10
|
+
`tgtask-2d2fee541b8304db4568`, bridge run `telegram:2a5a22214cf84400`,
|
|
11
|
+
actor run `telegram-84e4e6e5411c9753-1791918893130-1`.
|
|
12
|
+
The input explicitly addresses the bot while replying to an independently
|
|
13
|
+
adopted message 1081 by another participant. Private source and draft text are
|
|
14
|
+
not copied here or sent to the synthetic live test.
|
|
15
|
+
|
|
16
|
+
- 19:15:01Z: Telegram progress delivery succeeds.
|
|
17
|
+
- 19:15:39Z: `task_complete` accepts a full answer for deferred Telegram
|
|
18
|
+
delivery. The actor did draft an answer; this was not a generation failure.
|
|
19
|
+
- Finalization `terminal-3e4feb48f9f23fd29a87` records
|
|
20
|
+
`incomplete_verification`: required observation and visible response have no
|
|
21
|
+
canonical receipts. The source-answer review's support verdict is separate
|
|
22
|
+
from actual observation or provider delivery evidence.
|
|
23
|
+
- The old runner exits immediately on the accepted completion despite missing
|
|
24
|
+
work, filters the full answer from its return, and gives terminal review an
|
|
25
|
+
empty candidate. Review requests another action run.
|
|
26
|
+
- Continuation reopens the unchanged source and falsely rejects it as
|
|
27
|
+
`original_native_source_changed`: it compares every adopted source's author
|
|
28
|
+
to the current task owner. Initial admission had correctly preserved the
|
|
29
|
+
independently adopted participant's author. Both native envelopes and text
|
|
30
|
+
hashes still match their immutable spool/requirement bases.
|
|
31
|
+
- At 19:22:02Z the exhausted planning transition becomes
|
|
32
|
+
`reconciliation_required`. `missing_action_tool_names` is the generic
|
|
33
|
+
diagnostic after the host removes a rejected plan, not evidence that the
|
|
34
|
+
model independently omitted tools. Public chat gets no paused status.
|
|
35
|
+
- A later human follow-up 1086 obtains assistant reply 1089 at 19:30:36Z. The
|
|
36
|
+
original request required another prompt to recover; it was not deliberately
|
|
37
|
+
ignored by the attention router.
|
|
38
|
+
|
|
39
|
+
The installed incident bundle SHA256 is
|
|
40
|
+
`1c385603d694ff5ca04edf20af158b1f75895e96b900e603a9063112fe2a257c`.
|
|
41
|
+
|
|
42
|
+
## Ordered repairs
|
|
43
|
+
|
|
44
|
+
1. Validate retained adopted sources against each source's admitted actor,
|
|
45
|
+
envelope, text basis, topic and immutable custody. The original task owner
|
|
46
|
+
still owns the task. Legacy actorless locators retain the owner-only rule.
|
|
47
|
+
2. Before leaving an accepted completion, check required non-provider work
|
|
48
|
+
effects. Keep the same runner, tools, workspace and exact answer while
|
|
49
|
+
gathering only the missing evidence. Use the existing bounded completion
|
|
50
|
+
budget. Do not hold for visibility or provider delivery alone.
|
|
51
|
+
3. On bounded exhaustion, retain the exact accepted draft as typed
|
|
52
|
+
`pending_work_evidence` metadata. It cannot become a deliverable, successful
|
|
53
|
+
observation, provider ACK or completed objective. Reopen the exact committed
|
|
54
|
+
terminal marker and native source custody before exposing it to review.
|
|
55
|
+
4. For an already admitted public human task whose planning recovery stops,
|
|
56
|
+
send one brief paused status with the original issued reply grant/topic.
|
|
57
|
+
Preserve Stop, later-human preemption, native ownership, durable attempt
|
|
58
|
+
deduplication and physical ACK checks. Keep status separate from task result
|
|
59
|
+
and effect receipts; never broadcast ambient or peer-bot failures.
|
|
60
|
+
5. Verify isolated source, full package rebuild, tarball and fresh install.
|
|
61
|
+
Run the installed production runner with real remote free-model responses
|
|
62
|
+
and a real source read on synthetic data. Make a scoped commit and push.
|
|
63
|
+
|
|
64
|
+
## Source locations
|
|
65
|
+
|
|
66
|
+
- `packages/orchestrator/src/agenticRunner.ts`: completion reply ownership,
|
|
67
|
+
required-work hold, bounded retention and result handoff.
|
|
68
|
+
- `packages/cli/src/tui/telegram-bridge.ts`: retained native source validation,
|
|
69
|
+
terminal review draft context and public paused-task ownership/dispatch.
|
|
70
|
+
- `packages/cli/src/tui/telegram-planning-failure-notice.ts`: fixed public status
|
|
71
|
+
and existing durable exclusive attempt store.
|
|
72
|
+
- `scripts/live-telegram-retained-work-harness.mjs`: synthetic installed-runtime
|
|
73
|
+
live acceptance. It pins the eligible Muse endpoint, bounds requests, forbids
|
|
74
|
+
local inference and Telegram sends, and invents no model/catalog replies.
|
|
75
|
+
|
|
76
|
+
## Verification
|
|
77
|
+
|
|
78
|
+
All 66 new regressions passed: 13 runner repair, 11 adopted-source custody,
|
|
79
|
+
9 retained-draft Bridge custody, and 33 public paused-status cases. The isolated
|
|
80
|
+
orchestrator batch passed 62/62. The broader isolated CLI batch passed 199/201;
|
|
81
|
+
its two old source/owner guard final-state assertions fail identically on
|
|
82
|
+
untouched, fully compiled `ba291791`. An additional existing terminal-review
|
|
83
|
+
fixture fails on that same baseline (17 other cases pass). These are recorded
|
|
84
|
+
test limitations, not an assertion that the entire suite is green; no custody
|
|
85
|
+
guard or test assertion was relaxed to obtain success.
|
|
86
|
+
|
|
87
|
+
The full isolated workspace rebuild, 571-file tarball audit (zero warnings),
|
|
88
|
+
and compiler-free fresh npm installation passed. The installed candidate uses
|
|
89
|
+
the tracked test manifest version 1.0.790; it is identified by bundle SHA256
|
|
90
|
+
`c78a20f7d05ef313e2226211235fb57402a52249aa366b7274a8a1cc28479a5f`,
|
|
91
|
+
not an npm publication or replacement of the operator's runtime.
|
|
92
|
+
|
|
93
|
+
The real installed Muse run passed in 16.7 seconds, with three HTTP 200 streamed
|
|
94
|
+
Responses requests and the sequence `task_complete → file_read → task_complete`.
|
|
95
|
+
Exactly one bounded required-work hold preceded one actual production
|
|
96
|
+
`FileReadTool` read. Both completion submissions have the same exact answer
|
|
97
|
+
hash. Observation becomes satisfied; only visible response remains pending.
|
|
98
|
+
The runner returns `provider_delivery_pending`, no retained-only draft, no
|
|
99
|
+
accepted/completed result, and zero provider ACKs. Model/catalog replies were
|
|
100
|
+
not mocked; all source content was synthetic and no Telegram message was sent.
|
|
101
|
+
|
|
102
|
+
This live test covers the installed runner and real source tool with a
|
|
103
|
+
host-owned scratch acceptance adapter. It does not exercise real Telegram
|
|
104
|
+
ingress/reply grants, the Bridge source-answer critic, or Telegram API delivery.
|
|
105
|
+
Actual paused dispatch/source custody are covered by the focused synthetic
|
|
106
|
+
transport tests. Actual Telegram delivery and typing visibility require the
|
|
107
|
+
operator's updated publication/restart; no live conversation state is modified
|
|
108
|
+
by this repair or test. [Safe receipts](evidence/telegram-retained-source-handoff-live-20261013.json)
|
|
109
|
+
retain hashes and synthetic diagnostics without private source/draft text.
|
|
110
|
+
|
|
111
|
+
Architecture: [separate review, delivery and task states](../../.aiwg/architecture/adr-completion-review-delivery-states-20261013.md).
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Complete browser and crawler reads
|
|
2
|
+
|
|
3
|
+
Status: implemented and verified; follows the complete HTTP source repair.
|
|
4
|
+
|
|
5
|
+
The operator's no-truncation requirement also covers browser and crawler page
|
|
6
|
+
reads. The final audit found independent prefix cuts in Playwright, the legacy
|
|
7
|
+
browser service and crawler formatting; preserving full HTTP responses alone
|
|
8
|
+
does not repair those paths.
|
|
9
|
+
|
|
10
|
+
1. Remove successful prefix cuts from browser content/DOM/element reads and
|
|
11
|
+
evaluation serialization, including predecessor service serialization.
|
|
12
|
+
Preserve valid complete JSON. Distinguish a selected element, evaluation
|
|
13
|
+
result, controls snapshot and complete returned document view.
|
|
14
|
+
2. Issue a distinct immutable page-content capability with exact content hash,
|
|
15
|
+
source URL, producer/action, invocation identity, capture and session
|
|
16
|
+
provenance. A browser observation is not an HTTP fetch receipt or proof of
|
|
17
|
+
a read-only action; JavaScript evaluation can mutate the page.
|
|
18
|
+
3. Remove crawler per-page/global text clipping and discarded link/metadata
|
|
19
|
+
tails. Preserve code whitespace and all static sections. Keep requested
|
|
20
|
+
page/depth scope explicit. Resource failures must not masquerade as a
|
|
21
|
+
successful complete prefix or a successful multi-page crawl.
|
|
22
|
+
4. Route these complete returned views through the same capacity admission,
|
|
23
|
+
full-request source workers, exact quote checks and contiguous checkpoint
|
|
24
|
+
mechanism used by HTTP fetches. Preserve Stop, task ownership and original
|
|
25
|
+
source scope through adapters and normalization.
|
|
26
|
+
5. Provide host-owned extraction resumption without replaying potentially
|
|
27
|
+
mutating JavaScript. Ordinary browser/crawl reads may be repeated to obtain
|
|
28
|
+
a new observation; an evaluation result must reopen its saved source.
|
|
29
|
+
6. Verify actual large producer results, serializer boundaries, late facts,
|
|
30
|
+
copied/stale capabilities, complete-view normalization, bounded pending
|
|
31
|
+
coverage and resumption. Rebuild and validate the installed package before
|
|
32
|
+
committing and pushing the coherent repair.
|
|
33
|
+
|
|
34
|
+
Bounded UI/control summaries remain observations of their explicit scope;
|
|
35
|
+
they cannot establish a complete document read. This work does not widen
|
|
36
|
+
Telegram tool permissions or reuse active browser sessions in acceptance tests.
|
|
37
|
+
|
|
38
|
+
Depends on [complete-source extraction](WO-web-source-full-coverage-extraction-20261013.md)
|
|
39
|
+
and [inference contract/output budgets](WO-fallback-contract-cooldown-20261013.md).
|
|
40
|
+
|
|
41
|
+
## Verification
|
|
42
|
+
|
|
43
|
+
The [installed browser receipt](evidence/browser-complete-source-live-20261013.json)
|
|
44
|
+
records six successful real Playwright tool reads against isolated Chromium:
|
|
45
|
+
content, DOM, innerText, textContent, innerHTML and evaluate. The complete DOM
|
|
46
|
+
has 477,626 characters; evaluation retains valid JSON with all 350 rows and its
|
|
47
|
+
late Unicode field. No user browser, local inference, external source site,
|
|
48
|
+
runtime installation or Telegram transport was used. The exact installed
|
|
49
|
+
bundle SHA256 is recorded; this covers execution tools, not a GUI benchmark or
|
|
50
|
+
real Telegram delivery.
|
|
51
|
+
|
|
52
|
+
The isolated producer suites pass 98 tests. Shared runner/extraction/fallback/
|
|
53
|
+
budget suites pass 264 with one existing opt-in test skipped, including exact
|
|
54
|
+
contiguous resumption with no browser replay,
|
|
55
|
+
ownership/Stop rejection and honest unresolved facets. Telegram suites pass
|
|
56
|
+
115, including genuine source receipts, actual child-page destinations beyond
|
|
57
|
+
clipped event text, unsafe URL rejection and existing native settlement checks.
|
|
58
|
+
Crawler Python parser/BFS fixtures run the actual implementation with a fixture
|
|
59
|
+
transport; no live Crawlee service or full browser-driven Telegram conversation
|
|
60
|
+
is claimed. Bounded rapid UI snapshots now explicitly report omitted frames and
|
|
61
|
+
text and state that they are not complete page reads.
|
|
62
|
+
|
|
63
|
+
All workspace packages rebuild, the 583-file tarball audit has zero warnings,
|
|
64
|
+
and the compiler-free fresh npm install passes. The operator's publication
|
|
65
|
+
directory and active runtime are unchanged by these isolated acceptance runs.
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# Complete web sources and request-bound extraction
|
|
2
|
+
|
|
3
|
+
Status: implemented and verified in the isolated installed runtime. Added by
|
|
4
|
+
the operator during the OMNIUS research stream/progress repair. Publication and
|
|
5
|
+
restart of the active session remain with the operator.
|
|
6
|
+
|
|
7
|
+
## Requirement
|
|
8
|
+
|
|
9
|
+
Do not silently truncate web pages. When a complete page cannot fit the main
|
|
10
|
+
agent's context, use a dedicated isolated extraction pass that accounts for the
|
|
11
|
+
whole source and preserves the requested information's depth and breadth.
|
|
12
|
+
An archive containing the full bytes is necessary, but is not proof that the
|
|
13
|
+
agent or extractor read the complete requested material.
|
|
14
|
+
|
|
15
|
+
## Gaps found and repaired
|
|
16
|
+
|
|
17
|
+
- Native HTTP bytes were already complete, content-addressed and hash-bound.
|
|
18
|
+
- `web_fetch` nevertheless returned a default 5,000-character prefix, including
|
|
19
|
+
on cache hits, with a 100,000-character display ceiling.
|
|
20
|
+
- The pending HTML evidence implementation selected the first article and capped
|
|
21
|
+
article text; supplementary rendering clips other material.
|
|
22
|
+
- The runner could admit that short projection without any extraction call.
|
|
23
|
+
- The existing evidence branch remains useful targeted discovery, but samples at
|
|
24
|
+
most six windows/220 lines/24,000 characters and two semantic rounds. It
|
|
25
|
+
clips long lines, excerpts and the request brief. It is not a full-source
|
|
26
|
+
extraction mechanism and must not be presented as one.
|
|
27
|
+
|
|
28
|
+
## Ordered work
|
|
29
|
+
|
|
30
|
+
1. Return the full requested textual/raw source view on fresh and cached
|
|
31
|
+
fetches. Keep legacy `max_length` accepted without silently clipping the
|
|
32
|
+
source. Retain explicit size failures, immutable raw bytes and native hash
|
|
33
|
+
receipts. Capacity management belongs to the runner.
|
|
34
|
+
2. Traverse the complete static document in order, including all articles,
|
|
35
|
+
tables, code/pre whitespace and captions. Distinguish non-rendered code and
|
|
36
|
+
bounded supplementary metadata from the complete semantic source. Sparse
|
|
37
|
+
or JavaScript-dependent pages must explicitly require GUI/rendered evidence
|
|
38
|
+
rather than claiming rendered-page coverage from static HTML.
|
|
39
|
+
3. Capacity-admit the complete semantic view when it fits. Otherwise archive
|
|
40
|
+
that complete semantic document separately from raw HTML and dispatch a
|
|
41
|
+
source-wide extraction coordinator through the existing configured backend.
|
|
42
|
+
4. Partition every source character into contiguous lossless hash-bound
|
|
43
|
+
ranges, including long minified lines and Unicode. Every worker receives
|
|
44
|
+
the full accepted original request and requested facets, never a clipped
|
|
45
|
+
replacement. Validate quoted findings against exact chunk/source ranges.
|
|
46
|
+
5. Track real completed chunk coverage and exact resumable source/request
|
|
47
|
+
identity. Budget, ownership, Stop, invalid response or unavailable inference
|
|
48
|
+
leaves explicit remaining coverage/cursor. Do not infer absence from an
|
|
49
|
+
unread region or declare the source complete because a few excerpts look
|
|
50
|
+
relevant. Worker judgments do not grant objective fulfillment.
|
|
51
|
+
6. Preserve all extraction findings in the owned artifact/state. Give the
|
|
52
|
+
parent a complete request-focused result only after coverage is accounted
|
|
53
|
+
for and it fits; otherwise require an explicit reduction/read/resume step,
|
|
54
|
+
retaining the full findings rather than clipping the main view silently.
|
|
55
|
+
7. Verify full-content tails, multiple articles, code/tables/captions, fresh
|
|
56
|
+
and cache paths, request clauses beyond old limits, chunk coverage, Stop,
|
|
57
|
+
resume identity, invalid model evidence and true budget exhaustion. Run
|
|
58
|
+
actual remote extraction on synthetic documents with late and distributed
|
|
59
|
+
requested facts; no invented inference replies count as live acceptance.
|
|
60
|
+
8. Rebuild and test the isolated installed package, then make scoped commits
|
|
61
|
+
and push. Preserve unrelated changes and the operator's publication files.
|
|
62
|
+
9. Repair invalid returned worker replies within the dedicated pass using
|
|
63
|
+
existing finite calls/attempt/deadline budgets. Record static validation
|
|
64
|
+
reasons and reply hashes, reserve correction-prompt capacity in advance,
|
|
65
|
+
and keep exact quote validation. An invalid chunk earns no coverage credit.
|
|
66
|
+
|
|
67
|
+
Installed acceptance exposed a separate [request-contract/budget repair](WO-fallback-contract-cooldown-20261013.md)
|
|
68
|
+
needed before the low-context public path could finish. Keep these dependencies
|
|
69
|
+
explicit; a successful isolated worker alone does not certify the final path.
|
|
70
|
+
The final scope audit also opened the [browser/crawler work order](WO-web-browser-crawl-full-coverage-20261013.md)
|
|
71
|
+
for independent prefix cuts in those producers.
|
|
72
|
+
|
|
73
|
+
Dependencies: the existing native web-source custody, source artifacts,
|
|
74
|
+
configured branch backend, capacity admission and Stop/owner fences. Reuse
|
|
75
|
+
them; do not add a separate completion-approval workflow.
|
|
76
|
+
|
|
77
|
+
## Verification receipts
|
|
78
|
+
|
|
79
|
+
The [live coordinator receipt](evidence/web-source-wide-coordinator-live-20261013.json)
|
|
80
|
+
records eight real Muse HTTP 200 generations in 40.4 seconds. Five contiguous
|
|
81
|
+
workers cover all 99,981 characters of a synthetic HTML semantic document;
|
|
82
|
+
three cover all 54,551 characters of single-line JSON. Every requested field
|
|
83
|
+
is recovered with exact host-validated source quotes, including later sections,
|
|
84
|
+
table values, code, Unicode, captions and an attribute-only API destination.
|
|
85
|
+
Full original request/facets survive the actual wire adaptation unchanged.
|
|
86
|
+
|
|
87
|
+
This receipt covers the compiled coordinator and production remote backend.
|
|
88
|
+
Installed public Telegram source routing, parent capacity and goal settlement
|
|
89
|
+
are covered by the separate final acceptance below. No local inference, fake
|
|
90
|
+
model/catalog replies or actual Telegram sends are involved.
|
|
91
|
+
|
|
92
|
+
The [installed worker diagnostic](evidence/web-source-worker-validation-before-20261013.json)
|
|
93
|
+
captures two distinct returned-reply problems: Step normalized whitespace inside
|
|
94
|
+
quotes, while Muse returned literal quotes but marked the compound request
|
|
95
|
+
uncertain because only part of it appeared in the chunk. Exact quotes remain
|
|
96
|
+
mandatory. Valid quoted findings may coexist with an unresolved facet; neither
|
|
97
|
+
chunk support nor processing coverage establishes whole-task fulfillment.
|
|
98
|
+
|
|
99
|
+
The [parent-capacity diagnostic](evidence/web-source-parent-capacity-before-20261013.json)
|
|
100
|
+
then records five valid workers covering all 109,910 RFC characters, followed
|
|
101
|
+
by completed-extraction resumption and primary turns with only 662/882 output
|
|
102
|
+
tokens. The latter returned an incomplete provider response before the
|
|
103
|
+
fixture's 20-request cap. This is a main-turn reservation/reduction problem,
|
|
104
|
+
not an invalid source worker or an artifact-query helper. Primary turns now
|
|
105
|
+
reserve at least 4,096 output tokens, subject to an explicit lower user ceiling,
|
|
106
|
+
and completed findings have a compact complete artifact that reopens without
|
|
107
|
+
another worker pass. Runtime timeouts remain bounded and unchanged.
|
|
108
|
+
|
|
109
|
+
The [final installed public-path receipt](evidence/web-source-installed-public-live-20261013.json)
|
|
110
|
+
records nine actual model requests in 65.8 seconds, with real catalog, inference
|
|
111
|
+
and RFC source responses. The first schema rejection is repaired on the same
|
|
112
|
+
model; the remaining eight HTTP requests succeed. Three workers account for
|
|
113
|
+
all 109,910 source characters, preserve the complete original request and
|
|
114
|
+
produce exact host-validated quotes. The final reply contains all three
|
|
115
|
+
requested details, including the late appendix, and preserves mandatory versus
|
|
116
|
+
advisory wording. The native host goal is fulfilled and intake is consumed
|
|
117
|
+
after the scratch Telegram ACK. The installed bundle SHA256 is
|
|
118
|
+
`546ad34240141d7597b979bb298a7381ae3ab4c8356c28a95a9c7955ddcf51ef`.
|
|
119
|
+
|
|
120
|
+
This run uses a 65,536-token configured context. The separate
|
|
121
|
+
[32k capacity receipt](evidence/web-source-installed-capacity-guard-20261013.json)
|
|
122
|
+
records complete source processing followed by a typed before-transport pause:
|
|
123
|
+
the intact request, safety margin and required output reserve exceed capacity.
|
|
124
|
+
It is a successful capacity-guard check, not a successful final-answer run.
|
|
125
|
+
No source prefix or fabricated completion is substituted, and automatic replay
|
|
126
|
+
stops. Complete extraction cannot guarantee a final reply when the essential
|
|
127
|
+
request itself cannot fit the selected model's context.
|
|
128
|
+
|
|
129
|
+
Execution suites pass 98 tests; runner/extraction/fallback/budget suites pass
|
|
130
|
+
264 with one existing opt-in test skipped; Telegram suites pass 115. All
|
|
131
|
+
workspace packages rebuild. The 583-file tarball audit has zero warnings and
|
|
132
|
+
the compiler-free fresh npm installation passes. Browser producer acceptance
|
|
133
|
+
uses the same installed bundle and is recorded in the dependent work order.
|
|
134
|
+
Telegram transport acknowledgments are simulated; actual delivery/typing,
|
|
135
|
+
historical group transcripts and web-search availability are outside this run.
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "omnius.live-browser-complete-source-acceptance.v1",
|
|
3
|
+
"startedAt": "2026-10-13T23:32:33.094Z",
|
|
4
|
+
"coverage": "installed_execution_tool_transport",
|
|
5
|
+
"bundleSha256": "546ad34240141d7597b979bb298a7381ae3ab4c8356c28a95a9c7955ddcf51ef",
|
|
6
|
+
"installedOmniusRuntimeCoverage": true,
|
|
7
|
+
"runnerTelegramCoverage": false,
|
|
8
|
+
"localInferenceCalls": 0,
|
|
9
|
+
"telegramWrites": 0,
|
|
10
|
+
"userBrowserAttached": false,
|
|
11
|
+
"automaticInstallAllowed": false,
|
|
12
|
+
"browserMode": "headless",
|
|
13
|
+
"launchFlags": [
|
|
14
|
+
"--disable-gpu",
|
|
15
|
+
"--disable-gpu-compositing",
|
|
16
|
+
"--disable-software-rasterizer",
|
|
17
|
+
"--use-gl=disabled",
|
|
18
|
+
"--disable-features=Vulkan,WebGPU"
|
|
19
|
+
],
|
|
20
|
+
"syntheticSourceChars": 477611,
|
|
21
|
+
"syntheticSourceSha256": "2e1207c0a479381c25e4a941d977be6d2eee2bf58d7c31f1b3b63a123ae68c81",
|
|
22
|
+
"records": [
|
|
23
|
+
{
|
|
24
|
+
"action": "content",
|
|
25
|
+
"chars": 351086,
|
|
26
|
+
"bytes": 351089,
|
|
27
|
+
"sha256": "850317106c9f3b47f193e5b90938257db04bb3f3e1061a38bfe4a035f88d270c",
|
|
28
|
+
"viewKind": "rendered_text",
|
|
29
|
+
"scope": "document",
|
|
30
|
+
"coverage": "complete_returned_view",
|
|
31
|
+
"tailVerified": true,
|
|
32
|
+
"validCompleteJson": null,
|
|
33
|
+
"invocationBound": true,
|
|
34
|
+
"sourceBrandVerified": true,
|
|
35
|
+
"sessionBound": true
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"action": "dom",
|
|
39
|
+
"chars": 477626,
|
|
40
|
+
"bytes": 491632,
|
|
41
|
+
"sha256": "af78adbdcf530ef417c832c16a6cf9405bdbd2f4139bfc578faac0c596e43fa0",
|
|
42
|
+
"viewKind": "raw_html",
|
|
43
|
+
"scope": "document",
|
|
44
|
+
"coverage": "complete_returned_view",
|
|
45
|
+
"tailVerified": true,
|
|
46
|
+
"validCompleteJson": null,
|
|
47
|
+
"invocationBound": true,
|
|
48
|
+
"sourceBrandVerified": true,
|
|
49
|
+
"sessionBound": true
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"action": "innerText",
|
|
53
|
+
"chars": 351088,
|
|
54
|
+
"bytes": 351091,
|
|
55
|
+
"sha256": "c96eb96c69be09e7e0a12e3b6fd290004d0c38a0bc82d338462f1766585d61ea",
|
|
56
|
+
"viewKind": "rendered_text",
|
|
57
|
+
"scope": "selected_element",
|
|
58
|
+
"coverage": "complete_returned_view",
|
|
59
|
+
"tailVerified": true,
|
|
60
|
+
"validCompleteJson": null,
|
|
61
|
+
"invocationBound": true,
|
|
62
|
+
"sourceBrandVerified": true,
|
|
63
|
+
"sessionBound": true
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"action": "textContent",
|
|
67
|
+
"chars": 351086,
|
|
68
|
+
"bytes": 351089,
|
|
69
|
+
"sha256": "850317106c9f3b47f193e5b90938257db04bb3f3e1061a38bfe4a035f88d270c",
|
|
70
|
+
"viewKind": "rendered_text",
|
|
71
|
+
"scope": "selected_element",
|
|
72
|
+
"coverage": "complete_returned_view",
|
|
73
|
+
"tailVerified": true,
|
|
74
|
+
"validCompleteJson": null,
|
|
75
|
+
"invocationBound": true,
|
|
76
|
+
"sourceBrandVerified": true,
|
|
77
|
+
"sessionBound": true
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"action": "innerHTML",
|
|
81
|
+
"chars": 351154,
|
|
82
|
+
"bytes": 351157,
|
|
83
|
+
"sha256": "1c373997afa742c08399367deac8dd63b3a5d4b7163bf880f56539a9234df857",
|
|
84
|
+
"viewKind": "raw_html",
|
|
85
|
+
"scope": "selected_element",
|
|
86
|
+
"coverage": "complete_returned_view",
|
|
87
|
+
"tailVerified": true,
|
|
88
|
+
"validCompleteJson": null,
|
|
89
|
+
"invocationBound": true,
|
|
90
|
+
"sourceBrandVerified": true,
|
|
91
|
+
"sessionBound": true
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"action": "evaluate",
|
|
95
|
+
"chars": 138353,
|
|
96
|
+
"bytes": 152356,
|
|
97
|
+
"sha256": "e2cf0105734b8a10fa9674821efdb08442d7712309934ffdd507c776a9800f0b",
|
|
98
|
+
"viewKind": "evaluation_json",
|
|
99
|
+
"scope": "evaluation_result",
|
|
100
|
+
"coverage": "complete_returned_view",
|
|
101
|
+
"tailVerified": true,
|
|
102
|
+
"validCompleteJson": true,
|
|
103
|
+
"invocationBound": true,
|
|
104
|
+
"sourceBrandVerified": true,
|
|
105
|
+
"sessionBound": true
|
|
106
|
+
}
|
|
107
|
+
],
|
|
108
|
+
"status": "passed",
|
|
109
|
+
"finishedAt": "2026-10-13T23:32:34.178Z",
|
|
110
|
+
"blockedExternalRequests": 0
|
|
111
|
+
}
|