Bone Flow #024 Calendar v1.0.158 Candidate Package Audit Date: 2026-10-01 Identity - Package: 1.0.152 - Runtime: BoneCalendar 1.0.52 - HTML Functional Class: bf-calendar / 1.0.15 Package 1.0.112 dependency-gate repair - Source basis: user-supplied BoneFlow_024_Calendar_v1.0.108_Candidate(1).zip. - #024 test/preview boot no longer rejects newer dependency runtimes by exact version equality. - Dependency checks use semantic minimum-version comparison (>=) plus required Public API capability checks. - #040 caller contract for this repair was verified against canonical BoneColorPicker 1.0.23 / package v1.0.52; #024 compatibility minimum remains 1.0.18. - Removed redundant browser Smoke S42, which only re-tested #118/#040 version identity. - #022 Smoke no longer requires effects.length === 9; effect capability is read from the Runtime property definition/effects surface and cross remains rejected. - BoneCalendar self-runtime identity remains exactly 1.0.36; this is a self-component integrity check, not a dependency gate. - Current package-local Node/static tests: 19/19 files PASS; existing assertion suite plus runtime DOM reparent and below-calendar/modal-isolation tests. - JavaScript syntax and inline-script syntax: PASS. - JSON parse: PASS. - User localhost confirmation remains required; no Completed/Frozen claim. Reason for version increment - v1.0.57 was rejected by user localhost because minimal.html stayed blank. - v1.0.58 changed Runtime to BoneCalendar 1.0.36 to correct the browser ReferenceError. v1.0.86 changes only the #024 test-page layout isolation; Runtime remains 1.0.36. Rejected defects - v1.0.55 embedded a large guide body in minimal.html. - v1.0.56 mixed unrelated Core/Joint helpers into the standalone bundle. - v1.0.57 still failed to render because create() used skipManagers before its const declaration. v1.0.58 blank-screen correction - create() declares skipManagers before the first guide-button use; the TDZ ReferenceError is removed. - A regression test asserts the declaration precedes first use. - minimal.html is only the one-JS/one-CSS / three-data-attribute bf-calendar screen. - Calendar footer has a Calendar-owned 「ガイド」 button. - The guide opens in a modal; no guide body is appended below minimal.html. - Guide covers JA/EN, minimum HTML, Functional Class/data-* CRUD, #040 ColorPicker/#118 Transition, and main properties. - Existing Task Type / Task / Event / Annotation functionality remains. QA - Node/static: ALL PASS (13 test files / 204 PASS lines). - JavaScript syntax: ALL PASS (16 files). - JSON parse: ALL PASS (4 files). - Windows/localhost verification remains user-side pending. - Manifest: ALL PASS (38 payload files). Standalone blank-screen root cause correction - v1.0.56 generated standalone bundle mixed #001/#002 Core/Joint implementation files into minimal HTML bundle. - v1.0.58 standalone bundle was fixed to the formal #040 chain only: #020 -> #022 -> #118 Runtime -> #118 Functional Class -> #040 -> #024 Runtime -> #024 Functional Class. - Each bundled part is runtime-error isolated so a consumer dependency cannot prevent #024 from loading. - Final boot guard explicitly scans/mounts .bf-calendar and reports a missing #040 attachCaller capability. Package 1.0.86 layout isolation correction - Restores the #017-style UI-024 test-page shell when dependency CSS also defines generic .bf-header/.bf-page selectors. - Explicitly scopes page/header/dependency-grid layout to main[data-ui-id="UI-024"]. - Runtime BoneCalendar remains 1.0.36. - User localhost verification is still required. - v1.0.86: minimal standalone bundle restores the exact #001/#002 prerequisite chain used by bone-calendar.html before #020/#022/#118/#040/#024; this fixes #040 Task Type ColorPicker caller availability in minimal.html. Package 1.0.86 / Runtime 1.0.36 task-type independence correction - data-task-types no longer depends on data-tasks when data-tasks is omitted; omitted task data is explicitly initialized as an empty array. - setTaskTypes has an explicit zero-task path, so Task Type master registration/update succeeds with zero Task records. - Added regression coverage for taskTypes + zero tasks and HTML Functional Class omitted data-tasks contract. Package 1.0.86 / Runtime 1.0.36 guide rebuild - Rebuilt DOC-0024 around observable effects, not property-name-only descriptions. - Added complete Task Type / Task / Event field examples and relationships. - Added selectedDayVisible true/false effect and correct Runtime default=false. - Added set* replacement vs add/update semantics and task-zero Task Type example. - Rebuilt Runtime-owned in-Calendar guide with the same effect-oriented explanations. Package 1.0.86 / Runtime 1.0.36 bulk-operation usability correction - Every Task Type / Task / #054 display / Event bulk editor adds a multi-record sample button. - Bulk buttons expose title tooltips explaining required JSON and replace/upsert/delete effects. - Registered-data output exports current Task Types, Tasks, #054 display data, Events, Annotations and #054 common settings in one JSON file. - Annotation manager receives the same sample/output guidance. Package 1.0.86 / Runtime 1.0.36 CSV round-trip correction - Bulk managers now provide CSV Export and CSV Import for Task Type, #024 Task, Event, and #054 display records. - CSV Export serializes the actual currently registered records with UTF-8 BOM. Sample -> Replace -> CSV Export therefore produces the CSV sample from real registered data. - CSV Import expands records into the existing bulk JSON editor and does not register until Replace or Add/Update is explicitly selected. - HTML Functional Class data-task-types / data-tasks / data-events remains the canonical direct HTML initialization path; those records are included in CSV export after mount. Package 1.0.86 selected-day sample visibility correction - minimal.html explicitly sets data-selected-day-visible="true" so selected-day detail remains visible while Runtime default stays false for compatibility. - test-page direct Functional Class sample uses the same explicit contract. - Task Type background/text color behavior from v1.0.66 is preserved. Package 1.0.86 / Runtime 1.0.36 selected-day accordion and formal single task indicator - Calendar date cells show one formal 📑 task indicator when one or more display-enabled tasks exist; task count/type does not multiply the Calendar indicator. Position follows calendarTaskIconPosition. - Selected-day details are a native accordion (details/summary), expanded initially when selectedDayVisible=true; selectedDayVisible=false hides the accordion entirely. - The redundant standalone selected-date line above the selected-day accordion is hidden; the date remains in the accordion summary. - Existing selected-day Task Type background/text color rendering is preserved. Package 1.0.86 browser Smoke alignment correction - S45 follows the formal task-indicator wrapper position contract. - S46 follows selected-day Task Type icon rendering. - S49D validates the two Task Type callers plus the 16 Work Type #040 callers without assuming only two color callers exist. - Runtime remains BoneCalendar 1.0.36. Package 1.0.86 browser Smoke S46 correction - S46 now validates the selected-day icon from the actual Task Type of the first sample task (meeting = ●), instead of incorrectly expecting the work icon (💼). - Runtime rendering is unchanged; BoneCalendar remains 1.0.36. Package 1.0.86 Minimal ZIP correction - Downloadable sample ZIP is generated from minimal.html + bundled bf-calendar.js + bf-calendar.css, matching the browser Minimal HTML contract. Package 1.0.86 Minimal offline guide correction - Downloadable Minimal ZIP includes the detailed #024 guide source in Japanese/English plus 024-Calendar.md. - minimal.html itself remains the minimal runtime contract; no guide body or helper controller is embedded. - Runtime remains BoneCalendar 1.0.36. Package 1.0.112 Task Type #040 ColorPicker caller repair - Preserves the existing Calendar common settings screen and Picker / #118 Transition settings. - Task Type background/text color callers now use the formal #040 overlayPlacement value bottom-start. - Removed Consumer-owned ColorPicker reposition/destroy wrapping; #040 owns click/open, viewport positioning, scroll/resize tracking, and controller destruction. - Added regression coverage that rejects bottom-end and Consumer mutation of the frozen #040 controller. Package 1.0.112 USER localhost installer repair - v1.0.111 is rejected: USER localhost failed with "cumulative runner report section not found". - Removes the display-heading string anchor from Ensure-Cumulative024. - Uses stable ids/classes: component-regression-tests, bf-regression-grid, normal-results, abnormal-results, result-024-*, and the regressions variable. - Captures cumulative card/config/result/smoke/validation identities before patch and fails before write if any existing item would disappear. - #000 is patched in memory and written only after preservation checks. Package 1.0.114 UI / #118 / dependency-tree repair - Basis: v1.0.112 candidate; v1.0.112 is not promoted because USER localhost exposed missing #024 Dependency Tree entry and ineffective #118 validation. - Adds #024 Calendar as its own UI Dependency Tree accordion with direct UI children #020 Label, #022 Hover Border Effect, #040 ColorPicker only. #118 remains transitive via #040. - #000 is patched in place by stable id/class; existing dependency-tree ids are snapshotted and must not disappear. - Adds showSettingsManagerButton / showGuideManagerButton controls to Property UI and bf-calendar data-* examples. - Smoke now verifies real #118 bf-transition mount plus ENTER/EXIT state; common transition changes reattach existing #040 callers. - USER localhost: PENDING. Completed/Frozen: NO. Package 1.0.114 common-settings -> #040 live wiring repair - Common Settings is the single Task Type ColorPicker #118 configuration source. - Formal #040 transition/direction/speed/respectReducedMotion all flow to every Task Type caller. - Browser Smoke S49G operates the Common Settings UI itself and verifies the real bf-transition instance ENTER/EXIT; direct setOptions bypass is no longer accepted as proof. Package 1.0.121 USER-localhost regression repair - Basis: rejected v1.0.116 + USER Runtime Report (105 total / 101 PASS / 4 FAIL). - Keeps the existing selected-day visibility checkbox in the original Property area beside the task/manager visibility controls; Common Settings does not duplicate it. - Preserves selectionLayout=accordion|below-calendar; below-calendar uses a dedicated independent list block below Calendar main and moves the list content between that block and the accordion without reload. - Prevents Task / Task Type / Event left-list stretch even under host/theme CSS by explicit !important content-height rules. - Rewrites false-positive Smoke: S47 drives the existing Property visibility checkbox; S54 checks each Task Type / Task / Event item contains its wrapped content and checks rendered list geometry. - Fixes stale S04/S17 DOM selectors after introducing calendar-main wrapper. - Reworks S49D/S49G to observe actual BoneTransition.enter/exit calls through #040 Caller OPEN/CLOSE and verify mounted #118 options/buildPlan. - Package-local Node/static: ALL PASS (17/17 test files; 241 explicit PASS lines + runtime selection visibility/DOM reparent execution test). - Runtime remains BoneCalendar 1.0.36; HTML Functional Class remains 1.0.15. - USER localhost: PENDING. Completed/Frozen: NO. Package 1.0.121 USER-localhost correction - Task Type / Task / Event manager list-item fixed 24px height regression removed; wrapped content now remains inside each item and each list follows actual content height. - Existing Property checkbox "選択日を表示" remains in the original Property area beside the task/manager visibility settings; no duplicate visibility checkbox is added to Calendar common settings. - below-calendar now uses a dedicated Calendar-below list block, separate from the accordion details element, and grows naturally without an internal fixed-height scroll area. Package 1.0.121 selected-day live-control correction - Preserves the v1.0.118 Task Type / Task / Event list-item repair unchanged. - Keeps the Property-page controls: selectedDayVisible checkbox + selectionLayout select. - Adds explicit live controls to minimal.html so USER can switch selected-day visibility and accordion/below-calendar without editing HTML or reloading. - Both controls call the existing Runtime properties selectedDayVisible / selectionLayout; no duplicate Runtime property is introduced. v1.0.121 USER localhost correction - Calendar Common Settings contains both selectedDayVisible and selectionLayout in the same Selected day / Display settings group. - below-calendar is an external sibling element immediately after the fixed .bone-calendar root, not a child inside it. - The external list owns natural content height and is not clipped by Calendar root height. - Task Type / Task / Event list repair from v1.0.118 is preserved unchanged. Package 1.0.122 audit delta - v1.0.121 rejected by USER localhost: below-calendar external list was not fully visible. - Minimal fixed-height/overflow:auto host removed; natural-flow host enforced by installer/test. - below-calendar foreground stacking layer added without touching v1.0.118 Task Type / Task / Event list-item layout rules. - Ad-hoc Minimal selected-day top controls removed; formal UI paths preserved. - USER localhost: PENDING; no Completed/Frozen claim. Package 1.0.133 Runtime QA correction - USER v1.0.126 Runtime Report: 105 total / 101 PASS / 4 FAIL. - Remaining FAIL IDs: S49D, S49G, S54, S55. - S49D/S49G no longer monkey-patch BoneTransition.enter/exit. The checks use the real #040 Caller, mounted bf-transition instance, #118 getOptions/buildPlan, and actual Caller OPEN/CLOSE state. - S54 runs its below-calendar geometry assertions only after the Calendar is appended and a connected-state no-op setOptions render has executed. This preserves the actual external-sibling contract without relying on the create() microtask timing. - S55 first verifies data-selection-layout -> Runtime option mapping, then runs the same connected-state render before asserting the external below-calendar sibling/list. - Runtime BoneCalendar remains 1.0.36. v1.0.118 Task Type / Task / Event list repair and v1.0.122 below-calendar correction are unchanged. - Package-local Node regression: 17/17 test files PASS / 241 explicit PASS lines. - USER localhost verification for the exact v1.0.133 Candidate remains required. - Completed / Specification Frozen: NO. Package 1.0.133 neon modal containment correction - USER localhost on v1.0.128: selecting Theme=neon broke the Calendar common-settings modal layout. - Root cause: .bone-calendar[data-theme="neon"] used CSS filter:drop-shadow(). A filtered ancestor becomes the containing block for position:fixed descendants, so Calendar-owned manager modals were fixed to the Calendar box instead of the viewport. - v1.0.133 removes root filter and keeps neon emphasis with box-shadow only. - Regression: package-local layout test forbids CSS filter on the neon Calendar root while manager modals are viewport-fixed. - USER localhost verification for exact v1.0.133 remains required. Package 1.0.133 task visual correction - Runtime stays BoneCalendar 1.0.36. - Selected task display preserves workTypeId and resolves Work Type color/icon before parent Task Type fallback. - Default Task Type / Work Type backgroundOpacity = 60. Package 1.0.133 audit delta - #024-only repair: Work Type task visual, 60% background opacity, Task Name auto-fill, and below-calendar host clipping. - No #048/#054 runtime or sample files are modified. - No consumer-owned ColorPicker/Transition implementation is introduced. - USER localhost verification remains the completion gate. Package 1.0.133 cache/runtime correction - Package: 1.0.133 - Runtime: BoneCalendar 1.0.36 - Test page executes no-store deployed #024 Runtime/Class instead of a potentially cached static singleton. - Work Type -> Task Name sync, paid-leave green visual, 60% background opacity, and external below-calendar host unclipping are covered by current regression contracts. - Package-local Node/static QA: 18/18 files PASS / 243 explicit PASS lines. - User localhost verification: PENDING. Completed/Frozen: NO. Package 1.0.133 / Runtime 1.0.36 fixed-frame below-calendar correction - v1.0.132 host height/overflow rewrite is rejected and removed. - below-calendar selected-day content is mounted after the Calendar host in the host parent. - Fixed Calendar host height / max-height / overflow / alignment are not mutated. - Work Type color, 60% background opacity, legacy paid-leave repair, and Task Name auto-fill are retained. - Package-local Node/static: 18/18 test files PASS. - USER localhost verification remains required. Package 1.0.134 actual-Calendar-anchor correction - Runtime: BoneCalendar 1.0.38. - below-calendar is portaled to document.body and positioned from the actual .bone-calendar getBoundingClientRect(). - The fixed/clipping host height/overflow are not modified. - The external selection block starts at Calendar bottom + 10px and matches Calendar left/width. - v1.0.133 placement after the fixed host is rejected. - USER localhost verification is required before Completed/Frozen. Package 1.0.135 task-bulk selected-day refresh isolation - Runtime: BoneCalendar 1.0.38. - #024 Task bulk replace / add-update / delete / clear updates data without refreshing the selected-day presentation during the bulk action. - A pending selected-day refresh is applied once when Task Manager closes. - below-calendar actual-Calendar anchoring from Package 1.0.134 is unchanged. - Work Type color/name/60% opacity behavior is unchanged. - USER localhost verification is required before Completed/Frozen. Package 1.0.136 below-calendar manager isolation - Runtime: BoneCalendar 1.0.39. - below-calendar remains a separate body portal anchored to the actual Calendar bottom; fixed host height/overflow are not modified. - While any #024 manager dialog is open, external selected-day portals are temporarily suppressed so they cannot float above the modal. - Task-bulk pending selected-day refresh is flushed before the Task Manager portal is restored. - ResizeObserver repositions the external block when the actual Calendar box changes size. - USER localhost confirmation is required before Completed / Frozen. Package-local v1.0.136 regression result: 20/20 Node test files PASS / 258 explicit PASS lines. Package 1.0.137 manager list visual-color synchronization - Runtime: BoneCalendar 1.0.40. - Task Type manager list rows use each Task Type background/text color and configured opacity. - Task manager Task Type / Work Type select options and selected value use configured visual colors. - Task list rows use effective Work Type visual for work tasks and Task Type visual otherwise. Package-local v1.0.139 regression result: 20/20 Node test files PASS / 258 explicit PASS lines. Package 1.0.139 Smoke QA portal contract alignment - Runtime remains BoneCalendar 1.0.40. - S53/S54/S55 now validate the current below-calendar body Portal contract instead of the retired sibling placement. - No Calendar Runtime behavior change in this package. Package 1.0.139 Smoke S53/S54 false-negative correction - S53 now tests 2026-08-10, which is inside the shared Smoke min/max range, and never dereferences a missing Portal. - S54 opens Task Type / Task / Event managers one at a time, checks each visible list geometry, closes it, then checks the restored below-calendar Portal natural height. - Runtime remains BoneCalendar 1.0.40. No Calendar behavior was changed by this package revision. Package 1.0.142 language-fix audit (2026-09-30) - Base: canonical BoneFlow_024_Calendar_v1.0.139_Candidate.zip. - Scope: #024 locale resolution / visible Calendar labels / minimal language contract only. - Redmine/page `` is evaluated before browser locale when `locale` is auto/null. - Explicit `data-locale` remains highest priority. - New locale regression verifies page lang=en with navigator ja-JP renders English, explicit ja overrides it, explicit en overrides page lang=ja, and auto follows page lang=ja. - Package-local Node regression: 21/21 test files PASS; 258 explicit PASS lines. - Windows PowerShell 5.1 execution: NOT RUN in this Linux environment; install.ps1 ASCII + CRLF static contract PASS. - USER localhost: PENDING. Completed/Frozen: NO. Package 1.0.142 URL audit (2026-09-30) --------------------------------------- - #024 verification origin: http://localhost - Custom localhost port: prohibited for #024 verification URLs - Version query parameter: prohibited for #024 verification URLs - Canonical test: http://localhost/boneflow/test/bone-calendar.html - Canonical minimal: http://localhost/boneflow/sample/024/calendar/minimal.html Package 1.0.143 week-start audit (2026-09-30) - Runtime 1.0.42 changes only the week-start/language coupling and the corresponding Common Settings control. - weekStart default: sunday. auto compatibility value: sunday. - locale changes Japanese/English labels without moving weekday columns. - Calendar Common Settings 「開始曜日」 writes the same Runtime weekStart used by data-week-start. - Minimal keeps the visible language toolbar and explicitly sets data-week-start=sunday. - Final package-local Node regression for v1.0.143: 21/21 files PASS / 259 explicit PASS lines. Package 1.0.145 full-locale audit (2026-10-01) - Audited every Calendar-owned manager overlay in English Auto locale with page while browser language is ja-JP. - Task Type / Task / Event / Annotation / Common Settings manager fixed UI strings resolve to English. - Built-in Task Type and Work Type display labels resolve to English without rewriting canonical stored Japanese defaults. - Manager tooltip/aria labels, bulk-editor aria labels, minute option labels, and dynamic result/status strings are locale-aware. - Guide remains intentionally bilingual; the self-language button "日本語" and hidden Japanese guide sample content are not an English-manager leak. - Package-local regression includes a full manager-DOM locale test. Package 1.0.145 Minimal toolbar visual audit - Root cause addressed: Redmine/global button defaults plus browser mouse-focus outline made Auto (Redmine) appear vertically displaced. - Scoped toolbar button geometry is explicit; mouse focus outline is suppressed while :focus-visible remains accessible. Package 1.0.146 file-picker locale audit (2026-10-01) - English Annotation Manager contains no visible browser-native Japanese file-input chrome. - Native input[type=file] is hidden; Calendar owns the visible localized trigger and filename text. - Runtime bumped to BoneCalendar 1.0.44 because the Manager DOM/behavior changed. Package 1.0.147 Runtime QA contract correction (2026-10-01) - Runtime remains BoneCalendar 1.0.44; no Calendar behavior change. - Smoke S25 no longer expects display language to alter weekStart. It verifies language changes preserve weekday order and explicit weekStart remains authoritative. - Validation V12 no longer contains the retired Japanese=Monday / other=Sunday auto rule. It verifies auto resolves to the formal Sunday default and explicit monday/sunday remain locale-independent. - Package-local Node regression: 22/22 files PASS / 260 explicit PASS lines. Package 1.0.152 / Runtime 1.0.52 — #024 Calendar task-group integration (2026-10-18) - Native #024 taskGroups data and task group manager. Default regular-work: work 09:00–18:00, break 12:00–13:00, Monday–Friday. - Native #024 drag chip and formal #054 public-API drop path, preserving unrelated tasks and deduplicating group application by stable task IDs. - HTML Functional Class 1.0.16: data-task-groups, data-show-task-group-manager-button, group CRUD/apply APIs. - Calendar-owned UI and no new independent component/runtime, no changes to #054 or #021. - 23/23 Node test files / 268 explicit PASS; Chromium group-manager CRUD / week action / drag -> #054 formal Runtime with #125 test stub: PASS. - #125 and complete external dependencies on user localhost: NOT RUN. Windows PowerShell installer execution: NOT RUN. - Development Candidate; USER localhost confirmation required before Completed/Frozen. Package 1.0.152 / Runtime 1.0.52: Installer gracefully skips unrecognized #000 dependency tree and cumulative DOM, keeps #000 unchanged when incompatible, preserves all existing group CRUD; selected group highlighted. USER localhost not yet reverified. #024 v1.0.152 — Calendar本体のタスクグループ統合 (2026-10-19) - 追加先: bf-calendar の Calendar本体。専用タスクグループRuntime/独自カレンダー/独自JSONは追加しない。 - 選択日と同じ details/summary アコーディオンを実装。初期状態は開き、グループ数、名称、曜日、勤務・休憩の時間帯を表示。 - 通常カレンダーのグループ管理ボタンはアコーディオン内へ移動し、重複しない。 - グループ操作とグループ内タスク操作を分離。タスク行左端のチェックで選択し、編集・削除を行う。グループ更新で確定。 - タイムバーの横・縦切替は Calendar から正式 #054 BoneDisplayTimeline.setOptions({orientation}) に委譲。#054 Runtime が存在しない画面では切替できたと装わず案内を表示。 - 正式 sample/024/calendar/minimal.html も bf-calendar HTML Class経由で表示する。従来の外部#054週報サンプルは改変しない。 - Chromium direct-HTML-Class/Runtime/CSS browser test: 0 JS errors、accordion開閉/checkbox/グループ追加更新削除 PASS。 - Node regression: 23 files / 273 PASS lines; JS syntax 26 files PASS。 - MANIFEST/SHA256: ZIP作成前後照合。Windows Installer・ユーザーlocalhostは未実施。 #024 Calendar v1.0.153 / Installer-only repair Previous v1.0.152 failed on installed source verification: minimal.html had 9 formal JS / 4 CSS but install.ps1 expected 7 / 3, then expected a removed fixed 2026-08-13 date. Installer now verifies exact official dependency list #024+048+054+125+SQLite, checks physical asset files and dynamic-date bootstrap; no change to Calendar runtime, Table/Timeline/Blend, or DB engine. Windows PowerShell 5.1 on user localhost still NOT RUN; user installer log is required to confirm installation. #024 Calendar v1.0.154 / Installer host-layout validation correction (2026-10-20) - User Windows Installer v1.0.153: FAILED at "minimal host must not clip below-calendar with fixed-height/internal-scroll styles". - Root cause: Installer matched overflow:auto anywhere in minimal.html, including the valid #048 .bf024-report-table-scroll horizontal scroller; the actual Calendar host has height:auto;overflow:visible. - Fix: Read the id=bf-calendar-redmine-host inline style and validate host dimensions/overflow specifically; retain legitimate #048 report horizontal scrolling. - Source preflight now runs before any install-target file copies, plus the same check during standalone generation. - Runtime BoneCalendar 1.0.52, #048/#054/#125, SQLite runtime/adapter unchanged. - Windows PowerShell 5.1 Installer not run here; user localhost installation is required for final acceptance. #024 Calendar v1.0.158 / Installer PowerShell automatic variable collision correction (2026-10-20) - User Windows PowerShell 5.1 v1.0.154 FAILED immediately after host-layout preflight. - Cause: assigning to case-insensitive read-only automatic $Host via $host in Assert-MinimalCalendarHostNaturalFlow. - Changed only local match variable to $calendarHostTagMatch; preserve Calendar/layout/SQLite/#048/#054/#125. - Added source preflight regression for reserved PowerShell variables and negative case tests. - Windows PowerShell 5.1 live installation NOT RUN here; localhost must be checked. #024 v1.0.162: formal #054 drag/resize writes #024 Task through existing API; 1-day scheduled hours configurable 8h default; partial paid leave reports fractional day equivalents. #048/#054/#125 and #021 frozen untouched. #024 v1.0.183: Editable Task/Work Type opacity is stored and projected into #054 timebar colours; task click selects calendar date, double-click opens that task for editing. #048/#054 runtimes unchanged. #024 v1.0.184: Live task group tag colours follow Task Type/Work Type master; ticket override is work-only (breaks keep Break Type colour). #048/#054 runtimes unchanged. #024 v1.0.185: double-click on #054 task fixed via official selection event on stable root; same-task clicks open exact taskId. #048/#054 untouched. #024 v1.0.186: show scheduled weekdays from task groups (distinct 22) separately from physically worked days (21), leave and absence unchanged.