MUNKANAPLÓ / WORKLOG

Not a case study. An engineering worklog.

Finished systems hide most of the engineering work behind them. This log keeps the problems, wrong turns, fixes, trade-offs and verification steps that do not fit on a portfolio card.

120 entries32 categories1/7 page

120 of 120 entries are currently available in English. The remaining entries stay in Hungarian while translations are reviewed in batches.

18 entries ezen az pageon · 120 total

Authentic browser screenshot of the live CyberAcademy.hu homepage captured during the 27 October 2026 Chromium Live QA run, showing the original lavender-and-magenta styling.
CyberAcademy.hu6 min

CyberAcademy goes live: WordPress, Amelia, DNS cutover and every mistake we learned from

CyberAcademy.hu reached production today: KampányMűvek Engine replaced WordPress, Hungarian/English/German routes were validated, booking and email infrastructure received guarded migration workflows, DNS switched over, and Live QA passed. This retrospective also covers our fictional blue theme, read-only booking detour, Make/SSH/macOS defects and overcomplicated CI.

CyberAcademy.huKampányMűvekMigrationDevOpsQuality Assurance
CyberAcademyWordPress migrationKampányMűvek EngineAmeliaSQLiteSMTPCGIDNS cutoveri18nHU/EN/DELive QAGitHub ActionsLighthouseretrospective
Open entry →
A luminous blue PHP shield protects commerce servers on one side and analytics infrastructure on the other.
Columbia Games / KampányMűvek7 min

Critical PHP security update: two infrastructures, one important lesson

Two critical PHP vulnerabilities rated 9.2 under CVSS v4.0 prompted focused production maintenance. Columbia Games moved its CCM v2 API to PHP 8.3.36 and its WordPress runtime to PHP 8.4.27. On the Ubuntu host serving KampányMűvek, we verified Canonical's security backport, updated additional packages, and reduced unnecessary PHP exposure. The tested services remained available.

Columbia GamesKampányMűvekDevOpsInfrastructureSecurity
PHPCVE-2026-109618CVE-2026-109619critical RCEPHP 8.3.36PHP 8.4.27DockerWordPressUbuntu 24.04 LTSsecurity backportApacheproduction hardening
Open entry →
Developer at a night-time workstation, with code, green deployment checks, storefront dashboards and a tabletop strategy game.
Columbia Games / CCM v28 min

After the support sprint came the hardening: Columbia Games releases, entitlements and Game Dollars

Since the previous Columbia Games diary, we shipped session-aware retailer recommendations, Unicode rendering fixes, dependency updates and admin configuration guards. We executed and retired a one-time customer-region migration, simplified CI, and reinforced Game Dollars checkout limits with 23 targeted test cases. Production deployment and post-deploy QA passed, while genuine retailer UAT remains a separate acceptance step.

Columbia GamesDevOpsE-commerceBackend
CCM v2Game Dollarsretailer catalogcheckout upsellHârn UnicodeReact Routernpm auditsecurity headersconfiguration scopePostgreSQL migrationGitHub Actionsproduction QA
Open entry →
Cinematic Columbia Games development workspace at sunset: laptop with source code, support and production books, coffee and checked tasks.
Columbia Games / CCM v28 min

From support tickets to verified fixes: a full day across Columbia Games checkout and digital delivery

A full day of retailer shipping rules, PayPal checkout, digital download entitlements, PDF routing, image caching, PostgreSQL imports and admin regression checks. Scattered email requests became an evidence-driven support backlog, with clear boundaries between implemented fixes, production verification and pending business decisions.

Columbia GamesDevOpsSupportBackend
CCM v2production QAretailer shippingPayPalISO alpha-2digital entitlementsPDFNginx /pixcache invalidationPostgreSQLRBACGitHub Actions
Open entry →
Screenshot of the CyberTeam.hu homepage on 13 October 2026 showing a dark blue header, multilingual navigation, cybersecurity hero photography and teal consultation buttons.
KampányMűvek / CyberTeam6 min

One day, twenty PRs, and a perfect mobile Lighthouse score: rebuilding CyberTeam

Twenty CyberTeam pull requests merged in one development day: a three-language WordPress migration, consistent UI, a measured 100/100 local mobile Lighthouse result, Apache CGI/SMTP, private SQLite archiving, Make-driven developer tooling, and KampányMűvek Engine 4.0.0-alpha.17. Production deployment remains a separate, verified operation.

KampányMűvekCyberTeamDevOpsWeb Performance
WordPress migrationi18nLighthouse 100WebPAVIFApache CGISMTPSQLiteMakefileDockerKampányMűvek EngineGA4
Open entry →
Late-night engineering illustration of Facebook lead capture, webhook delivery, CRM import and PWA push, with illustrative logs and customer data
Gödi Sittes3 min

From Facebook lead to CRM customer: a day of Meta debugging, permission dead ends and a successful backfill

Completed the production Facebook Lead Ads → Gödi Sittes CRM pipeline with signed webhook ingestion, Graph API retrieval, idempotent PostgreSQL processing and PWA push notifications. Four accessible historical leads were backfilled, and synthetic test records were cleaned up.

Gödi SittesIntegrationsDevOps
Meta Lead AdsFacebook Graph APIwebhookPage Access TokenPostgreSQLbackfillPWA push
Open entry →
Backup audit illustration with production storage layout, data classification and recovery planning
KampányMűvek2 min

Backup audit: identify persistent data before writing the cron job

We began auditing the production directory layout and persistent state of five KampányMűvek-managed sites to make daily backup design follow real recovery needs.

KampányMűvekDevOpsInfrastructure
backupstorageauditrecovery
Open entry →
Checkout incident illustration showing stale payment-state handling and a PayPal hotfix
Columbia Games2 min

P1 checkout incident: a stale paymentType blocked PayPal initialization

A previously retained paymentType could break live PayPal checkout; we fixed it with authorized-method normalization, a checkout regression test and a controlled production hotfix.

Columbia GamesE-commerceIncident
PayPalP1checkoutregression
Open entry →
Architecture illustration of switchable entitlement providers, adapters and queue processing
Columbia Games2 min

Deity integration: building a provider-independent entitlement framework

We separated external digital entitlements into provider adapters and queue-driven state transitions so Deity can later be disabled or replaced without rewriting commerce logic.

Columbia GamesArchitectureIntegrations
Deityentitlementsadapterqueue
Open entry →
B2B ecommerce illustration showing retailer product visibility and a Net 30 payment flow
Columbia Games2 min

CCM v2: a dedicated retailer catalog and Net 30 checkout without mixing release scopes

A Columbia Games commerce systemében viszonteladói termékláthatóságot, kosárszabályokat és 30 napos fizetési határidőt építettünk, külön választva a WordPress-kivezetéstől.

Columbia GamesE-commerceBackend
CCM v2B2BNet 30checkout
Open entry →
Technical illustration of HarnQuest administration, toggle persistence and database verification
Columbia Games2 min

HarnQuest admin: clicking Save is not proof that a checkbox value persisted

We added HQ status management for customers, then fixed a legacy-data persistence bug with database verification and regression coverage.

Columbia GamesBackendAdmin
HarnQuestlegacydatabaseregression
Open entry →
Infrastructure illustration of localhost-bound Docker services, SSH controls and server hardening
Columbia Games2 min

Production hardening: container ports and SSH protection must be explicit

We bound sensitive Docker services to localhost, strengthened server access controls and improved diagnostic logging in the Columbia Games infrastructure.

Columbia GamesDevOpsInfrastructure
DockerSSHFail2banNginx
Open entry →
Conceptual illustration of the Google Reviews integration on the Gödi Sittes website
Gödi Sittes2 min

Gödi Sittes: Google reviews became a reusable Engine component

We shipped live Google Reviews display, resolved API access issues and kept each site's copy and visual identity under local ownership rather than hardcoding it into the Engine.

Gödi SittesKampányMűvekMarketing
Google ReviewsAPIi18nproduction
Open entry →
Illustration of a marketing dashboard with comparisons, refresh status and anomaly warnings
KampányMűvek2 min

Marketing dashboard: metrics need actionable warnings as well

We extended the initial Analytics and Ads views with prior-period comparisons, refresh visibility, campaign-status breakdowns and alerts for campaigns that are enabled but not delivering.

KampányMűvekMarketingAnalytics
GA4Google Adsdashboardwarnings
Open entry →
Conceptual illustration of GA4 and Google Ads data flowing through the Engine into a native dashboard
KampányMűvek2 min

Marketing data reached the Workshop, while Google API logic stayed in the Engine

The native KampányMűvek Workshop gained GA4 and Google Ads views without moving authentication, data fetching or report normalization out of the CLI layer.

KampányMűvekMarketingAnalytics
GA4Google AdsSwiftUICLI
Open entry →
Technical illustration showing Lighthouse quality audits surfaced in the native Workshop
KampányMűvek2 min

Lighthouse reports in the Workshop without turning the UI into a report parser

The latest Lighthouse audit for each managed website became visible in the Workshop while GitHub Actions discovery and status interpretation remained the Engine's responsibility.

KampányMűvekPerformanceQA
LighthousePageSpeedCISwiftUI
Open entry →
Custom technical illustration of the move from a web desktop shell to a native SwiftUI client
KampányMűvek2 min

We restarted the desktop Workshop: native SwiftUI replaced Rust/Tauri

We wanted a desktop application around the web-based Workshop, but even after several fixes the Tauri/Rust shell kept bringing web-oriented compromises back into the product. By the end of the day, the Engine remained the headless control plane and the client became a thin native macOS SwiftUI application.

KampányMűvek
SwiftUImacOSdesktoparchitecture
Open entry →
Custom technical illustration of parallel Hungarian and English Worklog content behind the same QA gate
Portfolio2 min

After 102 entries, we stopped managing translation backlog and made bilingual content the default

Translating the full Worklog showed that deferred localization is technical debt. After reaching 102/102, we changed the workflow so every new entry is written in Hungarian and English together and verified by the same QA chain.

Portfolio
i18nWorklogcontent architectureQA
Open entry →