45 KiB
Issue register
Open questions and problems found while building the repo.
Status: open · investigating · closed
Item and station names such as AID.* come from the author's own test project on the
development system (see "Test system" in progress.md); they do not exist on other systems.
How to close an issue
- Confirm the answer with the user (practiced on the test system where possible).
- Update every file in the issue's "Update on close" column with the answer.
- Update the matching row in
knowledge/progress.md(status and notes). - Set the issue to closed and write the resolution and date in "Next step / resolution". Keep closed issues in the table as history.
Issues
| ID | Date | Area | Issue | Status | Next step / resolution | Update on close |
|---|---|---|---|---|---|---|
| ISS-001 | 2026-09-30 | ITEM (itmval) |
Writing an item with itmval -p -n AID.WRPS.SIM.INFLOW -v 400 added the uoff option flag (options 0x…8a → 0x…8e). The flag stayed after writing the original value back. Meaning of uoff unknown; not found in the EN manuals by text search. |
closed | 2026-09-30 (phase 5): IM 36K10C10 §3.5 gives the option bits: 1 blocked, 2 offline, 4 updated offline (written by an application while offline), 8 acknowledged, 16 updated blocked, 32 direct alarm, 64 delayed alarm. 0x8a = offline + acknowledged (+0x80, not documented); +4 = 0x8e, so uoff = updated offline and ublk = updated blocked. Matches all observations. Not yet found: how to clear the flags (probably on the next update from the station). Closed 2026-09-30 (confirmed by user). Earlier notes: writing internal sample items (CI-Eng-Sample.*, no station) does not set uoff (options stay 0x…88), so it is tied to station-connected items (the AID item was already off, its station not communicating). Still to find: meaning and how to clear it (ITEM Service IM 36K10L35/L36, Engineering Module I/O Processes IM 36K10C10). Revisit in phase 5 with a station item. 2026-09-30 later: unblocking a sample item left the flag ublk (after blk was cleared), so u… flags may mean "was …" (un-blocked / un-offline). Still unconfirmed. |
.claude/skills/system-management/tasks/read-write-item.md (replace the uoff note under "Read the current value"); knowledge/progress.md row "Write an item with itmval -p" |
| ISS-002 | 2026-09-30 | DATABASE (dsschk) |
dsschk -d ITEM_DF -v (check only) exits 0 with no console output and nothing new in umhlog.log. Where results are reported is unknown. |
closed | Closed 2026-09-30 (confirmed by user). 2026-09-30: dsschk -e -v prints a start/end line per dataset (228 checked, no problems) and logs to umhlog.log. Plain dsschk only compares copies between nodes, so it prints nothing on a single-node system. ismchk needs a database file name (usage: ismchk data_base_name), not run yet. |
Create .claude/skills/system-management/tasks/consistency-check.md and add it to that skill's SKILL.md; knowledge/manuals/IM36K10J10-01EN.md §4.1.1 consistency tools (add where output goes); knowledge/progress.md row "Consistency check" |
| ISS-003 | 2026-09-30 | DATABASE (dssqld) |
Filtered export (dssqld -e <out> <filter>.qli) failed with a guessed filter syntax (@ITEM_DF, @FIELD, @SELECT). |
closed | Closed 2026-09-30 (confirmed by user). 2026-09-30: the quick load data format is now known and verified (@LANGUAGE, @VERSION, @FIELDS, @<DATASET>, quoted CSV records, \ continuation, ! comments; IM 36K10L45 §9.11). Filter syntax found (IM 36K10L50 §3.6) and practiced, awaiting confirmation: a file with @SELECT, then the filter in single quotes (strings in double quotes), then @<DATASET>; run dssqld -e <out> <filter>.qli. ITEM_HISTORY returns nothing unless the filter names ITEM_NAME and a SAMPLE_TIME range (SAMPLE_TIME > "dd-mm-yyyy hh:mm:ss" and SAMPLE_TIME < ...). |
.claude/skills/system-management/tasks/export-dataset.md section "Filtered exports"; knowledge/manuals/IM36K10J10-01EN.md §5.6 step 1; knowledge/progress.md row "Export a dataset" |
| ISS-004 | 2026-09-30 | ITEM (itmval) |
itmval -g -a <1..5> returns ITM-E-WRONG_ATT on AID.WRPS.* items, so reading limits is unproven. |
closed | Closed 2026-09-30 (confirmed by user). On CI-Eng-Sample.TANK1.LEVEL (limits set) -a 1..5 returned deadband 0, low 20, high 80, low-low 10, high-high 90. The error only occurs on items without limits. |
.claude/skills/system-management/tasks/read-write-item.md (limits section); knowledge/progress.md row "Read an item with itmval -g" |
| ISS-005 | 2026-09-30 | DATABASE (dssqld) |
Loading 04_item_his_df.qli straight after creating the storage group gave 2 errors once; three other runs were clean. Error text not captured. |
open | Added a 5 s pause in load.cmd. No recurrence since: every full sample reload in phases 6-12 (latest 2026-10-01) loaded 04_item_his_df.qli with 0 errors. Ready to close. |
examples/CI-Eng-Sample/load.cmd; .claude/skills/system-management/tasks/load-remove-records.md |
| ISS-006 | 2026-09-30 | HISTORY (ithloahis) |
Samples dated before the start of the current storage unit were not stored (no error shown); samples after it were. Also, a new storage group stored nothing until CI Server was restarted. | closed | Closed 2026-10-01 (confirmed by user). Confirm with History Management (IM 36K10L20) in phase 9: how to load into older units, and whether a restart is really required. 2026-09-30 (phase 5): IM 36K10L35 §1.3/§5 explains the first part: event storage picks the unit by time stamp, never older than 60 units, and within the storage process's gap_time (ITHEEX/ITHEIX 2880 min) and, for EVENT/ITEM, max_sample_delay (ITHEIX 14400 min); older data needs earlier unit files (hisdbg, hisrecover, isfrename), ithrecover <group> -p and a restart. Practice in phase 9. 2026-10-01 (phase 9, verified): (1) restart is required — CIENG_SCAN10S / CIENG_AGG loaded at 11:54 and CIENG_EVENT reloaded at 11:32 stored nothing until the 12:00 restart, then stored at once. (2) The first unit of a new Event/Item or Aggregation group is dated 2 days back (= gap_time 2880 min), but samples loaded into that pre-restart unit (11:50, 30-Sep) were still dropped; samples inside the active unit (12:02) and inside a unit closed by a forced rollover (12:03 into unit 3,1) were stored. So: samples older than the first unit opened since the restart are dropped silently. Loading older data would need hisrecover / isfrename / ithrecover (not practiced). Proposed close: documented in load-history.md and skill history-management. |
.claude/skills/system-management/tasks/load-history.md; examples/CI-Eng-Sample/README.md; knowledge/manuals/IM36K10J10-01EN.md command-line tools |
| ISS-007 | 2026-09-30 | INTEGRATION (monitoring) | intdskmon wrote 61.9 for a C: drive that is 61.9 % used / 38.1 % free, although the manual says it monitors the disk free space rate. intspawn did nothing when the command path was ~130 characters; a short path worked (limit unknown). |
open | Disk value: the test showed used % (61.9 on a 61.9 % used disk), and the task file says so; installed behaviour is the reference. intspawn path limit: not measured (needs admin edits of tls\sup\<name>.sup and restarts for each length); guidance kept: put the command in a .cmd with a short path (other CI Server tools cut paths at 79 characters, ISS-020). Ready to close. |
.claude/skills/system-management/tasks/monitoring-processes.md; knowledge/manuals/IM36K10J10-01EN.md §4.1.6; examples/CI-Eng-Sample/monitoring/ |
| ISS-008 | 2026-09-30 | ACCESS (ODBC server odbsrv) |
ci_start.log on the test system shows CppServerAPI::Run() failed: InitializeSslCtx(): SSL_CTX_use_certificate_chain_file() failed. right after ACCESS Service starts. Which component and certificate is not known. |
closed | Closed 2026-10-01 (confirmed by user): cause known, ODBC server left as is (not licensed/used on the test system). Identify in phase 7. 2026-10-01 (phase 7): cause found. The message comes from the ODBC server odbsrv (ACCESS Service, Simba): odbsrv.sup has USESSL = YES and access_start.cmd points it at %TLS_ROOT_PATH%\tls\pki\odbsrv\SampleServerCertificate.pem / SampleServerKey.pem, but that folder does not exist and no sample certificate is installed. odbsrv exits right after start (DUR-W-REM_PROC, Process ODBSRV exited unexpectedly), port 1583 does not listen. Fix (admin, only if ODBC is licensed and wanted): install a certificate + key there, or set USESSL = NO. Not applied. Close when the user confirms. |
.claude/skills/installation-security/tasks/setup-check.md; knowledge/manuals/IM36K10L45-01EN.md §1 (done); .claude/skills/data-access/tasks/access-checks.md (done) |
| ISS-009 | 2026-09-30 | Security Guide | DCOM port range printed as 20500–20550 in the firewall table but "2500–20550" in the OPC configuration table. Taken as a typo for 20500–20550. | closed | Confirm on a system with IT security applied. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K01C30-01EN.md §4 |
| ISS-010 | 2026-09-30 | ITEM (sub-items) | The Integrator sub-item adds value × seconds; setting TIME_UNIT = Hour made no difference (1 per second while the main item was 1). The Tutorial lists a time unit only for Rate-of-Change. | closed | 2026-09-30 (phase 5): IM 36K10C10 §3.2 and itm.sup answer it: the integral is divided by the integration granule itm_int_secs (label "Integration granule, sec.") in itm.sup — system-wide, installed value 1 (seconds); 60 = minutes, 3600 = hours. TIME_UNIT only applies to Rate-of-Change. Practiced 2026-09-30: set to 60 and restarted → CI-Eng-Sample.PUMP1.RUNNING.RUN_SECONDS rose exactly 1.0 in 60 s; restored to 1 (file identical to backup) → 8 in 8 s. Existing integrator values are not converted when the granule changes. Closed 2026-09-30 (confirmed by user). | examples/CI-Eng-Sample/02b_sub_item_df.qli; knowledge/manuals/IM36K10G10-01EN.md |
| ISS-011 | 2026-09-30 | ITEM (blocking) | A write to a blocked item with itmval -p (without -o) is silently ignored: no error message, value unchanged. | closed | Tested 2026-10-01 (phase 12 issue review): nothing signals it. itmval -p on a blocked item exits with code 0 and prints nothing; dssqld -m on ITEM_VAL.ITEM_VALUE reports Modified 1, Errors 0; the value stays unchanged in both cases. Only the blk option flag (itmval -g) shows the item is blocked. Documented: check blk before writing. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | .claude/skills/system-management/tasks/read-write-item.md |
| ISS-012 | 2026-09-30 | CI Portal setup files | IM 36K10R10 §4.4 names the alarm item/display relation setup file wfla_displays.sup; the installed file is wfla_display.sup (no s). | closed | Closed 2026-09-30 (user decision: the installed software and files are the reference). The repo uses wfla_display.sup. | knowledge/manuals/IM36K10R10-01EN.md §4; .claude/skills/portal-setup/tasks/read-setup-file.md |
| ISS-013 | 2026-09-30 | CI Portal setup files | Installed values differ from the defaults stated in IM 36K10R10 §4.4: wfla_display.sup DUR_QUEUE_SIZE = 1000 (manual 500 kB); wflgdi.sup DUR_QUEUE_SIZE = 252 (manual 1000 kB); wfla_display.sup and wflcdi.sup set TIMER_INTERVAL = 10 (manual: 1 s when not set). | closed | Closed 2026-09-30 (user decision: the installed software and files are the reference). The repo quotes the installed values as defaults. | knowledge/manuals/IM36K10R10-01EN.md §4 |
| ISS-014 | 2026-09-30 | CI Portal setup files | jwuiisg.sup has a Security tab (SECURITY_ENABLED, CORS_ENTRY, HEADER_ENTRY) that IM 36K10R10 §4.3 does not describe. | closed | Closed 2026-09-30 (user decision: the installed software and files are the reference). Documented from the file's own !KEYWORD/!HELP text. Installed CORS allows all origins (allowedOrigins "*"); tightening it is a site security decision. | knowledge/manuals/IM36K10R10-01EN.md §4.3 |
| ISS-015 | 2026-09-30 | Setup File Editor | In wfla_display.sup the seven main keywords (RELATION_LOCATION … TIMER_INTERVAL) come before the only tab line !TAB = Debug. By IM 36K10R20 §3.1, keywords before the first !TAB are not shown, yet IM 36K10R10 §4.4.1 shows them on a General tab. What the editor really shows is unknown. | closed | Closed 2026-09-30 (checked in the Setup File Editor by the user; installed software is the reference). The editor shows keywords placed before the first !TAB on a General tab, followed by the defined tabs: wfla_display.sup shows General (all 7 fields, values as in the file) and Debug. The manual's statement that such keywords are ignored does not hold in R1.03. | knowledge/manuals/IM36K10R20-01EN.md §3; knowledge/manuals/IM36K10R10-01EN.md §4; .claude/skills/portal-setup/tasks/change-setup-file.md |
| ISS-016 | 2026-09-30 | Setup File Editor | The R1.03 editor has features IM 36K10R20 §2 does not describe: a Templates tab next to Setup Files; a Status column in the file list (e.g. "Default"); Undo Field and Reset Field buttons on the edit form besides OK/Cancel/Help; a status bar with the selected file's description and the time. | closed | Installed software is the reference (user decision). 2026-09-30, tested on wfla_display.sup (DUR_QUEUE_SIZE 1000 → 2000): clicking OK writes the file immediately (only the active line changed; the manual says OK keeps the change in memory until Exit). Status becomes Changed when an active value differs from the file's !DEFAULT block; the changed field's label turns blue. Reset Field is enabled when the cursor is in a changed field; Reset Field + OK put the value back to the !DEFAULT value (2000 → 1000) and wrote the file at once (16:22:28); the rest of the file was unchanged. Still to find: what Templates holds and what Undo Field does. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10R20-01EN.md §2; .claude/skills/portal-setup/tasks/change-setup-file.md |
| ISS-017 | 2026-09-30 | CI Portal setup files | IM 36K10R10 §4 says the logon method is the one user-interface setting normally changed, but the R1.03 jwuiisg.sup Information tab says the login method and login control settings have moved to dssana.sup (authentication and authorization). dssana.sup is not described in R10. | closed | Installed software is the reference. 2026-09-30: dssana.sup ("Authentication and authorization setup") has tabs General, User Interfaces, Clients System Trust, Login control (LOGIN_METHOD = <client>, <user interface>, <method>, …), Active Directory, Single Sign On, Password rules, Logging. Manuals mentioning it: IM 36K01A50 (5×), 36K10C10 (6×), 36K10J40 (13×), 36K10L45 (2×), 36K10L50 (3×). Cover it in phase 5 (C10) and phase 13 (J40). 2026-09-30: login methods (Automatic, Manual CI Server, Manual OS, No, SSO, Deny) now summarized from C10 §2.2 in knowledge/manuals/IM36K10C10-01EN.md; AD/SSO details remain for J40. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10R10-01EN.md §4; .claude/skills/portal-setup/SKILL.md |
| ISS-018 | 2026-09-30 | Authorization (dssana.sup) | IM 36K10C10 §2.2 says the No login method applies the user profile FT_NO_LOGIN; the installed dssana.sup names CI_NO_LOGIN (and CI_NO_LOGIN_OPCUAS for anonymous OPC UA) as the no-login profile. USER_DF on the test system has CI_NO_LOGIN_OPCUAS but no CI_NO_LOGIN. | open | Installed software is the reference: use CI_NO_LOGIN. Still to check: behaviour of a No login when that user does not exist (manual: no profile applied). Covered again in phase 13 (IM 36K10J40). | knowledge/manuals/IM36K10C10-01EN.md §2 |
| ISS-019 | 2026-09-30 | ITEM (string items) | Maximum string item length differs by source: IM 36K10C10 §3.3.4 says default 80, max 100; the Tutorial summary says up to 168 without audit; the data dictionary (dssqld -f) gives ITEM_DF.STRING_LENGTH range 1–200, default 80. | closed | Tested 2026-09-30 on CI-Eng-Sample (dssqld -i, itmval -p/-g, non-elevated): STRING_LENGTH 100, 168 and 200 load with or without AUDIT_INFO; 201 fails with DSS-E-VAL_RANGE. An item holds length − 1 characters: a 99-character value in a length-100 item is stored with status 9 NORMAL; longer values are cut to length − 1 with status 12 OVERRANGED (100 → 99, 200 → 199, 201 → 199). So the data dictionary (1–200) is right. Test items removed. Closed 2026-09-30 (confirmed by user). | knowledge/manuals/IM36K10C10-01EN.md §3; knowledge/manuals/IM36K10G10-01EN.md (items); .claude/skills/item-engineering/SKILL.md |
| ISS-020 | 2026-09-30 | DATABASE (dssqld) | dssqld -i "<long absolute path>\user.qli" failed with CRL-E-ENOENT / DSSQ-E-QLD_FILOPN: the path in the message was cut after 79 characters (…\73b3559a-12.). A relative file name from the same folder works. Similar to the intspawn path limit (ISS-007). | closed | Tested 2026-10-01: the limit is 79 characters for the whole path. An input file of 80–81 characters gives DSSQ-E-Q_QLIEXT (the name is cut, e.g. ….ql), 85+ gives CRL-E-ENOENT. An -e output path of 80+ characters gives no error, but no file appears under the given name. Documented: keep paths ≤ 79 characters, or cd to the folder and use relative names. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | .claude/skills/system-management/tasks/load-remove-records.md; .claude/skills/system-management/tasks/export-dataset.md |
| ISS-021 | 2026-09-30 | EQUIPMENT (eqpiostat) | IM 36K10L40 §2 says eqpiostat stores hourly I/O statistics per station line in "history group STATION_STAT". On the test system eqpiostat runs (started by equipment_start.cmd on the host node) and STATION_STAT is a dataset, but dssqld -e returned 0 records, also with filters on TIME_STAMP and STATION (AID Modbus stations, which send requests). | open | Answered 2026-10-01: with CIENG_PLC communicating (Modbus slave mirror running), STATION_STAT holds one record per hour per station line (10 records since 30-09-2026 18:00; e.g. TIMESPAN 831 s, SENDS/GOODANS 1560/1560, no errors). The earlier empty export had no communicating station. Ready to close. | knowledge/manuals/IM36K10L40-01EN.md §2 |
| ISS-022 | 2026-09-30 | ITEM (itmval -f) | itmval -f <file> vs -n CI-Eng-Sample.TANK1.LEVEL (IM 36K10L36 §1.4, write a restore command) crashes with a segmentation fault (bash) / access violation 0xC0000005 (PowerShell) and writes no file; also with -l. The manual's space-separated form -n <inst> <unit> <tag> is rejected with FSL-E-NARG_ALL. itmval -g/-p work. | open | Workaround: build restore lines from itmval -g output. Report to Yokogawa support if needed. Retested 2026-10-01 with the documented syntax itmval -f <file> <opts> -n <item> (<opts> = letters from vsqo, e.g. vs): still a segmentation fault from bash and from cmd, in a short and a long folder, relative or absolute file name; cmd leaves an empty file. Also crashes right after a CI Server restart (so not the licence-time effect of ISS-030). Treat -f as broken on R1.03.00; report to Yokogawa support if needed. | knowledge/manuals/IM36K10L36-01EN.md §3; .claude/skills/system-management/tasks/read-write-item.md |
| ISS-023 | 2026-09-30 | ITEM / ITH (manual vs install) | Installed ITEM Service differs from IM 36K10L35/L36: item_start.cmd starts itheix (EVENT/ITEM storage, not described), aggregation ithsag/ithrag, two instances of each retrieve process, and itmtim 100 1000 1 200 1 (five arguments, three documented); itm.sup item pool is 650000 KB (manual default 50000) and has not_regained (not described); itheix.sup has max_sample_delay, max_samples_queued, max_open_files. | closed | Closed 2026-09-30 (user decision: the installed software is the reference). Summaries describe the installed values. | knowledge/manuals/IM36K10L35-01EN.md; knowledge/manuals/IM36K10L36-01EN.md |
| ISS-024 | 2026-09-30 | EQUIPMENT (Modbus slave) | IM 36K10L41 §3.7 says EQPMDCSLVTCP waits for "MODBUS RTU requests via TCP/IP" and the CI Server master should use "MODBUS RTU via TCP/IP". A Modbus master station with PROTOCOL = RTU to eqpmdcslvtcp (port 5020) got no answer (EQP-E-TCPRCVTMO, 4 requests, 0 valid); with Open Modbus/TCP it worked at once. | closed | Closed 2026-09-30 (user decision: installed software is the reference). Use Open Modbus/TCP towards eqpmdcslvtcp. | knowledge/manuals/IM36K10L41-01EN.md §3.7; .claude/skills/equipment/tasks/modbus-station.md |
| ISS-025 | 2026-09-30 | PROCESS (PRINT) | A Traditional PRINT "… 80 %, volume ", VOLUME; logged OPC-I-INFO, UMH Message Text Error: Message number 083A001B (… level reached 80 ): the text is cut at the % and the rest is lost. Without % the full text is logged. | closed | Tested 2026-10-01 with a temporary class (removed): PRINT "… 50 %% …" logs 50 % … correctly; \% and %c with 37 both give the Message Text Error and cut the text. Documented: write %%. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10P10-01EN.md §4; .claude/skills/class-object-engineering/tasks/traditional-class.md |
| ISS-026 | 2026-09-30 | PROCESS (opc.sup) | Installed PROCESS setup differs from IM 36K10L10 §2: IMMED-EVENTS = NO (manual: default on); FLOW-CONTROL = 30,60 (manual 300/360 s); four executors OPCEXE1–4 with fixed priority ranges (manual examples OPCEXE01…) and opcdbg still defaults to OPCEXE; keyword VARTAB-SIZE (manual VARITAB-SIZE); hidden keywords FLDSEP, IGNEXI not described; ALARM-ITEMS not set; class source file opc_clssrc.dat (manual opc_clasrc.dat); opcini.sup (licence line) not described. | closed | Installed software is the reference (standing user decision); summary written from the installed files. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10L10-01EN.md §2, §5 |
| ISS-027 | 2026-09-30 | PROCESS (opcdbg) | IM 36K10L10 §4 says the opcdbg Dump classes/objects files can be read by dssqld. The files have no @LANGUAGE/@FIELDS/@<dataset> headers (NAME,"desc",prio + source lines prefixed - ); dssqld -i on the object dump gave DSS-E-UNK_DS_NM, Unknown data set name. | open | Use dssqld -e CLASS_DF / OBJECT_DF for transfers (documented in opcdbg-checks.md). No installed tool that reads the dump format was found. Ready to close. | knowledge/manuals/IM36K10L10-01EN.md §4; .claude/skills/class-object-engineering/tasks/opcdbg-checks.md |
| ISS-028 | 2026-09-30 | PROCESS (class reset) | After recompiling a class with objects (RESET_REQUIRED 1), dssqld -m with CLASS_DF RESET = 1 (also with RESET_NODE = host node name) is accepted with 0 errors but does not reset; OBJECT_DF RESET = 1 is refused (OPC-E-OBJ_RSTREQ). opcdbg Classes → 8 Reset class works; it asks for a reset report file, which the manual does not list. | open | Use opcdbg. 2026-10-01: CLASS_RESET_COMMAND cannot be driven by dssqld (read/update only; no record to update — Not found; insert DSS-E-NO_AUTH). Test class CIENG_INCR was recompiled and reset again with opcdbg (RESET_REQUIRED back to 0). Engineering Module reset verified by the user 2026-10-01: Configuration › I/O processing › Classes › right-click the class › Reset opens Class - reset (reset node, Force extended reset, Abort after first failure, progress, reset report) — the GUI for CLASS_RESET_COMMAND; Reset reset 1 of 1 object, RESET_REQUIRED back to 0, object running. Ready to close. | .claude/skills/class-object-engineering/tasks/change-reset-class.md; knowledge/manuals/IM36K10L10-01EN.md §4 |
| ISS-029 | 2026-09-30 | PROCESS (Java) | IM 36K10P11 §10.4 says a new Java class must be reset before objects are added, otherwise the code does not take effect. A Java class inserted with COMPILE 1 by dssqld ran its first object correctly without any reset (twice, including a full sample reload). | open | Installed behaviour is the reference; keep "reset after changing a class that has objects". Check whether the Engineering Module path (compile without quick load) behaves differently. | knowledge/manuals/IM36K10P11-01EN.md §7; .claude/skills/class-object-engineering/tasks/java-class.md |
| ISS-030 | 2026-10-01 | BUS (UMH tools) | umhman (hex code → text) crashes with redirected input (bash: segmentation fault 139 with CRLF input; PowerShell Start-Process -RedirectStandardInput: 0xC0000005); with an argument it only prompts. umhtestprog prints UMH TEST UTILITY and crashes (segmentation fault). umhmsg 8010008 stops with umh_panic: …umhmsg.exe, license expired although other tools (dssqld, itmval) still worked at that time. | open | Retested 2026-10-01 right after a CI Server restart: all three work — umhman with piped input (bash, LF or CRLF; via cmd < too), umhmsg 083A001B text "…" writes the message to umhlog.log (process UMHMSG_<pid>, prints nothing), umhtestprog runs its self-test. The earlier failures came late in an unlicensed session (licence nearly expired). itmval -f (ISS-022) still crashes on a fresh start, so it is a separate fault. Ready to close. | .claude/skills/system-management/tasks/bus-utilities.md; knowledge/manuals/IM36K10L30-01EN.md §3 |
| ISS-031 | 2026-10-01 | LICENCE (unlicensed node) | The unlicensed test node counts down about 1 hour of run time per CI Server start (License time left in smd_<node>_LOW_smdsnp_general.log, 3600 s → *** license problem : 3 ***); then dssqld/itmval stop with license expired and ISF-F-LIC_PROB, DATABASE Service is not licensed. A PC sleep pauses the count (start 17:25, ran out 09:52 next day). Restart of the CI Service resets it (verified 2026-10-01, back after ~45 s). | closed | Closed 2026-10-01 (confirmed by user): known limitation of the unlicensed test system, documented in system-check. Known limitation of the test system, documented in system-check. Plan tests in ≤ 1 h blocks. Close when the user confirms. | .claude/skills/system-check/SKILL.md §3 (done) |
| ISS-032 | 2026-10-01 | ACCESS (OPC UA server node IDs) | IM 36K10L45 §10.3 shows CI Server node IDs ({"nsid":"32"}, {"0":"Value","itnm":"ITEM1"}) and the CI Server namespace http://www.yokogawa.com/CI_Server/ (ns 3) but not which namespace the entities use. With that URI (or urn:<host>:Yokogawa:CI_SERVER_OPC_UA_SERVER) the client point was silently not monitored. Browsing (OPCUAC_TAG_DF) shows sections/items in urn:Yokogawa:CI_SERVER_OPC_UA_SERVER; with it {"0":"Value","itnm":"<item>"} and {"0":"Value","nsid":"<n>"} both work. IM 36K10E20 §2.2.6 also asks to enable OPXUAS_USE_NAME_NODEIDS and restart for CI client ↔ CI server; not needed on the test system. | closed | Closed 2026-10-01 (user decision: installed software is the reference). Installed software is the reference (standing user decision). Close when the user confirms. | knowledge/manuals/IM36K10L45-01EN.md §7 (done); knowledge/manuals/IM36K10E20-01EN.md §3 (done); .claude/skills/data-access/tasks/opcua-client.md (done) |
| ISS-033 | 2026-10-01 | ACCESS (Engineering Module OPC UA point) | Tested by the user: the point form's Browse path stops at the item (Objects/CI-Eng-Sample/TANK1/INFLOW) and stores the item object {"nsid":"548"}; the point is not monitored (revised sampling interval 0, connected item status 13, Last value/Data type empty). Typing {"0":"Value","itnm":"CI-Eng-Sample.TANK1.INFLOW"} in Node Id fixed it (values followed at once). Browsing into an item that is OPC visible but not Read fails (UncertainNotAllNodesAvailable, OPXC-E-BRW_NODE). | open | Answered 2026-10-01 by the user: the browse dialog can expand the item; picking …/LEVEL/Value stored {"0":"Value","nsid":"713"} with Last value 85, Data type Double. So: pick the Value node, not the item. The itnm form stays the choice for quick load (nsid changes on reload). Ready to close. | knowledge/manuals/IM36K10E20-01EN.md §2 (done); .claude/skills/data-access/tasks/opcua-client.md §3 (done) |
| ISS-034 | 2026-10-01 | ACCESS (OPC UA server setup) | Installed vs IM 36K10L45 §10.5–10.6: ServerConfig.xml enables certificate user tokens (EnableCertificate true, manual false) and offers no None endpoint (only Basic256Sha256 / Aes128_Sha256_RsaOaep / Aes256_Sha256_RsaPss with Sign or SignAndEncrypt); the rejected folder is created only at the first rejection; opxuas.sup uses OPXUAS_DYNAMIC_SCANRATE (manual OPXUAS_USE_DYNAMIC_SCANRATE) and has OPXUAS_SET_HIGH_PRIO_15 (not described); opxsys.sup has OPXDAS_SET_LOG_LEVEL (not described). Also dur.sup adaptive queue entry OPCEXE while the installed executors are OPCEXE1–4. | closed | Closed 2026-10-01 (user decision: installed software is the reference). Installed software is the reference (standing user decision). Close when the user confirms. | knowledge/manuals/IM36K10L45-01EN.md §4, §7 (done); knowledge/manuals/IM36K10L30-01EN.md §8 (done) |
| ISS-035 | 2026-10-01 | ALARM (ALDPRT) | ALDPRT is running and connected (almdbg 1 shows Events-send-to rising with each alarm), aldprt.sup sets no log destination (so per IM 36K10L15 §4.3 it should log via UMH) and EVENTS includes alarm/ackn, but no alarm line appears in tls\log\umhlog.log for the CI-Eng-Sample HIGH / HIGH HIGH / acknowledge events. No other log file changed. Cause unknown (UMH filtering? output only with LOGUMH set explicitly?). | open | Ask the user whether alarm lines were ever seen in the message log; possibly test LOGUMH (or LOGSCN) in aldprt.sup (admin, restart) in a later session. Low priority: history and overviews are not affected. | .claude/skills/alarm-management/tasks/item-alarming.md (last line); knowledge/manuals/IM36K10L15-01EN.md §8 |
| ISS-036 | 2026-10-01 | ALARM (setup) | Installed vs manuals: alh.sup has DB-JRNL = WAL and DB-SYNC = OFF, not described in IM 36K10L15 §3.4; storage group ALH has lifetime 52 weeks while IM 36K10C20 §A7 says the default is 2 days (may have been changed on this system earlier — unknown); aldprt.sup uses TIMEFMT where the manual text also writes TIMFMT. | closed | Installed software is the reference (standing user decision). Close when the user confirms. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10L15-01EN.md §7, §8; knowledge/manuals/IM36K10C20-01EN.md §A7 |
| ISS-037 | 2026-10-01 | ALARM (history fields) | ALARM_CHRONO records contain leftover or unreadable text: INFO events generated with almdbg 16 carry INSTALL/UNIT/TAG/SUB values from earlier events and non-ASCII bytes in SOURCE, CATEGORY, CONDITION; item events of CI-Eng-Sample.TANK1.LEVEL show SUB = RoC although the item has only the sub-item MAX. | open | Rechecked 2026-10-01 after a restart: a new HIGH alarm on CI-Eng-Sample.TANK1.LEVEL (raised with itmval -p) gave a clean ALARM_CHRONO record (INSTALL/UNIT/TAG correct, SUB empty, SOURCE/CATEGORY/CONDITION empty), and the user's Current Alarm Overview showed correct columns. The leftover/garbled values are limited to the older records (INFO events made with the almdbg 16 test function and events from that session). Documented: treat SUB/SOURCE/CATEGORY/CONDITION as reliable only for normal item and OPC events. Ready to close. | .claude/skills/alarm-management/tasks/alarm-checks.md §4 |
| 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. | open | 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. | .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. | open | 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. | .claude/skills/graphics/tasks/create-display.md; knowledge/manuals/IM36K10R30-01EN.md §4 |
| 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 <frame> / 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 |
| ISS-045 | 2026-10-01 | REPORT (ad hoc from dssqld) | Generating ad hoc with REPORT_DF.GENERATE = 1 from dssqld (user FULL AUTHORIZATION) on a report without ADHOC_DEST logs FSL-E-PRT_UNKUSER, Job submitted by unknown user (FULL AUTHORIZATION) and RPT-I-TRYPRINT in umhlog.log; the generated report is stored normally. Phase 12 correction (2026-10-01): with ADHOC_DEST set the same error appears and nothing is printed (CIENG_AUDIT, CIENG_TANK1 after a sample reload); the same report generated from the Engineering Module as ADMIN printed to CIENG_FILE. Related to the R1.03 known issue on report generation and default printers (IM 36K01A50, REPORT 1.11). | closed | Workaround documented: generate from the Engineering Module when printed output is needed (as ADMIN with destination CIENG_FILE it printed without errors, phases 11 and 12); runs from dssqld are stored but never printed, ADHOC_DEST does not help. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | .claude/skills/reporting/tasks/define-reports.md §2; knowledge/manuals/IM36K10C30-01EN.md §6 |
| ISS-046 | 2026-10-01 | DATABASE (dssqld memo) | A memo field loaded from a file (@"<file>"@, IM 36K10L50 §3.10) fails with a relative name (CRL-E-ENOENT, the file is read on the server side) and with a long absolute path (DSSG-E-STRBUFSMAL, buffer 83); a short absolute path works. The manual gives no limits. | closed | Documented: use inline memos, or an absolute path ≤ 82 characters. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | .claude/skills/system-management/tasks/dss-tools.md §2; knowledge/manuals/IM36K10L50-01EN.md §4 |
| ISS-047 | 2026-10-01 | REPORT (RQL manuals) | The manuals disagree: default @WORKSPACE 500 KB (IM 36K10R40 §2.2.2) vs 16 KB (IM 36K10C30 table 2.1-1, IM 36K10P20 §9.6); maximum @WIDTH 512 (R40, P20 §4) vs 5000 (P20 §9.6); @FORMFEED described with opposite meanings (C30: not 1 = form feed; P20: 0 = blank lines, default 1). Installed set-up files set @workspace explicitly (500 in rptge1.rpt, 100 in rptgen.rpt) and @formfeed 0 for the interactive generator. | closed | Not tested (no printer); the set-up files make the defaults irrelevant in practice. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10R40-01EN.md §2; knowledge/manuals/IM36K10P20-01EN.md §3 |
| ISS-048 | 2026-10-01 | REPORT (ad-hoc parameters) | The prompt [ITEM:NAME like "CI-Eng-Sample.TANK1.*"]Item for statistics: (filter form as in IM 36K10C30 §2.1) gives an item tree browser in the Engineering Module generate dialog, but the tree shows all sections, not only TANK1 items (checked by the user). | open | Answered 2026-10-01 with a temporary report (removed), checked by the user: the filter is an ITEM_DF filter joined with AND to each tree node. It does limit the items: with NAME like "CI-Eng-Sample.TANK1.*" only TANK1 items (incl. CALC.VOLUME, JFLOW.sPerMin, LEVEL.MAX) appear and can be picked; sections and objects always stay in the tree, which is what the first check saw. NAME like "*.L*" and DESCRIPTION like "Tank 1*" also work; % is not a wildcard, NAME = "….*" matches nothing, SECTION = … gives DSS-E-FLT_SYN_ERR. Ready to close. | .claude/skills/reporting/tasks/define-reports.md; knowledge/manuals/IM36K10C30-01EN.md §2; examples/CI-Eng-Sample/18_report_df.qli comment |
| ISS-049 | 2026-10-01 | AUDIT (item option Audit trailing wanted) | IM 36K10G10 ch. 9 and the classifier list (IM 36K10L25 App. 1, ITEM.VALUE.MODIFY.<source>, ITEM.HIGH-LIMIT…) suggest item changes are audited per item when AUDIT_INFO = 1. On R1.03.00 none of the tested tools produced an ITEM.* event: itmval -p writes are not audited at all (with AUDIT_INFO 0 or 1); value writes through DSS (dssqld -m ITEM_VAL) and Engineering Module Update value are audited as dataset events (ITEM_VAL, ITEM_VALUE / ITEM_VALUE_STR / STATUS) for every item regardless of AUDIT_INFO. Operator-display writes and PROCESS writes (opc.sup AUDIT = YES, COMPUTE classifiers off by default) were not tested (no input field in the sample displays). | open | Test an operator value input on an item with AUDIT_INFO 1 (needs a display with an input field) and, if wanted, PROCESS with AUDIT = YES. | .claude/skills/audit-trail/tasks/configure-audit.md §1; .claude/skills/audit-trail/tasks/read-audit-trail.md §2; knowledge/manuals/IM36K10L25-01EN.md §3 |
| ISS-050 | 2026-10-01 | AUDIT (classifier STORAGE) | Setting AUDIT_EVENT_CLAS_DF.STORAGE = 0 for DATASET.NULL-ATTR.MODIFY.ENT-ENG-MOD at 17:01:12 did not stop the next dssqld -m ITEM_VAL change from being stored (17:01:12.573). IM 36K10L25 §3.2 explains a per-process cache refreshed every ECL_REFRESH s (default 1800); the notifier here is DSSSDA, so the change should apply within 30 minutes. | closed | Re-tested: at 17:32:18 (after the 30-minute refresh) the same change was not stored, so the flag works with a delay. Set back to 1 at 17:32; the next change was still not stored (the cache works in both directions). Documented: allow up to ECL_REFRESH (1800 s) or restart CI Server. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | .claude/skills/audit-trail/tasks/configure-audit.md §1; knowledge/manuals/IM36K10L25-01EN.md §3 |
| ISS-051 | 2026-10-01 | AUDIT (manual vs installed) | Differences between IM 36K10L25 and R1.03.00: (1) App. 1 lists subject F/T-SYSTEM, the installed classifiers use CI-SERVER (logins) and also EAL OPERATION (subject and action) and source VIA-OPC-UAS, not in the manual; 463 classifiers installed. (2) App. 1 explanations of SHELVE and UN-SHELVE are swapped. (3) QUESIZE: manual default and maximum 200 kB, adtsys.sup help default 10 kB, minimum 10 (file sets 200). (4) TIMEFMT default: manual DD/MM/YY hh:mm:ss.ppp, adtsys.sup help without .ppp; ADTLOG output shows milliseconds (manual right). (5) dssqld changes are recorded with source ENT-ENG-MOD, not QUICKLOAD. (6) The selection expression language is not described in the manual; the compiler listing gives the words and operators (no LIKE). (7) ADT group lifetime 52 weeks on the test system vs 2 days default when ADTSTO creates it (§2.1.1). | closed | Documented in the L25 summary and the audit-trail skill. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | knowledge/manuals/IM36K10L25-01EN.md; .claude/skills/audit-trail/tasks/*.md |
| ISS-052 | 2026-10-01 | GRAPHICS (stale item id) | The HTML display CIENG_Tank showed 0 in its number field on CI-Eng-Sample.TANK1.LEVEL (live value 50) and the popup ITM-E-NO_MAIN, No main item found, in a fresh session after a CI Server restart. The display XML stores <itemName> and <itemId>1.1.268.0.0.1.1.7</itemId> from when it was built; after today's sample reloads the item has ID_NUMBER 357. Phase 10 had seen live values after a reload, so the id is not always used, but here it broke the field. | open | Fixed in the sample: removed the <itemId> line from displays/CIENG_Tank.xml, redeployed; the field shows 50 and the popup is gone (binding by name). Documented in create-display.md. Close when the user confirms. | examples/CI-Eng-Sample/displays/CIENG_Tank.xml; .claude/skills/graphics/tasks/create-display.md; .claude/skills/graphics/tasks/deploy-displays.md |