Skip to content

docs(panel): document the uncontrollable log stream and its batch keys (v6.3.0) - #93

Merged
wisdommen merged 3 commits into
alphafrom
docs/467-log-stream-control-and-batch-keys
Sep 16, 2026
Merged

wisdommen merged 3 commits into
alphafrom
docs/467-log-stream-control-and-batch-keys

Conversation

@wisdommen

@wisdommen wisdommen commented Sep 16, 2026 •

Copy link
Copy Markdown
Member

Summary

Doc-sync for framework pull request UltiKits/UltiTools-Reborn#467, which merged into the framework's alpha without a companion documentation pull request.

This pull request targets alpha deliberately, not master: it documents unreleased v6.3.0 behaviour, and master is the published site. Companion framework PR: UltiKits/UltiTools-Reborn#467.

Only guide/advanced/panel-integration.md and its Chinese mirror change. No new ::: containers, no <<< example references, no version bumps.

Changes

  1. Capability comment. logs: true # live console log stream + control becomes # live console log stream (Chinese: 实时控制台日志流 + 控制 becomes 实时控制台日志流). As of v6.3.0 the panel cannot control the stream.
  2. New section "Live log stream" / 实时日志流.
    • With logs on, the log handler is attached each time the panel connection opens and delivers for as long as the connection is up.
    • log_stream / log_stream_control actions start, stop, pause, resume receive a not-supported error response; delivery continues. None of them changed delivery on any released version, and the framework has no per-viewer identity to act on.
    • The status response now carries connected, logTransmitterEnabled, queueSize; subscriberCount and streaming are gone.
    • The seven removed public LogStreamManager methods are listed.
  3. New subsection "Batch settings" / 批量发送配置 for ultipanel.logging.batch.{enabled,size,interval}: defaults true / 10 / 5000, minimums (size 1, interval 1000 ms), the 1,000-entry queue cap, the fact that an existing config.yml is not migrated, reload behaviour, and the live batchConfig path.
  4. Page overview and version notice (from the Codex review): the opening paragraph now lists five v6.3.0 connection changes instead of four, including the log stream. The unreleased-version notice no longer says that none of the page's keys or classes exist on v6.2.5, because LogStreamManager and the batch keys already did.

Source trace (framework origin/alpha at cd1ac1d3)

Claim Source
Four control actions refused, delivery unaffected LogStreamManager.java:247-255, :598-604; COMPATIBILITY.md:173-191
No per-viewer identity, one relay connection LogStreamManager.java:566-573
Handler attached on every connection open when logs is on CloudSession.java:1003-1012; PluginInitiationUtils.java:279,358; LogStreamManager.java:127-142
status fields LogStreamManager.java:676-688; COMPATIBILITY.md:188-191
log_stream and log_stream_control share the handler PluginInitiationUtils.java:579-582
Batch keys and defaults src/main/resources/config.yml:86-110; UltiPanelLogTransmitter.java:104-109
size is per-send cap and early-send threshold; minimum 1 UltiPanelLogTransmitter.java:247-256,326-331,416; ServerMonitorManager.java:791,888-906,927
interval honoured with and without monitoring; minimum 1000 UltiPanelLogTransmitter.java:44,265-271,296-308; ServerMonitorManager.java:774-797,846-863
Queue cap 1,000, oldest dropped UltiPanelLogTransmitter.java:32,240-242
Boot-time invalid value: warning naming the key, default kept LogStreamManager.java:164-194
Keys read only in initialize(), i.e. on connection open LogStreamManager.java:98,124,152-203
Existing config.yml not migrated for batch.* UltiTools.java:400-415
ul reload re-reads config but does not reopen the connection UltiToolsCommands.java:30-39; UltiTools.java:586-591; PluginManager.java:532-542
Live batchConfig: validate all, then apply; interval reschedules; replaced at next connection open LogStreamManager.java:293-311,351-372,452-534; UltiPanelLogTransmitter.java:296-308
Block absent from shipped file before; interval never rescheduled (also the overview's "batch interval now takes effect") #467 diff of config.yml; UltiPanelLogTransmitter.java:118-122

Checks run locally

  • npm run build (dead-link checking): pass
  • scripts/check-bilingual-parity.sh: pass; both pages have 12 headings
  • scripts/check-container-length.sh on both pages: pass
  • Rendered-page anchor check: no broken in-page links
  • Added lines contain no bold and no dashes
  • Added Chinese paragraphs are one source line each, so no soft break falls between two CJK characters

🤖 Generated with Claude Code

Doc-sync for framework pull request UltiKits/UltiTools-Reborn#467, which
merged into the framework's alpha without a companion documentation change.

Panel integration page, English and Chinese mirror:

- The logs capability comment no longer says the log stream can be
  controlled. As of v6.3.0 the log_stream start/stop/pause/resume actions
  receive a not-supported error response and delivery continues
  (framework issues 434 and 468, COMPATIBILITY.md LogStreamManager entry).
- New "Live log stream" section: what the refused actions mean, the
  redefined status response (connected, logTransmitterEnabled, queueSize;
  subscriberCount and streaming removed), and the seven removed public
  LogStreamManager methods.
- New "Batch settings" subsection: ultipanel.logging.batch.enabled/size/
  interval as shipped in the framework's config.yml, their defaults and
  minimums, the 1,000-entry queue cap, that an existing config.yml is not
  migrated, that the keys are read when the panel connection opens (so a
  file edit needs a restart; ul reload does not reopen the connection),
  and the live batchConfig path that lasts until the next connection.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-16T15:25:47.485027Z dab0341 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

A soft line break between two CJK characters renders as a visible space in
Chromium-based browsers. The paragraphs added in the previous commit broke
mid-word in several places; each is now a single source line, matching
guide/essentials/data-storage.md and guide/advanced/ioc-container.md.
Wording is unchanged.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Deploying ultitools-dev-doc with  Cloudflare Pages  Cloudflare Pages

Latest commit: dab0341
Status: ✅  Deploy successful!
Preview URL: https://3400c9cd.ultitools-dev-doc.pages.dev
Branch Preview URL: https://docs-467-log-stream-control.ultitools-dev-doc.pages.dev

View logs

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: aa7b7dd190

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/src/guide/advanced/panel-integration.md
Codex review finding on pull request 93 (P2, thread 4027661648): the opening
paragraph still listed four v6.3.0 connection changes after the log stream
section was added. It now lists five, in section order, in both locales.

Swept the same class (a page-level summary contradicted by the new section)
and corrected the second instance: the unreleased-version notice said none
of the page's config keys or classes exist on v6.2.5, but LogStreamManager
and the batch keys it reads already did. It now says most do not exist yet
and that a section names what changed where one already exists.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@wisdommen
wisdommen merged commit c26545f into alpha Sep 16, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant