With the user's approval: item blocking and string length, alarm raise /
acknowledge / delay / repeat and INFO event, report generate / print /
item trigger / rptstp / SPOOL, class change and reset and attribute
change. All results match R1.03 (ISS-028 still holds). Everything was
removed again; before/after snapshot identical. ISS-129 and ISS-158
closed. Test package saved in examples/CI-Eng-Sample/shared/write_test;
snapshot.ps1 now removes the dss_*.tmp files its own exports leave.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Full manual diffs (L15, C20, E30, L25, J40, C10 §2, L10, P10, P11, J20,
C30, P20, R40, E10) and read-only checks on the shared R1.05 test server.
Skills and summaries moved to R1.05; new skill pytools (IM 36K10P40) from
docs (no Python on the test server). Issues ISS-132..181; corrections to
version-differences (E10, E30, P11, dss_ath_grp_u0104); C10 summary lists
the 3 new authorization actions; r105-verification V10-V17.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Full manual diffs (C50, R30, C60, L20, C40, L35, R10, R20, J10, L30, L50,
P30, G10, C10) and read-only checks on the shared R1.05 test server where
the permission system allowed them. Skills and summaries moved to R1.05.
Issues ISS-092..129 (gaps 104-107, 114-115, 130-131 unused); ISS-074
closed (manual and software agree), ISS-091 corrected by ISS-119.
version-differences: unlisted manual changes and installed-only changes.
r105-verification: V5-V9 and new not-tested rows.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Classes, sub-items, Modbus loopback and OPC UA loopback pass on R1.05.
New examples/CI-Eng-Sample/shared/: snapshot, reduced load/remove,
test and DSS temp-file cleanup scripts for shared servers. Before/after
snapshot identical; ISS-091 (dss_*.tmp left in tls\lst); ISS-080 note.
Certificate files of the test await deletion by the user.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
V1 eqpdbg main info and V2 setup_check.ps1 run read-only on the R1.05
test server (temporary copy deleted). setup_check.ps1 counted
program-limited 'any port' rules (e.g. Remote Desktop Shadow) as allowing
the CI Server ports; now only port rules or any-port rules without a
program limit count. V3 checked in the installed form definitions.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tools/manual_diff.py: word-level diff of one manual between two doc folders.
version-differences.md: the 20 manuals whose revision tables list only
contact information were diffed; E10 and E30 have real content changes,
the rest wording only. CLAUDE.md: re-checks use the full diff.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
New knowledge/r105-verification.md lists the R1.05 functions not available
on the test server (not tested) and the read-only steps prepared for the
user to verify on the server or in the GUI (eqpdbg, setup_check.ps1,
Engineering Module forms) plus the CI-Eng-Sample load decision.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Read-only re-check on the shared R1.05 test server plus a diff of the
R1.03 and R1.05 manual editions.
- installation-security: R1.05 OS list, Defender exceptions, IT security
2.0/3.0, LAPS, automatic configuration merge (jupgutl), PRM chapter,
port 34597; setup_check.ps1 gets -Version (default 1.05.00).
- data-access: L45 renumbered (new ch. 4 RESTful API), extended OPC UA
functions off by default, OPC UA methods (OPCUAC_METHOD_CALL2_DF),
Information Model Mapper, ServerConfig.xml in %TLS_SAV_PATH%.
- equipment: Modbus unchanged; IEC 104/61850 run as EQT managers
(eqtdbg, eqtfrcscn), IEC 61850 report control blocks, upgrade steps.
- Issues ISS-076..090; R1.05 notes on ISS-003/008/032/034/061;
progress and version-differences updated.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- R1.03 frozen on branch r1.03 / tag r1.03-final; README and CLAUDE.md
explain which branch to use and the rules for the shared R1.05 server.
- knowledge/version-differences.md: R1.03 -> R1.05 changes from the
manual revision tables and a read-only comparison of installed files
(install paths, eqt/eta IEC 104/61850 drivers, REST server, jupgutl,
new pyTOOLS manual IM 36K10P40).
- system-check re-checked read-only on the R1.05 test server.
- progress.md: R1.05 re-check table per skill; document map lists
R1.05 and R1.03 editions.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- layouts.md: tab set must be the last child of its frame set (web); desktop tab frames ignore
zoom (navigate ... stretchDisplay); web activates the last tab loaded; web tab labels = display
title; one layout command at a time; connectionState breaks the web layout (corrects 6.3);
per-user layout verified on desktop and web
- create-display.md: new section "Writing display XML directly" (text size, rounding, arc angles
clockwise on both clients, Clicked b1, web item attributes, asDateTime, server-side command as
CIX_PROCESS with group OPERATOR, alarm overview columns / white area)
- deploy-displays.md: 8-display sample scripts; jwuiutl -v re-saves files
- trend.md: CIENG_TrendLab as history, cieng_feed.ps1, 50-pen hairline trade-off, component
opaque, micro trend "Record not found" without history
- users-groups.md: PASSWORD "" for an empty password; sample user CIENG; open session blocks
group removal (DSSSDA03 stopped)
- configure-audit.md, L25 / R30 / C50 summaries, SKILL.md, issues ISS-068..075, progress rows
- Every statement tested on CI Server R1.03.00 2026-10-02..06 (desktop and web, test display and
test layouts removed afterwards)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Group CIENG_OPERATOR dropped (08, 85, load.cmd, README): the live-data Start also works for a
user in the factory group OPERATOR (tested 2026-10-06 as OPER), so EXECUTE_GENERAL_COMMANDS is
not needed; 08b_user_df.qli gives CIENG the group OPERATOR
- remove.cmd / README: open CIENG session note reworded
- Generator README / cixml.py: arc angles run clockwise from 3 o'clock on desktop and web (fixed
and connected; the earlier "mirrored on the desktop" note was wrong); rounding above 1 draws an
ellipse on both clients
- Tested on CI Server R1.03.00 2026-10-06: CIENG logon (empty password) and Start with group
OPERATOR; test display with static and connected arcs on both clients
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Contents / files: DEMO.FEED_ON, CIENG_OPERATOR, user CIENG, CIENG_* displays, generator, feed;
old displays and trend_feed.ps1 removed; add_trend_spares.ps1 kept as a tool
- Displays and layout rewritten (install steps, logon as CIENG, display table, screen sizes with
untested zoom estimates marked, known limits, removal); new Live data section
- remove.cmd note on open CIENG sessions; monitoring / audit / planned additions updated
- Tested on CI Server R1.03.00 2026-10-06: deploy and logon steps (stages 2-4), layout.ps1 -Remove
restores Layouts.xml byte for byte, install_feed.ps1 -Remove / reinstall
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 08_auth_group_df.qli: + CIENG_OPERATOR (factory OPERATOR actions + EXECUTE_GENERAL_COMMANDS
for the server-side live-data Start)
- 08b_user_df.qli (new): CIENG, PASSWORD "" given explicitly, layout CIENG_Operator, initial
display CIENG_Overview; loaded by load.cmd after 08
- 85_remove_auth_group_df.qli: removes CIENG before CIENG_OPERATOR and CIENG_VIEWER
- remove.cmd: log out every CIENG session first (a group with an open session of its user cannot
be removed: DSSP-E-NODEL in USER_VAL; a retry stopped DSSSDA03 with DUR-F-BAD_SIZE)
- Tested on CI Server R1.03.00 2026-10-06: full remove.cmd / load.cmd (load 0 errors); CIENG
logon with empty password on web and desktop lands on CIENG_Overview; ADMIN keeps the default
layout; Start as CIENG; displays bind to the recreated items in a fresh session
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Deleted the three old displays; add_trend_spares.ps1 kept as a documented tool
- 19b_audit_item_df.qli: operator writes now come from the Manual / Auto buttons on CIENG_Control
- Tested on CI Server R1.03.00 2026-10-06: remove_displays / deploy_displays cycle leaves exactly
the 8 new displays; Manual / Auto on CIENG_Control audited as ITEM.VALUE.MODIFY.OPER-INTERFACE
(user, old/new value)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- displays/CIENG_{Header,Overview,Control,Trends,Alarms,System,AlarmBanner,TankFaceplate}.xml:
dark dashboard in HTML mode (desktop + web), generated by displays/generator/build.py
(cixml.py component library; README.md describes the tool and the R1.03 rules it follows)
- layouts/CIENG_Operator.xml now holds CIENG_Operator (menu, navigation toolbar, header frame,
5-tab set, alarm banner, status line; navigate commands with stretchDisplay) and CIENG_Popup
(faceplate); layout.ps1 message updated
- deploy_displays.cmd / remove_displays.cmd for the 8 new displays
- Live-data Start runs C:\Users\Public\CI-Eng-Sample\feed\cieng_feed_start.cmd on the server
- Tested on CI Server R1.03.00 2026-10-06 (ADMIN with ?l=CIENG_Operator / jwuipoi -layout):
web layout, tabs, popup, faceplate navigation, combo write, server-side Start as CIX_PROCESS;
desktop layout, stretched tabs, Start/Stop
- Old CIENG_Tank / CIENG_Menu / CIENG_TrendLab still present (removed in the next stage)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- feed/cieng_feed.ps1: -Seconds (default, LEVEL +/-25 %), -UntilFlag (DEMO.FEED_ON for the
display Start/Stop), -Alarms (+/-33 %, crosses L/H), -System (SYSTEM.* items, skipped while
the monitoring processes run); single-copy lock; log in %TLS_LST_PATH%\cieng_feed.log
- feed/cieng_feed_start.cmd, feed/install_feed.ps1: installed to C:\Users\Public\CI-Eng-Sample\feed
(outside the CI Server package) for the server-side display command
- Item CI-Eng-Sample.DEMO.FEED_ON in 02_item_df.qli / 91_remove_item_df.qli
- Tested on CI Server R1.03.00 2026-10-06: default run, single copy, start wrapper with flag
stop, system items written and skipped with a monitor process present
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
## Summary
- `graphics/tasks/layouts.md` §6: tested reference of every `Layouts.xml` parameter for the Operator Interface (desktop) and the HTML display (web) — frames, window options, menu/toolbars/status line, all commands, popups/modal/maximumOpen, translations, debug key, tabs.
- New rules: web-compatible frame shape (one `n*` per frame set, nested frame set only in that slot), `type="check"` required for `toolbar`/`statusline`/`playback record` (else the desktop client does not start), profile initial display replaces `initialDisplay` of frame `default`, always set `title`.
- Issues ISS-062..067 (readme differences and web limits), progress row, skill index.
## Test plan
- [x] 5 rounds of test layouts (`LT_*`) in a marked block of `Layouts.xml`; desktop via `jwuipoi -layout <name>` with window captures/recorder, web via `?d=…&l=…` in the browser and the web client code (CI Server R1.03.00).
- [x] Launcher display `LT_Launcher` for layouts opened from a display.
- [x] Clean-up: test system restored to its pre-test state; `LT_Launcher` removed.
- [ ] Not tested: print orientation/margins, playback, second-screen positions, `maximumTabs` limit for new tabs.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Reviewed-on: cliu/ci-server-config#23
Co-authored-by: cliu <cliu@noreply.git.yokogawa.tech>
Co-committed-by: cliu <cliu@noreply.git.yokogawa.tech>