BoneFlow_UI #017-#029 Test + Formal Guide v1.0.5

Scope: #017-#029 excluding #023 (12 UI)
Top folder: BoneFlow_UI
Guide source: existing DOC Integration docs/doc/content/DOC-xxxx/ja.md; full Japanese guide rendered, not summarized

PASS | boneflow.js updated only for common BoneFlow.holidays official CSV import API | 21b3ff4adbad47248d9c3fcfecaf3783fc53a7f39259dd9f098673fcb1e2502a
PASS | boneflow.css byte unchanged from v1.0.1 | 5265e14894d65fe70f5e2ec607939f29afbfe8c931e87dc966b759918d3052ba

[Guide integration static QA]
PASS | #017 DOC-0017 | source 910 lines | TOC 64 | SHA 5c3a74232de707c7c49c1025c968d9d34f559a9add82cc7baf68d92d00f1e069
PASS | #018 DOC-0018 | source 1023 lines | TOC 108 | SHA 2a9737942e683257dbd49294a770622b5a7e657704c1ae24c63897aa1885e13c
PASS | #019 DOC-0019 | source 1104 lines | TOC 67 | SHA 6f99ebc5812eb42f64b032a7049212ced17bcd543eeaff532b7ba5bf100f31c9
PASS | #020 DOC-0020 | source 1782 lines | TOC 172 | SHA c81607cd27bf77aeb70749c551350886bf7fceed1f476c70636ece32042482cf
PASS | #021 DOC-0021 | source 2622 lines | TOC 153 | SHA 9af2aeb285dd95347311cad9c6d353c8d37d66f61db2780b6194fbd23c533991
PASS | #022 DOC-0022 | source 505 lines | TOC 72 | SHA c001d6ca6da2df4115439b1e552761c26beba7fdd4173f0be0c5ae87540abbd9
PASS | #024 DOC-0024 | source 1100 lines | TOC 77 | SHA 1251fdd749cf0b24e4dc7a110688e738732dd2ccea5b68cfdbda4c83dde685da
PASS | #025 DOC-0025 | source 1047 lines | TOC 88 | SHA 55a8b435594daad9f769942b942954b0693969e3e9562b67c8d1a987824f8594
PASS | #026 DOC-0026 | source 811 lines | TOC 78 | SHA 9d1c4bc8cfdb6508f6ac9f1b39ed3e8b642d8a517fd73f7df30d47c228e7afc5
PASS | #027 DOC-0027 | source 2046 lines | TOC 97 | SHA 008bc6e8209e04051cfd8ea14759f41a8ec7ea0e79abb77061c0eca1b5817c33
PASS | #028 DOC-0028 | source 1883 lines | TOC 86 | SHA 983a49a0db1ab5afb13ec837664bdca59d5dcd35a282b6f748024a4ed388a218
PASS | #029 DOC-0029 | source 1707 lines | TOC 82 | SHA 083a8fbe0d0d28d6f05e719c4725744612e81e209ad24a65bcf3fdf4fa8b0f72

[Existing representative UI QA]
PASS | #017 / #020 / #021 / #026 / #029 representative Runtime mount remained unchanged from v1.0.3 scope
PASS | formal guide DOM remains static display and does not create live bf-* guide components

[#024 official holiday CSV import]
PASS | source URL fixed to Cabinet Office official CSV | https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv
PASS | year selector present | id=holiday-import-year | min=1955 | default=2027
PASS | automatic import button present | id=holiday-csv-import-btn
PASS | manual Holiday JSON file selector removed from #024 Sample
PASS | BoneFlow.holidays.source.csvUrl exposed
PASS | BoneFlow.holidays.parseCsv(text, {year}) added
PASS | BoneFlow.holidays.loadCsv(url, {year, replaceYear}) added
PASS | BoneFlow.holidays.importOfficialCsv(year) added
PASS | CSV date parser supports YYYY/M/D and YYYY-MM-DD
PASS | CSV decoder checks Shift_JIS/MS932 and UTF-8 candidates
PASS | mock Shift_JIS/MS932 CSV import | selected 2027 only | 3/3 expected rows
PASS | same-year custom records are replaceable with replaceYear=true
PASS | imported records use holiday kind + 🎌 icon contract
PASS | #024 inline JavaScript syntax (node --check)
PASS | boneflow.js JavaScript syntax (node --check)
NETWORK NOT RUN | actual browser cross-origin fetch to Cabinet Office CSV from localhost is not executable in this environment; user localhost confirmation required

[Existing interactive samples]
PASS | #019 Emoji single-register + JSON import behavior preserved
PASS | #024 task add + anniversary add behavior preserved
PASS | #024 imported holiday list remounts Calendar to first date of selected year

[#024 task/anniversary date selection]
PASS | browser-native input type=date removed from live task/anniversary controls
PASS | task date selector uses #024 bf-calendar Runtime | trigger id=task-date-trigger
PASS | anniversary date selector uses #024 bf-calendar Runtime | trigger id=anniversary-date-trigger
PASS | shared #024 Calendar selector present | id=demo-date-calendar | class=bf-calendar
PASS | bone-calendar:select RETURN writes selected YYYY-MM-DD into the active task/anniversary hidden value
PASS | #024 selector is remounted with the current field date before display
PASS | main #024 Calendar Runtime and shared #024 date selector are independent hosts
PASS | boneflow.js unchanged from v1.0.4
PASS | boneflow.css unchanged from v1.0.4
BROWSER USER CONFIRMATION REQUIRED | popup placement and click-selection in user localhost

[Packaging]
PASS | top-level ZIP directory is BoneFlow_UI/
PASS | no #023 sample directory
User localhost/browser final confirmation: NOT YET
