..
agent-automation-bootstrap.json
style(prettier): apply markdown/json formatting updates
2026-05-07 22:08:00 +02:00
app-icons-generator-2026-07-19.json
Add shared launcher-icon generator for the Flutter apps
2026-07-19 16:55:48 +02:00
app-icons-home-inventory-linux-2026-07-27.json
app_icons: home_inventory has a Linux desktop target
2026-07-27 11:26:26 +02:00
app-icons-pubspec-background-sync-2026-07-21.json
app_icons: auto-sync pubspec.yaml's adaptive_icon_background
2026-07-21 21:38:22 +02:00
app-icons-warm-palette-2026-07-21.json
app_icons: warm-tint the shared icon family palette
2026-07-21 21:20:41 +02:00
archive-unmaintained-2026-01.json
chore: archive 41 unmaintained directories to testsAndMisc-archive
2026-05-14 20:21:05 +02:00
billsplit-apk-buildable-2026-08-03.json
billsplit: build a real APK by dropping file_picker for file_selector
2026-08-03 14:15:40 +02:00
billsplit-move-2026-08-03.json
Move billsplit Flutter app into the monorepo
2026-08-03 12:22:22 +02:00
boot-repair-esp-recovery-20260730.json
Add boot-repair: offline recovery for a stale EFI System Partition
2026-07-30 12:48:56 +02:00
brother-printer-file-length-split-2026-07-17.json
fix(brother-printer): split oversized files, fix order-dependent entry test
2026-07-17 15:06:25 +02:00
brother-printer-status-accuracy-2026-07-17.json
fix(brother-printer): report the truth, not invented status codes
2026-07-17 14:49:23 +02:00
bucket-catch-2026-06-26.json
Add evidence artifact for the bucket_catch app
2026-07-11 00:16:35 +02:00
bucket-catch-2026-06-27.json
Add bucket_catch: osu!catch browser game with 100% frontend test coverage
2026-06-27 12:21:35 +02:00
bucket-catch-design-tokens-2026-07-22.json
bucket_catch: introduce a real design-token system, fix reversed gradients
2026-07-22 19:18:12 +02:00
byox-ladder-2026-07-17.json
feat(byox_ladder): add build-your-own-x difficulty ladder generator
2026-07-17 18:31:21 +02:00
checker-false-errors-2026-07-17.json
fix(checker): stop reporting healthy services as errors; drop thesis_tracker
2026-07-17 08:32:55 +02:00
ci-mirror-gate-2026-07-11.json
Add CI-mirror pre-push gate + requirements-sync check (monorepo variant)
2026-07-11 18:06:17 +02:00
ci-pipeline-and-lint-backlog-fix-2026-06-22.json
Fix CI pipeline and clear the lint backlog it had been hiding
2026-06-22 07:52:44 +02:00
cleanup-meta-folder-2026-05.json
chore: consolidate root configs into meta/, drop unused C dir + split/pdfCentered/geo_data
2026-05-14 20:40:12 +02:00
cloud-gallery-2026-07-12.json
cloud_gallery: React media-gallery SPA served by dufs (Phase 3)
2026-07-12 06:05:52 +02:00
cloud-gallery-coverage-lint-deploy-2026-07-12.json
cloud_gallery: fix build, 100% coverage, aggressive lint; whitelist dufs_client
2026-07-12 17:29:39 +02:00
code-tutor-2026-07-10.json
Add code_tutor: interactive codebase-learning CLI
2026-07-11 00:15:46 +02:00
code-tutor-test-version-fix-2026-07-11.json
Make code_tutor OSError fingerprint test Python-version-robust
2026-07-11 00:22:57 +02:00
diet-guard-app-focus-whitelist-2026-06-22.json
style: prettier format pre-existing evidence JSON
2026-06-27 12:25:13 +02:00
diet-guard-app-night-whitelist-2026-07-11.json
phone_focus_mode: night-whitelist com.kuhy.diet_guard_app
2026-07-11 23:58:22 +02:00
diet-guard-gatelock-migration-2026-06-21.json
Migrate diet_guard to the shared gatelock backend
2026-06-21 18:16:45 +02:00
diet-guard-meal-and-trigger-fix-2026-06-10.json
feat(diet_guard): add meal-logging screen-lock gate with trigger fix
2026-06-10 22:32:39 +02:00
diet-guard-test-isolation-fix-2026-06-22.json
Fix non-hermetic diet_guard gate tests depending on a real X display
2026-06-22 08:12:02 +02:00
digital-wellbeing-bypass-hardening-2026-05.json
security: harden digital-wellbeing bypass vectors
2026-05-16 15:41:40 +02:00
epopeja-karta-icon-2026-08-03.json
app_icons: finish the epopeja_karta entry; whitelist it on the phone
2026-08-03 12:41:13 +02:00
extract-dufs-cloud-repo-2026-07-12.json
Extract dufs cloud (web + app + scripts) to github.com/kuhyx/dufs-cloud
2026-07-12 18:38:37 +02:00
extract-inline-python-2026-06-06.json
refactor: extract all inline Python from shell scripts into proper .py files
2026-06-06 10:31:48 +02:00
extract-session-autopsy-2026-07-26.json
Point the hook test at the extracted session_autopsy, add the artifacts
2026-07-26 20:50:44 +02:00
file-length-split-2026-06-14.json
style: apply prettier formatting to evidence JSON and dwm/gaming READMEs
2026-06-14 07:22:04 +02:00
file-length-test-venv-blindspot-2026-07-25.json
python_pkg: the file-length test was blind to its own CI venv
2026-07-25 16:32:32 +02:00
fix-hosts-guard-silent-aborts-2026-07-17.json
fix(hosts-guard): stop setup aborting silently, so the guards actually enable
2026-07-17 08:25:51 +02:00
fix-install-failures.json
style: prettier formatting for evidence JSON files
2026-05-16 15:46:33 +02:00
fix-midnight-shutdown-heredoc-2026-06-22.json
fix: shutdown timer crashing on every fire due to heredoc escaping bug
2026-06-22 07:09:55 +02:00
fix-remaining-wellbeing-services-2026-07-17.json
fix(wellbeing): clear every remaining error/warning; drop thesis_tracker
2026-07-17 08:58:43 +02:00
flutter-git-env-wrapper-2026-07-26.json
Fix: stop the Flutter SDK reading your own repo as itself inside git hooks
2026-07-26 15:39:33 +02:00
focus-mode-daemon-file-length-2026-07-17.json
fix(wellbeing): split focus_mode_daemon to satisfy the 500-line limit
2026-07-17 17:36:30 +02:00
focus-mode-installer-symlink-2026-07-17.json
fix(wellbeing): symlink focus-mode-daemon so edits actually deploy
2026-07-17 14:02:33 +02:00
focus-mode-zombie-steam-2026-07-17.json
fix(wellbeing): stop focus mode reading zombie processes as running Steam
2026-07-17 13:55:24 +02:00
guard-lib-migration-2026-07-04.json
feat: migrate hosts-guard and shutdown-schedule-guard to guard-lib
2026-07-04 11:54:08 +02:00
habit-stack-icon-2026-07-20.json
app_icons: register habit_stack with a new chain-link glyph; whitelist it
2026-07-20 11:09:23 +02:00
home-inventory-icon-and-whitelist-2026-07-27.json
app_icons: add home_inventory storage-box glyph; whitelist it on the phone
2026-07-27 07:35:55 +02:00
i3-idle-inhibitor-path-2026-07-25.json
fix(i3): repair the dead idle-inhibitor autostart and make it a singleton
2026-07-25 19:57:57 +02:00
idle-inhibit-zero-fork-20260604.json
perf(idle-off): replace controller-watch fork storm with a single systemd-inhibit
2026-06-04 18:14:07 +02:00
import-media-archives-2026-07-12.json
import_media_archives.sh: fold Downloads media_archive zips into the cloud
2026-07-12 17:43:23 +02:00
install-core-system-cleanup.json
Add install_core_system.sh; remove pc_startup and thesis_tracker
2026-05-15 01:13:28 +02:00
kcd2-balatro-joker-face-confirmed-2026-07-25.json
kcd2_dice_solver: Balatro's joker replaces the one, confirmed
2026-07-25 16:33:08 +02:00
kcd2-balatro-single-joker-face-2026-07-25.json
kcd2_dice_solver: Balatro's die has one joker face, not six
2026-07-25 16:14:04 +02:00
kcd2-dice-inventory-io-2026-07-26.json
kcd2 dice solver: serve it at dice.kuhy.duckdns.org, fit all 43 dice, move inventories between devices
2026-07-26 20:01:21 +02:00
kcd2-dice-solver-deploy-responsive-io-2026-07-26.json
kcd2 dice solver: lock deploy_build.sh so two runs cannot publish half a bundle
2026-07-26 20:33:38 +02:00
kcd2-dice-solver-run-sh-2026-07-21.json
Apply prettier formatting to new kcd2_dice_solver files
2026-07-21 18:17:45 +02:00
kcd2-dice-solver-warm-palette-2026-07-22.json
chore: fix prettier formatting on the kcd2 evidence JSON
2026-07-22 18:05:04 +02:00
keepass-multidevice-sync-2026-07-12.json
linux_configuration: unified multi-device KeePass sync over dufs
2026-07-12 05:00:27 +02:00
linux-config-cleanup-2026-05.json
style: prettier formatting fixes
2026-05-15 01:15:52 +02:00
linux-config-polling-hardening-2026-05-14.json
fix(linux_configuration): harden polling/runtime scripts and add tests
2026-05-14 19:55:42 +02:00
linux-config-runtime-hardening-2026-05-08.json
Harden runtime script deployment and enforce installer safety
2026-05-08 17:44:22 +02:00
linux-config-scripts-split-2026-05.json
refactor(linux_configuration/scripts): split all scripts into single_use/ and periodic_background/
2026-05-15 00:32:35 +02:00
loud-maintenance-failures-2026-07-17.json
fix(maintenance): make repair failures loud instead of silently exiting 0
2026-07-17 08:17:51 +02:00
makepkg-stale-lock-wrapper-2026-07-16.json
fix(pacman): wrap makepkg so an orphaned db.lck can't hang makepkg -i
2026-07-17 07:46:31 +02:00
mandatory-hooks-2026-08-03.json
fix(hooks): make git hooks and their toolchain mandatory and fail-closed
2026-08-03 11:09:11 +02:00
media-cloud-sync-2026-07-12.json
linux_configuration: move Downloads media into the dufs cloud (browsable)
2026-07-12 05:19:31 +02:00
morning-routine-unified-2026-05-25.json
morning_routine: unified alarm+lock orchestrator, fix alarm audio/reliability
2026-05-25 18:55:27 +02:00
move-install-core-system.json
style: prettier formatting for evidence JSON files
2026-05-16 15:46:33 +02:00
mtk-root-toolkit-2026-08-04.json
mtk_root: build the rooting toolkit before the phone lands
2026-08-04 20:38:44 +02:00
network-diagnostics-2026-07-19.json
Add network diagnostics: duty-cycle and line-speed probes
2026-07-19 18:46:18 +02:00
night-lockdown-2026-07-17.json
feat(shutdown): night lockdown instead of power-off, so servers stay up
2026-07-17 09:09:54 +02:00
night-lockdown-drop-morning-alarm-2026-07-20.json
night-lockdown: stop firing the morning alarm on a fixed hour
2026-07-20 08:50:45 +02:00
night-lockdown-dynamic-wake-floor-2026-07-18.json
fix(night-lockdown): schedule a dynamic wake-floor trigger for any shutdown time
2026-07-18 06:51:26 +02:00
night-lockdown-power-save-and-dnsmasq-watchdog-2026-07-23.json
Add overnight power-save to night-lockdown; harden dnsmasq with a watchdog
2026-07-23 11:58:37 +02:00
night-lockdown-wake-fixes-2026-07-18.json
fix(night-lockdown): close console-blank gap, recover DP link, floor wake alarm
2026-07-18 06:44:17 +02:00
pacman-hook-stall-2026-08-03.json
Diagnose the pacman first-hook stall; fix the drift that hid a stale wrapper
2026-08-03 15:15:34 +02:00
pc-polling-runtime-validation-2026-05-10.json
Optimize polling/runtime scripts, add regressions, and sync verification artifacts
2026-05-10 02:58:11 +02:00
persistent-adb-2026-08-03.json
phone_focus_mode: reach the phone over adb without touching it
2026-08-03 13:33:45 +02:00
personal-website-2026-07-13.json
Add personal website deploy + move Gitea to a subdomain
2026-07-13 19:10:48 +02:00
phone-blackview-recents-fix-2026-05-31.json
fix(phone): restore Blackview launcher for recents gesture
2026-05-31 16:27:08 +02:00
phone-curfew-demo-net-stopgap-2026-06-13.json
feat(phone_focus_mode): add on-demand demo curfew + netd-resistant net stopgap
2026-06-13 22:01:32 +02:00
phone-focus-cpu-hardening-2026-07-10.json
Harden phone_focus_mode CPU use; whitelist wake_alarm_sync
2026-07-11 00:16:11 +02:00
phone-focus-mode-fresh-install-2026-05-31.json
feat(phone): automate BL-9000 fresh-phone recovery after factory reset
2026-05-31 16:22:49 +02:00
phone-focus-mode-netd-cache-fix-2026-05.json
phone_focus_mode: fix YouTube DNS blocking via netd cache restart
2026-05-22 15:58:36 +02:00
phone-focus-whitelist-foss-and-run-apps-2026-07-11.json
phone_focus_mode: whitelist run-with-music apps + FOSS stock-app replacements
2026-07-11 22:39:36 +02:00
phone-night-curfew-2026-06-13.json
feat(phone_focus_mode): enable curfew per-UID network allow-list; build companion button
2026-06-13 16:58:49 +02:00
pre-commit-default-stages-2026-05-14.json
perf(pre-commit): default_stages=[pre-commit] so push only runs pytest+prettier
2026-05-14 21:21:40 +02:00
pre-commit-prettier-isolated-scope-2026-05-14.json
perf(pre-commit): run prettier in its own systemd-run scope
2026-05-14 21:12:32 +02:00
pre-commit-prettier-scope-fix-2026-05-14.json
perf(pre-commit): tighten prettier scope to fit in pre-push cgroup
2026-05-14 21:09:14 +02:00
pre-commit-pytest-batch-2026-05-14.json
perf(pre-commit): batch+parallelize pytest on commit; kill 15s sleeps in steam_backlog_enforcer tests
2026-05-14 21:52:52 +02:00
pre-commit-pytest-scope-fix-2026-05-14.json
fix(pre-commit): skip deleted/missing python_pkg subpackages
2026-05-14 21:05:49 +02:00
pre-commit-stage-rebalance-2026-05-14.json
perf(pre-commit): move mypy/pylint/bandit from pre-push to pre-commit
2026-05-14 21:20:21 +02:00
prettier-and-gradle-caps-2026-08-03.json
Format last three markdown files; cap billsplit's Android build memory
2026-08-03 13:25:48 +02:00
protondb-coverage-fix.json
fix: remove dead code in unplayable_reason; add coverage for playable path
2026-05-08 20:35:55 +02:00
protondb-gold-silver-fix.json
fix: accept ProtonDB gold+silver combinations; add explicit skip reasons
2026-05-08 20:31:16 +02:00
pylint10-r0801-schema-validation-2026-06.json
feat: split oversized modules for 500-line limit, fix kasa coverage gap
2026-06-14 07:19:37 +02:00
pytest-xdist-coverage-flake-fix-2026-06-22.json
Drop -n 4 xdist parallelism from the pytest-coverage pre-commit hook
2026-06-22 08:29:54 +02:00
remove-build-your-x-2026-07-17.json
chore: remove byox_ladder — extracted to its own repo
2026-07-17 20:06:14 +02:00
remove-diet-guard-2026-06-22.json
Remove diet_guard: extracted to its own repo (kuhyx/diet-guard)
2026-06-22 12:22:41 +02:00
remove-focus-mode-daemon-2026-07-19.json
remove(digital-wellbeing): delete unusable focus-mode daemon entirely
2026-07-19 13:15:04 +02:00
remove-hosts-script-self-chattr-2026-07-16.json
fix(hosts): stop chattr +i'ing install.sh and generate_hosts_file.sh sources
2026-07-17 08:06:46 +02:00
remove-screen-locker-2026-05-28.json
chore: remove screen_locker — extracted to own repo
2026-05-28 07:44:14 +02:00
remove-screen-replay-2026-06-06.json
remove: uninstall unused ffmpeg screen-replay feature
2026-06-06 10:44:36 +02:00
remove-setup-script-self-chattr-2026-07-16.json
fix(shutdown): stop chattr +i'ing this script's own git-tracked source
2026-07-17 07:55:07 +02:00
remove-steam-backlog-enforcer-2026-05-28.json
chore: remove steam_backlog_enforcer — extracted to own repo
2026-05-28 07:27:32 +02:00
remove-wake-alarm-2026-06-22.json
Remove wake_alarm (extracted to kuhyx/wake-alarm) and fix the orchestrator
2026-06-22 12:47:06 +02:00
requirements-sync-foreign-imports-2026-07-19.json
requirements-sync: map bs4 and exempt foreign-runtime imports
2026-07-19 18:58:35 +02:00
reverse-survivors-2026-08-03.json
feat(reverse_survivors): migrate Reverse Survivors game into the monorepo
2026-08-03 10:45:12 +02:00
root-cleanup-2026-05-14.json
chore: spring-clean repo root (move docs, relocate batch3 script, drop stale outputs)
2026-05-14 20:01:09 +02:00
run-sh-wrapper-smoke.json
style(prettier): apply markdown/json formatting updates
2026-05-07 22:08:00 +02:00
screen-locker-scheduled-skip-2026-05.json
screen_locker: add scheduled-skip date mechanism + hibernate on alarm nights
2026-05-22 16:00:15 +02:00
screen-locker-sick-tracker-2026-05-14.json
feat(screen-locker): add sick-day tracker and commitment debt flow
2026-05-14 19:52:15 +02:00
screen-locker-weekly-check-2026-05-28.json
screen_locker: add weekly check feature with UI integration
2026-05-28 07:04:18 +02:00
security-hardening-guard-lib-units-2026-07-19.json
security-hardening: check guard-lib units, not the retired ones
2026-07-19 19:58:32 +02:00
security-hardening-shutdown-guard-2026-07-19.json
security-hardening: recognise the guard-lib shutdown guard
2026-07-19 20:09:24 +02:00
self-hosted-gitea-2026-07-04.json
Add self-hosted Gitea deployment, mirroring all GitHub repos publicly
2026-07-04 07:45:00 +02:00
session-autopsy-badge-and-aliases-2026-07-25.json
session_autopsy: badge counts only significant candidates; zero-token aliases
2026-07-25 18:05:49 +02:00
session-autopsy-drop-explain-diff-2026-07-25.json
session_autopsy: handled candidates leave the nudge; drop explain-diff
2026-07-25 18:12:38 +02:00
session-autopsy-hook-mutation-gate-2026-07-25.json
Make the hook tests' non-vacuity re-verifiable, and gate it
2026-07-25 17:37:34 +02:00
session-autopsy-hook-tests-2026-07-25.json
session_autopsy: test the hooks, the untested half of the analyzer
2026-07-25 17:27:30 +02:00
session-autopsy-package-2026-07-25.json
python_pkg: track session_autopsy, finishing its interrupted refactor
2026-07-25 16:56:43 +02:00
session-autopsy-turn-efficiency-2026-07-26.json
session-autopsy: measure turn efficiency, the dominant token cost
2026-07-26 19:29:25 +02:00
setup-dns-blocker-2026-07-10.json
feat: add Pi-hole-like LAN DNS blocking served from the PC (dnsmasq)
2026-07-10 19:02:46 +02:00
setup-dufs-cloud-2026-07-12.json
linux_configuration: self-hosted dufs cloud storage + KeePass WebDAV auto-sync
2026-07-12 03:40:54 +02:00
setup-local-llm-2026-06-27.json
Add local-LLM setup script (ollama-cuda + qwen3 + Open WebUI)
2026-07-11 00:16:24 +02:00
setup-midnight-shutdown-violation-checks-disabled.json
fix(digital-wellbeing): disable schedule leniency violation checks
2026-05-07 22:06:34 +02:00
setup-syncyomi-2026-07-13.json
Add setup_syncyomi.sh: self-hosted SyncYomi manga sync
2026-07-13 17:20:02 +02:00
setup-wireguard-ssh-2026-06-19.json
feat: add self-hosted WireGuard+SSH remote access from Android, across networks
2026-06-21 20:07:13 +02:00
shell-tests-arch-container-2026-07-19.json
Run Arch-only shell tests in a container; harden worktree stubbing
2026-07-19 19:27:36 +02:00
shell-tests-ci-2026-07-19.json
Run shell tests in CI and repair three broken by a reorg
2026-07-19 19:06:23 +02:00
shell-tests-complete-coverage-2026-07-19.json
Run all 14 shell tests in CI
2026-07-19 19:39:28 +02:00
shell-tests-stale-assertions-2026-07-19.json
Repair two stale shell tests; CI now runs all six
2026-07-19 19:13:51 +02:00
shellcheck-ci-green-2026-08-04.json
Fix the 11 shellcheck findings that kept CI red since b83ce5d
2026-08-04 20:55:02 +02:00
shellcheck-strict-gate-2026-08-03.json
Fail the build on any shellcheck finding; fix the 222 the old gate hid
2026-08-03 19:49:11 +02:00
shutdown-override-i3blocks-sync-2026-07-10.json
feat(digital-wellbeing): time-boxed shutdown overrides + drift-proof i3blocks deploy
2026-07-10 21:57:05 +02:00
stats-hltb-fixes-2026-05-28.json
steam_backlog_enforcer: fix stats command — show real Rush/Leisure/Worst data
2026-05-28 07:02:48 +02:00
steam-backlog-cache-behavior-fix-2026-05-08.json
steam_backlog_enforcer: reduce repeated cache refetches
2026-05-08 15:13:25 +02:00
steam-backlog-done-install-retry-2026-05-08.json
steam_backlog_enforcer: retry install after library hide restart
2026-05-08 14:56:46 +02:00
steam-backlog-finished-only-next-pick-2026-05.json
steam_backlog_enforcer: only prompt next pick after game is finished
2026-05-23 21:19:44 +02:00
steam-backlog-module-split-2026-05.json
Split modules, fix tests, fix pre-commit batching
2026-05-22 22:48:28 +02:00
steam-backlog-protected-ids-2026-05-14.json
feat(steam-backlog): protect four additional Steam app IDs
2026-05-14 19:58:40 +02:00
steam-backlog-whitelist-hardening-2026-05.json
feat(steam_backlog_enforcer): harden whitelist against circumvention
2026-05-17 20:44:05 +02:00
steam-library-hide-fix-2026-05-17.json
steam_backlog_enforcer: fix library_hider crash on invalid AppIDs + improve HLTB hour extraction
2026-05-22 15:59:18 +02:00
sync-tests-fix-coverage-2026-05.json
fix: sync test paths, drop stale assertions, fix coverage gap
2026-05-16 15:46:02 +02:00
template.json
style(prettier): apply markdown/json formatting updates
2026-05-07 22:08:00 +02:00
tether-enforcer-hotspot-bypass-2026-07-13.json
phone_focus_mode: block hotspot/tethering to close the second-phone bypass
2026-07-13 10:48:59 +02:00
todo-night-whitelist-2026-07-11.json
phone_focus_mode: night-whitelist dev.kuhy.todo
2026-07-11 23:32:57 +02:00
usage-report-hz-cpu-fix-20260604.json
fix(usage_report): stop charging atop's HZ field as CPU; bundle since-last-report mode
2026-06-04 18:13:47 +02:00
vendor-agent-skills-import.json
chore(third_party): vendor agent-skills snapshot
2026-05-07 22:06:00 +02:00
wake-alarm-gatelock-migration-2026-06-22.json
Migrate wake_alarm to the shared gatelock backend
2026-06-22 07:33:49 +02:00
wake-alarm-hibernate-2026-05.json
wake_alarm + midnight_shutdown: hibernate on alarm nights instead of poweroff
2026-05-22 16:01:04 +02:00
wake-alarm-loudness-typeable-2026-05.json
wake_alarm: louder + typeable + multi-fan
2026-05-24 16:20:34 +02:00
wake-alarm-plug-fans-warnings-2026-05.json
wake_alarm: Tapo P110 plug control, fan ramp via sudo, loud warnings
2026-05-23 19:51:26 +02:00
wake-alarm-refactor-2026-05-30.json
style: prettier format CLAUDE.md and evidence JSON
2026-05-30 22:13:54 +02:00
wake-alarm-restore-display-test-gap-2026-06-22.json
Fix the real cause of the wake_alarm CI coverage gap
2026-06-22 09:14:29 +02:00
wsg-grabber-2026-07-27.json
wsg_grabber: scrape /wsg/, download every new video, triage with keep/pass
2026-07-27 14:55:30 +02:00