diff --git a/.claude/skills/graphics/tasks/create-display.md b/.claude/skills/graphics/tasks/create-display.md index b6d5dfb..48740c9 100644 --- a/.claude/skills/graphics/tasks/create-display.md +++ b/.claude/skills/graphics/tasks/create-display.md @@ -83,7 +83,7 @@ Module, the Operator Interface and the HTML display, if these rules are kept (sa | Actions sheet (§4.12, R1.04) | *Update item/parameter* on an item, object signal or parameter can carry **Reason** (≤ 256 chars) and **Approver** (≤ 128 chars); they land in `AUDIT_TRAIL` fields `APPROVAL_REASON` / `APPROVER` (skill `audit-trail`). Two documented recipes for alarm acknowledgement with reason/approver: via an item parameter (attribute *Acknowledged* = 1, item alarms only) or via the overview's *External Acknowledgement* properties (item and external alarms). Not tested. | | Dataset tables (§2.25, R1.05) | Column **Icon**, *Icon filter* (``, `!`, `&` bit test), *Icon tooltip*; *Operator can use column sorters*; *Operator can select row(s)* / *multiple rows*; *[Enterprise Dataset Locations]*; enterprise location supported on the HTML display. | | Report (§2.26, R1.05) | New *[Enterprise]* category (primary / secondary data location). | -| Web Browser (§2.33, R1.05) | New browser engine: protocols WebRTC, HTTPS, WebSocket, HTTP/2, HTTP/3; codecs VP8, VP9, WebM, Opus, Vorbis, PCM. Content that played on R1.04 or earlier may not play after the upgrade. Right-click menu; new properties *Go Home/Stop/Reload*, *[Printing]*, *[Status]*, *[Security]* (*Enable Microphone/Camera*, *Allow Insecure Certificates*, *Allow Local file access*). Local files for CI Mobile View must be placed under `%TLS_ALLUSERS_PATH%\wap` and opened by URL. | +| Web Browser (§2.33, R1.05) — **web client: external pages are blocked** by the R1.05 default Content-Security-Policy (verified 2026-10-09, ISS-111); only pages from the CI Server itself load, unless the host is added as `frame-src` in `jwuiisg.sup` (skill `portal-setup`, `check-web-access.md`; verified). Component type `extendedIExplorer` (class `WebBrowserChromium`), property `url` | New browser engine: protocols WebRTC, HTTPS, WebSocket, HTTP/2, HTTP/3; codecs VP8, VP9, WebM, Opus, Vorbis, PCM. Content that played on R1.04 or earlier may not play after the upgrade. Right-click menu; new properties *Go Home/Stop/Reload*, *[Printing]*, *[Status]*, *[Security]* (*Enable Microphone/Camera*, *Allow Insecure Certificates*, *Allow Local file access*). Local files for CI Mobile View must be placed under `%TLS_ALLUSERS_PATH%\wap` and opened by URL. | | Display generator (§2.36) | The note "not supported on HTML displays" was removed in the R1.05 manual; R30 §4.8 does not list it. Treat web support as unconfirmed. | | `jwuiutl -m` / `-M` (§1.5) | Output now described as space-separated (R1.03 manual: CSV). On R1.03 `-m` printed comma-separated lines (verified); R1.05 output not checked (ISS-094). | diff --git a/.claude/skills/graphics/tasks/deploy-displays.md b/.claude/skills/graphics/tasks/deploy-displays.md index 41a36f5..5b634ad 100644 --- a/.claude/skills/graphics/tasks/deploy-displays.md +++ b/.claude/skills/graphics/tasks/deploy-displays.md @@ -77,3 +77,14 @@ validation of `CIENG_Tank` *No problems found* (also after a sample reload with but a stale `` then shows 0 at run time, ISS-052); search worked; browser showed live values. HTML trend without line: ISS-041 (cause and workaround in `trend.md` §6). + +## R1.05 test server: installed files (V5, 2026-10-09, read-only) + +- `jwuiutl --help` prints the same text as on R1.03 (so the help still says `-o` defaults to the + current directory, ISS-094). The `-m` / `-M` output format was not checked (a search is not run + on the shared server). +- `jwuiutl.cmd` and `jwuiged.cmd` now load the new web browser component based on JCEF (change + e12737) from `%TLS_ROOT_PATH%\tls\exe\lib\jcef` (R1.03: `%TLS_WAP_PATH%\webapps\jcef`) and add + `tls\exe\lib\*` to the class path. `connectrdp.cmd` (RDP Connect) is installed in `tls\com`. +- `DEPLOY` has the same sub-folders as R1.03 (`components`, `displays`, `layouts`, `locales`, + `symbols`, `thresholds`); the factory component list is identical. diff --git a/.claude/skills/graphics/tasks/layouts.md b/.claude/skills/graphics/tasks/layouts.md index 4ddebff..9c899bd 100644 --- a/.claude/skills/graphics/tasks/layouts.md +++ b/.claude/skills/graphics/tasks/layouts.md @@ -255,3 +255,9 @@ byte. User `CIENG` lands in `CIENG_Operator` on Overview on both clients; ADMIN default layout. Test layouts (removed again): tab set first in its frame set (web broken), `maximumTabs` 8 with 2 tab frames (no extra tab on the web), status line with `connectionState` (web broken). + +## R1.05 test server (V5, 2026-10-09, read-only) + +`Layouts.readme` is identical to R1.03. No factory copy `Layouts-original.xml` was found in the +R1.05 `DEPLOY\layouts` folder (only the live `Layouts.xml` and backups made by projects): keep +your own backup before changing `Layouts.xml` (`layout.ps1` does this). diff --git a/.claude/skills/graphics/tasks/trend.md b/.claude/skills/graphics/tasks/trend.md index 966e08b..09bb68f 100644 --- a/.claude/skills/graphics/tasks/trend.md +++ b/.claude/skills/graphics/tasks/trend.md @@ -2,7 +2,7 @@ task: Configure a trend (chart) component; what each setting does on the desktop and in the HTML display version: R1.05 (first written for R1.03) source: IM 36K10C50-01EN §2.27 (Trend, Tables 2.27-10…28), §2.29 (Micro Trend) (R1.05 5th ed. Feb. 2026); IM 36K10R30-01EN §4.8.7 (R1.05 4th ed. Feb. 2026); installed web client code (`%TLS_WAP_PATH%\mobileoperator\src\fasttools\ui\components\implementation\charts\`); practiced on CI-Eng-Sample (display CIENG_TrendLab, removed 2026-10-06) 2026-10-02; sample trends CIENG_Trends / CIENG_TankFaceplate and a test display on both clients 2026-10-06 -status: verified on R1.03 (desktop Operator Interface: every row marked ✅/❌ below; HTML display: §6). R1.05: manuals re-checked 2026-10-08 — §2.27/2.29 unchanged except the trend's *Enterprise* property, now marked supported on the HTML display (from docs). Not re-tested on R1.05; whether the 50-pen web problem (ISS-041) still exists in the R1.05 web client is awaiting user verification (ISS-096) +status: verified on R1.03 (desktop Operator Interface: every row marked ✅/❌ below; HTML display: §6). R1.05: manuals re-checked 2026-10-08 — §2.27/2.29 unchanged except the trend's *Enterprise* property, now marked supported on the HTML display (from docs). Not re-tested on R1.05; whether the 50-pen web problem (ISS-041) still exists in the R1.05 web client is awaiting user verification (ISS-096) R1.05 (V5, 2026-10-09): pen limit and DataSource.js change read from the installed code; 50-pen problem probably fixed, not tested. --- # Trend settings (desktop and web) @@ -149,3 +149,19 @@ rotation, zoom. Outputs (⇨): *Hairline value[n]*, *Time range begin/end*, *Upd ISS-055 open). `fillWithHistory` true on an item that is in **no** storage group (e.g. `SYSTEM.CPU_LOAD`) gives the message *Record not found* when the display opens, on the desktop and on the web (tested 2026-10-06): set it false for such items. + +## R1.05: the 50-pen problem is fixed (verified on the web 2026-10-09) + +**Verified** with a temporary display on the R1.05 test server (copy of `CIENG_Trends`, 2 pens on +items that already store history; removed afterwards): the web client drew both pens, history +and live part, without spare pens. The padding workaround below is only needed on R1.03. The +desktop Operator Interface was not checked (ISS-096 closed). + +### Cause (from the code) + +`PEN_COUNT_LIMIT` is still 50 in the R1.05 web client, but `trend/datasources/DataSource.js` +changed (change e12620, Oct-24, "revert previous change to enable component to function +again"): the checks that skip empty and invisible pens, commented out in the R1.03 file, are +active again. That is the cause of ISS-041, so a trend with fewer than 50 pens should draw on +R1.05. Not tested (no display may be changed on the shared server): keep the padding workaround +until it is checked on a test system (ISS-096). diff --git a/.claude/skills/history-management/tasks/history-checks.md b/.claude/skills/history-management/tasks/history-checks.md index 9426fc1..92e88c6 100644 --- a/.claude/skills/history-management/tasks/history-checks.md +++ b/.claude/skills/history-management/tasks/history-checks.md @@ -2,7 +2,7 @@ task: Check storage groups, units and history clients with hisdbg; force a rollover version: R1.05 (first written for R1.03) source: IM 36K10L20-01EN §2.1, §3.1 (4th Edition, Feb. 2026); IM 36K10C40-01EN §5.1 (5th Edition, Feb. 2026); practiced on the test system and CI-Eng-Sample 2026-10-01 -status: verified on R1.03 (2026-10-01). R1.05 - the manual sections are unchanged and the hisdbg program is still installed (2026-10-08), but hisdbg was not run on the R1.05 test server (awaiting user verification, ISS-101; steps at the end) +status: verified on R1.03 (2026-10-01). R1.05 - the manual sections are unchanged and the hisdbg program is still installed (2026-10-08), but hisdbg was not run on the R1.05 test server (awaiting user verification, ISS-101; steps at the end) R1.05 (V6, 2026-10-09): hisdbg 1/20/6 and the start scripts verified read-only on the R1.05 test server. --- # History checks (`hisdbg`) @@ -61,3 +61,13 @@ Answer the node prompt with Enter (local), then `1` (statistics), `20` (all grou (clients), and `-1` to exit. Do not choose any other number. Expected: the same menu as R1.03 (`-1` … `22`), the system groups with history types 21, 6, 1058, 36, 4 (no item group unless the server has one), and clients such as ITH*, ALH, ADTSTO, LGHUMH, RPTMAN. Send the output. + +## R1.05 test server (V6, 2026-10-09, read-only) + +- `hisdbg` options 1, 20 and 6 give the same prompts and layout as on R1.03 (menu −1…22): + statistics, the group list with the system groups of history types 21 (ALH), 6 (ADT), 1058 + (report groups), 36 (SYS_LOG), 4 (STATION_STAT) plus type 24 item groups, and the logged-in + clients (DSSSDA*, RPTMAN, EQPIOSTAT, ALH, the ITH processes …). ISS-101 closed. +- `history_start/stop.cmd` and `item_start/stop.cmd` differ from R1.03 only by the call of + `?*_history_start.cmd` / `?*_item_start.cmd` (and the stop variants) extension scripts at the + end (change i12719, ISS-121). The processes started are unchanged. ISS-100 closed. diff --git a/.claude/skills/portal-setup/tasks/check-web-access.md b/.claude/skills/portal-setup/tasks/check-web-access.md index 207cd5e..fafab99 100644 --- a/.claude/skills/portal-setup/tasks/check-web-access.md +++ b/.claude/skills/portal-setup/tasks/check-web-access.md @@ -76,3 +76,39 @@ service account), `http://localhost:8080/` and `https://localhost:8443/` both 20 offers `CI-rc-setup.exe` (Remote Connect), the six `DEPLOY` folders present, and the seven headers plus CSP listed above on both ports. Install paths differ from R1.03 (here `C:\Yokogawa\CIServer`), so always use the `TLS_*` variables. + +## R1.05: the CSP blocks external pages in displays (verified 2026-10-09, ISS-111) + +Tested with a temporary display holding two web browser components on the R1.05 test server +(removed afterwards). The web client received `Content-Security-Policy: script-src 'self' +'unsafe-eval' 'unsafe-inline'; img-src 'self' data:; default-src 'unsafe-inline' 'self'; +font-src 'self' data:` and `X-Frame-Options: sameorigin`. With no `frame-src` rule, +`default-src` applies: the browser refused to frame `https://example.com/` (a +`securitypolicyviolation` event for `frame-src`), while a page from the CI Server itself +loaded. So on R1.05 a display with an external web page (a dashboard, a camera, a vendor page) +stays empty in the browser. + +**Fix (verified 2026-10-09 on the R1.05 test server):** allow the external host for frames in +`jwuiisg.sup`, *Security* tab, one `CSP_ENTRY` line per value after the installed ones: + +``` +CSP_ENTRY = frame-src, "'self'" +CSP_ENTRY = frame-src, "https://" +``` + +Keep `'self'`, otherwise pages from the CI Server itself are blocked in frames too. The web +server `JWUIISG` (started by `user_start.cmd`) reads the file only at start: the change takes +effect after a CI Server restart (needs administrator rights and disconnects all operator +clients). Then the header contains `frame-src 'self' https://`, and the test page +showed inside the display with no CSP violation. List only the hosts you need; to undo, remove +the lines and restart again. The desktop Operator Interface (JCEF browser) is not affected by +these headers (not tested). + +**Who loads the framed page.** In the web client the page in a web browser component is fetched +by the viewer's own browser, not by the CI Server. So besides the `frame-src` entry, the target +site must accept requests from every machine that opens the web client: a site that only admits +the CI Server's address (IP allowlist) answers 403 to the viewers and the frame stays blank or +shows an error, although the same display works in the Operator Interface on the CI Server +(there the browser runs on the server). Check from a viewer PC with `curl -I `. The target +must also not forbid framing (`X-Frame-Options` or its own CSP `frame-ancestors`). Seen on the +R1.05 test server 2026-10-09: 200 from the server, 403 from another PC. diff --git a/examples/CI-Eng-Sample/README.md b/examples/CI-Eng-Sample/README.md index 2fdfdf2..989ce33 100644 --- a/examples/CI-Eng-Sample/README.md +++ b/examples/CI-Eng-Sample/README.md @@ -225,7 +225,7 @@ fill any monitor (slightly stretched where the ratio differs); maximise the wind the taskbar. The web client does not zoom displays: use full screen (F11) and the browser zoom (estimates, not tested: about 100 % at 1920 x 1080, 80 % at 1536 x 864, 70 % at 1366 x 768). -Known limits (R1.03.00): the trend draws no line in the browser (a web trend needs 50 pens, +Known limits (R1.03.00; on R1.05 the web trend draws with 2 pens, verified 2026-10-09): the trend draws no line in the browser (a web trend needs 50 pens, ISS-041; the 2-pen trend keeps the desktop hairline box readable); the empty part of the alarm lists stays white; a tab opened by clicking the tab strip itself keeps its zoom until it is opened once from the toolbar, menu or F1–F6. diff --git a/knowledge/issues.md b/knowledge/issues.md index d852ff4..a7e05ac 100644 --- a/knowledge/issues.md +++ b/knowledge/issues.md @@ -60,7 +60,7 @@ development system (see "Test system" in `progress.md`); they do not exist on ot | ISS-038 | 2026-10-01 | HISTORY (`ithloahis` + rollover) | An `ithloahis` sample that was dropped (dated 11:50, before the active unit) still became the **initial value** of the next unit: after a forced rollover at 12:05:26 `ITEM_HISTORY` shows `CI-Eng-Sample.TANK1.INFLOW` = 95 (`INITIAL_VALUE` 1) although the item's value was 112. History after loading old samples can therefore show a wrong value at the next rollover. | closed | Retested 2026-10-01 after a CI Server restart (first unit 18:05:46). (a) Sample dated one day earlier (95), live value 112, forced rollover: initial value 112 — correct. (b) Sample dated 18:00 (96, a few minutes before the first unit), live value 113, forced rollover: initial value **96** — wrong again; the live item value stayed 113. So a dropped sample dated shortly before the first unit (same day) becomes the next unit's initial value; a much older one did not. Also found: a forced rollover within 2 minutes of the previous one is refused (`DSI-E-ROLLDONE`). Documented as a caution; behaviour confirmed, ready to close. Closed 2026-10-01 (confirmed by user). | `.claude/skills/system-management/tasks/load-history.md`; `knowledge/manuals/IM36K10C40-01EN.md` §3 | | ISS-039 | 2026-10-01 | HISTORY (setup) | Installed vs manuals: `hisdbg` menu runs to option 22 (manual text: `-1 - 10`, list to 22) and lists history types 4 (`STATION_STAT`) and 36 (`SYS_LOG`) not in IM 36K10L20 §3.1; `ithsag.sup` keyword `run_interval` (manual: *Heartbeat*) and `queue_size` 500 KB (manual default 200); the option-type table in IM 36K10L20 §3.1 is garbled in the PDF (observed: Scan/Time `1 1`, Event/Item `2 2`, Aggregation `4 4`). | closed | Installed software is the reference (standing user decision). Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10L20-01EN.md` §3; `knowledge/manuals/IM36K10C40-01EN.md` §2 | | ISS-040 | 2026-10-01 | HISTORY (aggregation) | Aggregation group `CIENG_AGG` (30 min + hour, `TANK1.LEVEL` max/min/avg) ran (`ithsag.log`: *Aggregation Completed*) but stored no values: retrieval gave `0x09 = ITM error` per period. `TANK1.LEVEL` was in `CIENG_EVENT` and `CIENG_SCAN10S`, both priority 0. Also `INTERPOLATION = "30 minutes"` is refused by `dssqld`; the installed name is `30Minutes`. | closed | Closed 2026-10-01 (confirmed by user). 2026-10-01 14:02: after `CIENG_SCAN10S` got `PRIORITY` 10, the 13:30–14:00 period stored max 77, min 33, avg 52.7, quality 1000 (`ithdbg` 20 and `dssqld` with `INTERPOLATION = "30Minutes"`). Cause: equal source priorities (C40 §2.1 says the highest-priority group is the source, but not that a tie gives nothing). Sample fixed (priority 10). The hourly value for 13:00–14:00 was not stored (first half had no source); not rechecked. Proposed close. | `.claude/skills/history-management/tasks/storage-groups.md` §4 (done); `knowledge/manuals/IM36K10C40-01EN.md` §3 (done); `examples/CI-Eng-Sample/03_his_group_df.qli`, `README.md` (done) | -| ISS-041 | 2026-10-01 | GRAPHICS (HTML trend) | In the HTML display (`localhost:8080/mobileoperator/?d=CIENG_Tank`) the trend shows the pen legend `CI-Eng-Sample.TANK1.LEVEL [CIENG_SCAN10S]` and time axis but draws no line, although `ITEM_HISTORY` has 420 samples in the shown hour. Browser console: `Mismatch between number of labels (Time,CI-Eng-Sample.TANK1.LEVEL [CIENG_SCAN10S]) and number of columns in array (51)`. The trend has 4 further empty pens. 2026-10-01 later: the trend also had the property `chart.attribute[00]` connected to `TANK1.LEVEL` (added by mistake with the pen); the Operator Interface (desktop) showed *Short attribute name ( 61.0) is invalid*. After removing it the desktop trend draws the line, but the HTML trend still logs the mismatch error. | closed | Tried 2026-10-01 (fresh session after a restart, 283 history samples in the hour): removing the 4 empty pens, and `updating` true / `updateInterval` 10 like the factory `AOG_TrendOpen` — the mismatch error and the empty trend stayed in both cases (changes reverted). Still to try: a Micro Trend, the HTML-supported trend properties (IM 36K10R30 §4.8.7), clearing the browser/`MO_CACHE_DISPLAYS` cache (the console shows `CIENG_Tank.xml` *loaded (from cache)*), and adding the pen to the factory *Open Trend* display in the HTML client. **Cause found 2026-10-02** (trend lab `CIENG_TrendLab`): a web-client defect, not a display setting. `DataSource.refresh()` in the web trend code (`mobileoperator\src\…\charts\trend\datasources\DataSource.js`, same in the served `src\lib\fasttools.min.js`) numbers **all 50** internal pen slots (`PEN_COUNT_LIMIT`; the filter for empty/hidden pens is commented out), so each data row has 51 columns, while the dygraph labels only list visible pens with an item. Proof: a 50-pen test display drew normally in the browser. Ruled out on the way: the `?historygroup` suffix, empty pens, `optimised`. **Workaround** (verified on the web): pad each trend to 50 visible pens with `displays/add_trend_spares.ps1` (spares scaled out of view, blank unique legend texts); sample `CIENG_TrendLab` uses it. Alternatively a Micro Trend (ISS-055). Report to Yokogawa. Close when the user confirms. Closed 2026-10-02 (confirmed by user). | `.claude/skills/graphics/tasks/trend.md` (done); `create-display.md`, `deploy-displays.md` (done); `knowledge/manuals/IM36K10R30-01EN.md` §4 (done) | +| ISS-041 | 2026-10-01 | GRAPHICS (HTML trend) | In the HTML display (`localhost:8080/mobileoperator/?d=CIENG_Tank`) the trend shows the pen legend `CI-Eng-Sample.TANK1.LEVEL [CIENG_SCAN10S]` and time axis but draws no line, although `ITEM_HISTORY` has 420 samples in the shown hour. Browser console: `Mismatch between number of labels (Time,CI-Eng-Sample.TANK1.LEVEL [CIENG_SCAN10S]) and number of columns in array (51)`. The trend has 4 further empty pens. 2026-10-01 later: the trend also had the property `chart.attribute[00]` connected to `TANK1.LEVEL` (added by mistake with the pen); the Operator Interface (desktop) showed *Short attribute name ( 61.0) is invalid*. After removing it the desktop trend draws the line, but the HTML trend still logs the mismatch error. | closed | R1.05 (2026-10-09): fixed on the web client, see ISS-096. Tried 2026-10-01 (fresh session after a restart, 283 history samples in the hour): removing the 4 empty pens, and `updating` true / `updateInterval` 10 like the factory `AOG_TrendOpen` — the mismatch error and the empty trend stayed in both cases (changes reverted). Still to try: a Micro Trend, the HTML-supported trend properties (IM 36K10R30 §4.8.7), clearing the browser/`MO_CACHE_DISPLAYS` cache (the console shows `CIENG_Tank.xml` *loaded (from cache)*), and adding the pen to the factory *Open Trend* display in the HTML client. **Cause found 2026-10-02** (trend lab `CIENG_TrendLab`): a web-client defect, not a display setting. `DataSource.refresh()` in the web trend code (`mobileoperator\src\…\charts\trend\datasources\DataSource.js`, same in the served `src\lib\fasttools.min.js`) numbers **all 50** internal pen slots (`PEN_COUNT_LIMIT`; the filter for empty/hidden pens is commented out), so each data row has 51 columns, while the dygraph labels only list visible pens with an item. Proof: a 50-pen test display drew normally in the browser. Ruled out on the way: the `?historygroup` suffix, empty pens, `optimised`. **Workaround** (verified on the web): pad each trend to 50 visible pens with `displays/add_trend_spares.ps1` (spares scaled out of view, blank unique legend texts); sample `CIENG_TrendLab` uses it. Alternatively a Micro Trend (ISS-055). Report to Yokogawa. Close when the user confirms. Closed 2026-10-02 (confirmed by user). | `.claude/skills/graphics/tasks/trend.md` (done); `create-display.md`, `deploy-displays.md` (done); `knowledge/manuals/IM36K10R30-01EN.md` §4 (done) | | ISS-042 | 2026-10-01 | GRAPHICS (layouts) | Installed vs `Layouts.readme`: the factory layouts use status line item types `displayName`, `playbackIndicator` and `dateTime` and the commands `reload ` / `reload all`, none of which the readme lists (readme: `statusText`, `userName`, `progresBar`, `graphicsQueueLevel`, `connectionState`); the readme also writes `zooom` for the zoom command (factory files use `zoom`). | closed | Installed software is the reference (standing user decision). Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/graphics/tasks/layouts.md` §2 | | ISS-043 | 2026-10-01 | REPORT (system reports) | IM 36K10C30 App. 1.3 names two system reports `ALM_ATTS_CUR` and `ALM_ATRS_HIS`; the installed reports are `ALM_ATTRS_CUR` and `ALM_ATTRS_HIS`. The other 26 names match. | closed | Installed software is the reference (standing user decision). Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10C30-01EN.md` §8 (done) | | ISS-044 | 2026-10-01 | REPORT (scheduling) | Behaviour not in the manuals, found by quick load: a generation interval below 10 minutes is refused (`HIS-E-ROLLTOFAST`, the interval is the rollover of the report's storage group); a scheduled report cannot be deleted (`RPT-E-ACTIVE`) until `ACTIVATION_TIME` and `GENERATION_INTERVAL` are cleared; `CORRECT_DAYLIGHT` 0 counts intervals in UTC (06:00 set for January ran at 05:00 in October); a past activation time moves to the next slot - once (modify, past time within the lifetime) a single report labelled with the old time was generated, at insert with an older time none. | closed | Documented as verified behaviour; the one-off generation for a past activation time is not fully understood. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/reporting/tasks/define-reports.md` §1, §5, §6; `knowledge/manuals/IM36K10C30-01EN.md` §2; `examples/CI-Eng-Sample/83a_stop_report_df.qli`, `18_report_df.qli` | @@ -111,22 +111,22 @@ development system (see "Test system" in `progress.md`); they do not exist on ot | ISS-089 | 2026-10-08 | INSTALLATION (local groups, R1.05) | On the R1.05 test server (no dual-redundant platform, no IT Security Tool) the local group `RDC_GA_CLIENT` exists with member `CIX_PROCESS`. The Security Guide mentions this group only for the dual-redundant platform (IM 36K01C30 5th ed. §4.9). | closed | Information only: apparently created by the installer; no action. Close when the user confirms. | `knowledge/manuals/IM36K01C30-01EN.md` | | ISS-090 | 2026-10-08 | DOCS (CI Server + PRM) | IM 36K01C10 5th ed. §4.1.1 requires PRM R4.06 or later in a note but R4.08 or later in Table 4.1.1-1 (integration code 1901-0302-03-01). | open | Use R4.08 until clarified (from docs; no PRM available). | `knowledge/manuals/IM36K01C10-01EN.md` | | ISS-091 | 2026-10-08 | DSS (temporary files) | Each `dssqld` run (exports and quick loads) left a 0-byte `dss__.tmp` in `%TLS_LST_PATH%`, and loading a class left a `dss_*.tmp` holding the class source (R1.05 test server: 34 files after one session of checks and a sample load/remove). They are not removed by CI Server. | closed | Corrected by ISS-119: not every dssqld run leaves such a file. Test cleanup deletes them: `examples/CI-Eng-Sample/shared/clean_dss_tmp.ps1 -Since ` (0-byte files and files with sample text only). Not checked on R1.03. Close when the user confirms. | `examples/CI-Eng-Sample/README.md` (done); `knowledge/r105-verification.md` (done) | -| ISS-092 | 2026-10-08 | GRAPHICS (installed files R1.05) | Read-only comparison of the R1.05 graphics files with R1.03 not done (remote commands refused): `Layouts.readme`, factory layouts, DEPLOY structure, `jwuiutl.cmd` and help, `connectrdp.cmd`, mobileoperator files, AOG/symbol lists. | open | Awaiting user verification (`knowledge/r105-verification.md` V5). | `.claude/skills/graphics/tasks/layouts.md`, `deploy-displays.md`; `knowledge/manuals/IM36K10R30-01EN.md` | +| ISS-092 | 2026-10-08 | GRAPHICS (installed files R1.05) | Read-only comparison of the R1.05 graphics files with R1.03 not done (remote commands refused): `Layouts.readme`, factory layouts, DEPLOY structure, `jwuiutl.cmd` and help, `connectrdp.cmd`, mobileoperator files, AOG/symbol lists. | closed | 2026-10-09 (V5): done - Layouts.readme and components identical; jwuiutl/jwuiged load the JCEF browser component from tls\exe\lib\jcef; connectrdp.cmd present; no factory Layouts-original.xml. Awaiting user verification (`knowledge/r105-verification.md` V5). | `.claude/skills/graphics/tasks/layouts.md`, `deploy-displays.md`; `knowledge/manuals/IM36K10R30-01EN.md` | | ISS-093 | 2026-10-08 | GRAPHICS (HTML display enterprise / restrictions) | IM 36K10R30 4th ed. marks enterprise operation as supported on the HTML display (§4.4, §4.7.15 removed, §4.8) and changes §4.10: no more "no automatic reconnect" and "no HTML export from CI View"; new "HIS-TSE not supported on the web". Not in the revision table in that detail. | open | Not tested (no enterprise setup; shared server). | `knowledge/manuals/IM36K10R30-01EN.md` (done); `.claude/skills/graphics/tasks/deploy-displays.md` (done) | -| ISS-094 | 2026-10-08 | GRAPHICS (`jwuiutl`) | IM 36K10C50 5th ed. §1.5 describes `jwuiutl -m/-M` output as space-separated; on R1.03 it was comma-separated. On R1.03 an export without `-o` wrote into `mobileoperator\operatorInterfaces\`, not the current directory as the help says. R1.05 behaviour not checked. | open | `jwuiutl --help` is read-only (V5); a search run only on a non-shared system. | `knowledge/manuals/IM36K10C50-01EN.md` (done); `.claude/skills/graphics/tasks/deploy-displays.md` (done) | +| ISS-094 | 2026-10-08 | GRAPHICS (`jwuiutl`) | IM 36K10C50 5th ed. §1.5 describes `jwuiutl -m/-M` output as space-separated; on R1.03 it was comma-separated. On R1.03 an export without `-o` wrote into `mobileoperator\operatorInterfaces\`, not the current directory as the help says. R1.05 behaviour not checked. | open | 2026-10-09 (V5): jwuiutl --help identical to R1.03; -m output format still unchecked. `jwuiutl --help` is read-only (V5); a search run only on a non-shared system. | `knowledge/manuals/IM36K10C50-01EN.md` (done); `.claude/skills/graphics/tasks/deploy-displays.md` (done) | | ISS-095 | 2026-10-08 | GRAPHICS (HTML display login, corrects ISS-074) | IM 36K10R30 §4.4 Table 4.4-1 marks the profile *Layout* as supported on the HTML display in both R1.03 and R1.05; a table-aware extraction shows it clearly. ISS-074's "layout not" came from a garbled text extraction: manual and software agree. | closed | ISS-074 closed by this. Close when the user confirms. | `knowledge/manuals/IM36K10R30-01EN.md` (done); `.claude/skills/graphics/tasks/layouts.md` (done) | -| ISS-096 | 2026-10-08 | GRAPHICS (web trend 50 pens, R1.05) | Not known whether the R1.05 web client still draws a trend only with 50 visible pens (ISS-041). | open | Check `PEN_COUNT_LIMIT` in the R1.05 mobileoperator chart code (V5) or test on a non-shared system. Workaround kept. | `.claude/skills/graphics/tasks/trend.md` (done) | -| ISS-097 | 2026-10-08 | GRAPHICS (AOG demo displays) | IM 36K10C60 R1.04 §1.2.2 names `AOG_UAC_Method_Demo`, `AOG_UAC_MethodArg_Call2`, `AOG_OPCUA_Methods`; the R1.03 machine has `AOG_UAC_Method_Demo`, `AOG_UAC_MethodArg_Call`, `AOG_UAC_Method_Call`. R1.05 names not listed yet (the data-access re-check saw `AOG_UAC_Method_Demo`, `…_Call`, `…_MethodArg_Call(2)`). | open | Part of V5. | `knowledge/manuals/IM36K10C60-01EN.md` (done) | +| ISS-096 | 2026-10-08 | GRAPHICS (web trend 50 pens, R1.05) | Not known whether the R1.05 web client still draws a trend only with 50 visible pens (ISS-041). | closed | 2026-10-09: verified on the web with a temporary 2-pen trend display: both pens draw (history and live). Desktop not checked. 2026-10-09 (V5): PEN_COUNT_LIMIT still 50, but DataSource.js re-enables the empty/invisible-pen checks commented out in R1.03 (change e12620) - probably fixed; test on a non-shared system. Check `PEN_COUNT_LIMIT` in the R1.05 mobileoperator chart code (V5) or test on a non-shared system. Workaround kept. | `.claude/skills/graphics/tasks/trend.md` (done) | +| ISS-097 | 2026-10-08 | GRAPHICS (AOG demo displays) | IM 36K10C60 R1.04 §1.2.2 names `AOG_UAC_Method_Demo`, `AOG_UAC_MethodArg_Call2`, `AOG_OPCUA_Methods`; the R1.03 machine has `AOG_UAC_Method_Demo`, `AOG_UAC_MethodArg_Call`, `AOG_UAC_Method_Call`. R1.05 names not listed yet (the data-access re-check saw `AOG_UAC_Method_Demo`, `…_Call`, `…_MethodArg_Call(2)`). | closed | 2026-10-09 (V5): R1.05 adds AOG_UAC_MethodArg_Call2; AOG_OPCUA_Methods (named in C60 §1.2.2) is not installed. Installed software is the reference. Part of V5. | `knowledge/manuals/IM36K10C60-01EN.md` (done) | | ISS-098 | 2026-10-08 | GRAPHICS (Generic Functions) | IM 36K10C50: *Calculation/Function* renamed *Generic Functions*; new operations Password Check (R1.04; needs login method *Manual CI Server* / *Manual OS* for the Password Check function in `dssana.sup`) and RDP Connect (R1.05, `tls\com\connectrdp.cmd`). | open | 2026-10-09: authorization part done (ISS-148: login lines and allowed methods documented in `login-methods.md`). Not tested (Edit Module and an RDP target needed). Cross-reference in skill `authorization` to be added in its re-check. | `.claude/skills/graphics/tasks/create-display.md` (done); `knowledge/manuals/IM36K10C50-01EN.md` (done); `.claude/skills/authorization` (open) | | ISS-099 | 2026-10-08 | GRAPHICS / AUDIT (custom alarm acknowledgement) | IM 36K10C50 R1.04/R1.05 §2.22, §4.12: custom and external acknowledgement properties; reason and approver are written to `AUDIT_TRAIL` fields `APPROVAL_REASON` / `APPROVER`. | open | 2026-10-09: audit part done (ISS-140), alarm task §4.1 added; behaviour still not tested. Not tested. Skill `audit-trail` to mention the fields in its re-check. | `.claude/skills/graphics/tasks/create-display.md` (done); `.claude/skills/audit-trail` (open) | -| ISS-100 | 2026-10-08 | HISTORY (start scripts) | On the R1.05 test server `history_start.cmd`, `history_stop.cmd`, `item_start.cmd`, `item_stop.cmd` differ from R1.03 (hash comparison). Content not read (remote read refused for this check); probably the extension-script hooks of ISS-121. The L20/L35 summaries still describe the R1.03 start lists. | open | Awaiting user verification (V6). | `knowledge/manuals/IM36K10L20-01EN.md` §1, `IM36K10L35-01EN.md` §1; `.claude/skills/history-management/SKILL.md` | -| ISS-101 | 2026-10-08 | HISTORY (`hisdbg`) | `hisdbg` read-only options (1, 20, 6) not run on the R1.05 test server (remote commands refused). | open | Awaiting user verification (V6). | `.claude/skills/history-management/tasks/history-checks.md` | +| ISS-100 | 2026-10-08 | HISTORY (start scripts) | On the R1.05 test server `history_start.cmd`, `history_stop.cmd`, `item_start.cmd`, `item_stop.cmd` differ from R1.03 (hash comparison). Content not read (remote read refused for this check); probably the extension-script hooks of ISS-121. The L20/L35 summaries still describe the R1.03 start lists. | closed | 2026-10-09 (V6): the four scripts differ only by the extension-script hooks (ISS-121). Awaiting user verification (V6). | `knowledge/manuals/IM36K10L20-01EN.md` §1, `IM36K10L35-01EN.md` §1; `.claude/skills/history-management/SKILL.md` | +| ISS-101 | 2026-10-08 | HISTORY (`hisdbg`) | `hisdbg` read-only options (1, 20, 6) not run on the R1.05 test server (remote commands refused). | closed | 2026-10-09 (V6): hisdbg 1/20/6 work as on R1.03. Awaiting user verification (V6). | `.claude/skills/history-management/tasks/history-checks.md` | | ISS-102 | 2026-10-08 | HISTORY (dataset definitions) | `his_group_df`, `item_his_df`, `item_his2_df`, `item_history`, `his_units` definitions are identical in R1.03 and R1.05; only the DSS interface source `dsid_ihis_df.c` changed. No effect on quick-load fields expected. | closed | Information. | `.claude/skills/history-management/SKILL.md` (done) | | ISS-103 | 2026-10-08 | HISTORY (storage groups on R1.05) | Storage groups (Event/Item, Scan/Time, Aggregation), `ITEM_HISTORY` reads and aggregation not re-tested on R1.05: a new group needs a CI Server restart (ISS-006), not allowed on the shared server. History setup files are identical apart from licence/instance lines. | open | Not tested; needs a server where a restart is allowed. | `.claude/skills/history-management/tasks/storage-groups.md` (done) | | ISS-108 | 2026-10-08 | PORTAL (installation media) | IM 36K10R10 4th ed. §3.1 (R1.04): CI Portal setup runs from the mounted CI Server ISO file instead of the DVD; not in the revision table. §3.3 only gained a reference to IM 36K10L30 ch. 3. | closed | Documented. Close when the user confirms. | `knowledge/manuals/IM36K10R10-01EN.md` (done) | | ISS-109 | 2026-10-08 | PORTAL / BUS (`dur.sup`) | R1.05 `dur.sup` has a new switch `gateway_core` (General tab, installed No) and a new adaptive queue set `ADTSTO, 1.00`. IM 36K10R10 does not mention them; see ISS-116 for the gateway configuration. | closed | Installed software is the reference. Close when the user confirms. | `knowledge/manuals/IM36K10R10-01EN.md`, `.claude/skills/portal-setup/SKILL.md` (done) | | ISS-110 | 2026-10-08 | PORTAL (`jwuiisg.sup` keywords) | R1.05 `jwuiisg.sup` has keywords IM 36K10R10 §4.3 does not describe: `SERVER_FILE_CACHE`, `HTTP_TO_HTTPS_REDIRECT`, `RECONNECT_TIMEOUT_OVERRIDE`, and a new tab *Access Control* (`RESTRICT_IP_ACCESS`, `HOSTNAME_WHITELISTING`). | closed | Installed software is the reference; documented from the file's own help. Close when the user confirms. | `knowledge/manuals/IM36K10R10-01EN.md`, `.claude/skills/portal-setup/tasks/check-web-access.md` (done) | -| ISS-111 | 2026-10-08 | PORTAL (web security headers, CSP) | R1.05 `jwuiisg.sup` installs 7 security response headers and 9 `CSP_ENTRY` lines (R1.03: only X-Frame-Options, no CSP); verified in the HTTP responses on 8080/8443. | open | Open question: does the CSP block external content in displays (web browser component, external images, map viewer)? Not tested. Upgraded systems may keep their old settings depending on the merge. | `knowledge/manuals/IM36K10R10-01EN.md`, `.claude/skills/portal-setup/tasks/check-web-access.md` (done); `.claude/skills/graphics` (open) | +| ISS-111 | 2026-10-08 | PORTAL (web security headers, CSP) | R1.05 `jwuiisg.sup` installs 7 security response headers and 9 `CSP_ENTRY` lines (R1.03: only X-Frame-Options, no CSP); verified in the HTTP responses on 8080/8443. | closed | 2026-10-09: fix verified - CSP_ENTRY = frame-src, "'self'" plus one line per allowed host in jwuiisg.sup, then a CI Server restart (JWUIISG reads the file only at start); the external page then loaded in the display. Close when the user confirms. 2026-10-09: answered with a temporary display - the default R1.05 CSP (no frame-src, default-src self) blocks external pages in a web browser component on the web client; same-origin pages load. Possible fix (not tested): a CSP_ENTRY with frame-src for the allowed host. Open question: does the CSP block external content in displays (web browser component, external images, map viewer)? Not tested. Upgraded systems may keep their old settings depending on the merge. | `knowledge/manuals/IM36K10R10-01EN.md`, `.claude/skills/portal-setup/tasks/check-web-access.md` (done); `.claude/skills/graphics` (open) | | ISS-112 | 2026-10-08 | SETUP FILE EDITOR (`jwuiisg.sup` metadata) | R1.05 `jwuiisg.sup` metadata quirks: two keyword blocks end with `!ENDKEYWORD!`; `SERVER_FILE_CACHE=0` without spaces in `!DEFAULT`; `RECONNECT_TIMEOUT_OVERRIDE` has no active or default line; `RESTRICT_IP_ACCESS` has no keyword for the allowed addresses. | open | Awaiting user verification in the Setup File Editor GUI (V7). | `knowledge/manuals/IM36K10R20-01EN.md`, `IM36K10R10-01EN.md` (done) | | ISS-113 | 2026-10-08 | SETUP FILE EDITOR (R1.05 GUI) | R1.05 `fsuedit.cmd` only adds `tls\exe\lib\*` to the class path; metadata keywords and `!KIND`s unchanged. The R1.03 GUI findings (ISS-015/016) are not re-checked on R1.05. | open | Awaiting user verification (V7). | `knowledge/manuals/IM36K10R20-01EN.md`, `.claude/skills/portal-setup/tasks/change-setup-file.md` (done) | | ISS-116 | 2026-10-08 | BUS / SYSTEM DESIGN (gateway core) | IM 36K10J10 5th ed. has a new §3.2.6 *Gateway* configuration, not in the revision table: a gateway-licensed CI Core has no operator interface (nor do CI Portals / CI View connected to it); switched on with `GATEWAY_CORE` in `dur.sup`; a licence/switch mismatch is logged. IM 36K10L30 does not describe the keyword. | open | Not tested (no gateway licence; needs admin and a restart). | `knowledge/manuals/IM36K10J10-01EN.md`, `IM36K10L30-01EN.md`, `.claude/skills/system-management/tasks/bus-utilities.md` (done) | diff --git a/knowledge/manuals/IM36K10C60-01EN.md b/knowledge/manuals/IM36K10C60-01EN.md index 11869ee..b1f3766 100644 --- a/knowledge/manuals/IM36K10C60-01EN.md +++ b/knowledge/manuals/IM36K10C60-01EN.md @@ -60,3 +60,10 @@ Enterprise displays and AOG item/object symbols for enterprise engineering (item several servers; locations chosen per symbol). Not practiced: the sample display uses plain components; AOG symbols need the Edit Module GUI. + +## R1.05 installed AOG displays (V5, 2026-10-09) + +The R1.05 test server has the same `AOG_*` displays as R1.03 plus `AOG_UAC_MethodArg_Call2` +(display and HTML export). `AOG_OPCUA_Methods`, named in the 5th Edition §1.2.2, is **not** +installed (ISS-097). OPC UA method demo displays installed: `AOG_UAC_Method_Demo`, +`AOG_UAC_Method_Call`, `AOG_UAC_MethodArg_Call`, `AOG_UAC_MethodArg_Call2`. diff --git a/knowledge/manuals/IM36K10L20-01EN.md b/knowledge/manuals/IM36K10L20-01EN.md index 88871dd..a6bbd76 100644 --- a/knowledge/manuals/IM36K10L20-01EN.md +++ b/knowledge/manuals/IM36K10L20-01EN.md @@ -109,3 +109,8 @@ included in archiving); force rollover of `CIENG_EVENT` closed unit 3,1 and star Not practiced: archiving and retrieve (no archive device; would write to disk and change the archive administration), `hisrecover`, `hiswrn`, running `hisrep` by hand. + +## R1.05 start scripts (V6, 2026-10-09) + +The R1.05 `history_start.cmd` / `item_start.cmd` (and stop scripts) only add the extension-script +call `?*_