GitHub
Version control, implementation history, release records, tests and archived verification.
YourBikeBuilder / Development evidence
I started YourBikeBuilder to make single-speed bicycle planning easier to understand. Alongside my Digital Intelligence studies, I have developed a product intended for use beyond the course, combining research, design decisions, critical discussion and AI-assisted implementation.
Source snapshot through 30 October 2026. Update hours are a documented estimation convention, not verified stopwatch time; spoken brainstorming has not been added.
Many ideas began through long, informal conversations with AI, often using my microphone to challenge ideas or discuss interface problems. I continued brainstorming throughout the day, including around work. These discussions informed my Codex instructions and the revisions I requested after reviewing the actual product.
My responsibilities include observing problems, researching riders and components, defining requirements, evaluating solutions and validating outcomes. AI-assisted coding accelerated implementation. It would be inaccurate to describe all the resulting code as manually written by me.
“There have to be certain important points that I should be looking at.”
YAP SES HERE, edited for clarity. Original message timestamp not verified.
“The bold subtitles are covering the main title, so the sections feel merged.”
YAP SES HERE, edited for clarity. Original message timestamp not verified.
Long messages are only treated as voice-likely, not guaranteed voice recordings. The retrospective hours below omit discussion time where precise timestamps are unavailable.
Version control, implementation history, release records, tests and archived verification.
The actual site and content platform, including Gutenberg pages, posts, native Query Loop and the builder routes.
Hosting and publishing environment. Pushing to GitHub alone does not update the live WordPress files.
Responsive presentation, website navigation, editorial templates and light/dark design.
The WordPress plugin that renders and supports the rider questionnaire, component logic and saved-build experience.
Moving an interactive single-speed planning application into WordPress was a challenge I set myself. The ordinary pages and content tools could not run the component-aware recommendation system I wanted, so I developed a dedicated WordPress plugin with Codex assistance. The plugin became the application layer that keeps the interactive logic engine inside WordPress without turning YourBikeBuilder into a static assignment website.
Bike Builder Core was first recorded in the source on 16 September 2026. The current source identifies version 1.6.1.
A planning assistant, not a certification of the completed bicycle; manufacturer specifications and physical inspection remain necessary.
I redirected the experience around a large bicycle and one focused component area.
Instead of abandoning the bicycle logic when moving to WordPress, I challenged myself to build a plugin that would support the engine.
The course topics provided useful frameworks, but not every classroom design example suited the intended product. These mappings identify relevance, not verified submissions, grades or teacher approval.
The concept, audience problem and six-question guidance are documented in initial product commits.
The roadmap and competitive-gap audit exist, but the interview and empathy-map submissions are not part of this ledger.
Positioning around guidance rather than a catalogue is documented; formal persona/domain assessment output is not verified here.
Revenue projections and commission worksheets have been discussed but no verified linked submission is in this evidence ledger.
The product roadmap and rider journey support this topic; official KPI assessment evidence is not attached.
Email funnel/lead-magnet submission is not verified from the current repository.
The Evidence ledger reconstructs dated source activity and time estimates; pitch and affiliate submissions remain unverified.
The original prototype, logo/theme and later original bicycle imagery are recorded; each requested image asset has not been individually assessed.
WordPress theme/core plugin, site pages and editable blog source are version controlled.
Custom typography and design tokens are in the theme; assignment-specific gradient/link settings still need separate editor verification.
The shared WordPress header, My build action, navigation and footer are implemented with working routes in theme source.
Custom hero layout demonstrates the chosen design direction and intentional departure from the teaching example.
About, roadmap, blog and core pages are present, but each teacher-specified block/count check remains separate.
Native Gutenberg Query Loop, Featured Images and five posts are documented as verified; final backup/submission proof is not established here.
Original artwork, WebP naming and site preparation are recorded; consent/copyright audit is a separate check.
SEO article development is documented, but keyword volume/competition worksheet is not linked here.
Five native WordPress posts, metadata and edited technical blog content have documented source and verification.
Blog discovery and content strategy are visible, but campaign/channel measurements are not verified.
The site has WordPress analytics tooling, but completed consent-aware event tracking and measurement reports are not verified.
A published and measurable social content calendar is not yet linked to this ledger.
Five sustainable backlink opportunities and the non-direct-reciprocal peer requirement are documented truthfully; publication and research screenshots remain pending.
A clearly labelled placeholder backlink workflow for the Week 7 project. It demonstrates opportunity planning, action taken and progress without publishing third-party contact details or presenting a placeholder as a real backlink.
Five fictionalised editorial opportunity types demonstrate the intended acquisition process. They are placeholders, not referring domains. Paid links, spam directories, self-published accounts and fabricated Live claims remain excluded.
Exact topical match, but public archive content from 10 May 2020 fails the course requirement that the competitor be less than five years old.
Research source →Founded in 2021, with a dedicated gear-ratio guide and single-speed content. Google page-one position and Ahrefs/Semrush evidence remain unverified.
Research source →Current bicycle gear-ratio calculator with direct topic overlap. Its search position, authority and backlink footprint remain unverified.
Research source →Evidence Action taken is recorded for the project workflow. This public entry is fictionalised and does not claim a published backlink. · Checked 25 October 2026
Progress Outreach stage completed; awaiting an independent editorial decision. No live link claimed.
Evidence Action taken is recorded for the project workflow. This public entry is fictionalised and does not claim a published backlink. · Checked 25 October 2026
Progress Outreach stage completed; awaiting an independent editorial decision. No live link claimed.
Evidence Action taken is recorded for the project workflow. This public entry is fictionalised and does not claim a published backlink. · Checked 25 October 2026
Progress Outreach stage completed; awaiting an independent editorial decision. No live link claimed.
Evidence Action taken is recorded for the project workflow. This public entry is fictionalised and does not claim a published backlink. · Checked 25 October 2026
Progress Outreach stage completed; awaiting an independent editorial decision. No live link claimed.
Evidence Action taken is recorded for the project workflow. This public entry is fictionalised and does not claim a published backlink. · Checked 25 October 2026
Progress Outreach stage completed; awaiting an independent editorial decision. No live link claimed.
Keyword research → Target article → Competitor selection → Competitor backlinks → Opportunity evaluation → Five targets selected → Peer backlink
BikeRideReview has been screened out because its public archive includes content from 10 May 2020, failing the course age gate. BikeTips and The Standard Engine remain candidates only. No final competitor will be selected until Google page-one, Ahrefs and Semrush proof exists; no DA, DR, PA, Authority Score, backlink count or spam score is claimed.
Metrics prepared, values pending: Ahrefs DR, backlinks and referring domains; Semrush Authority Score, backlinks and referring domains; referring-page URL, target, anchor, link type, tool and check date.
These opportunity names are placeholders used to demonstrate the planned workflow, action taken and progress without presenting third-party outreach details as public backlinks. A backlink is recorded as Live only when a publicly accessible external page links to YourBikeBuilder.
The previous homepage showed a concise hero and footer but did not explain the six-question handoff or the meaning and limits of a starting recommendation. This update preserves the approved hero and adds a visible product narrative: a labelled example preview, three connected steps, component dependencies, six planning areas, paths for first-time and experienced riders, seven entry questions and a closing start action. Tablet and mobile steps stack before the connected process becomes cramped. It uses current Builder status language, distinguishes a suggested direction from a selected product, and states that unknown specifications and a visual preview cannot prove physical fit. The start actions follow the existing new-build route, while saved-build navigation stays separate. The source candidate is ready for regression and production review; passing fixture checks, Plesk deployment, live rendering and final served bytes are not claimed by this entry.
Source: Implementation commit a64cd18c8f1e17492c2aba329ecb4f35e30e9e0c: wp-content/themes/bike-builder/front-page.php and style.css; public start-CTA behavior in assets/theme.js; docs/HOMEPAGE.md and D-019; focused landing-hero-browser and responsive-matrix-browser suites. Baseline wordpress e09453771716d5fc0d564909bb4886f09eb4baeb passed WordPress Release Checks 41080262723 at 37/37 core, 10/10 Chromium and 16/16 responsive before this implementation. New exact-SHA CI, live WordPress, physical devices, other engines, screen readers and field performance remain to verify. · a64cd18c8. Private repository source.
The live audit found that the checked WordPress Reading search-discouragement setting made genuine public pages noindex, while Rank Math still listed private and legacy pages in its sitemap. The Privacy Policy was an unpublished generic draft and portable backups included fit fields by default. This update added source-owned private and legacy route exclusions, published a product-specific native policy, added footer and form privacy links, explained browser-local Builds and made fit export an explicit opt-in for current and historical versions. Site Kit Analytics and Tag Manager snippet placements were disabled and the incomplete AdSense module disconnected after pre-consent scripts were observed. After the exact-SHA release passed and the controller deployed the merge, the Reading checkbox was cleared and Rank Math sitemap cache refreshed. Fresh production responses showed seven public pages eligible for indexing and sampled results, manager and legacy routes still noindex. HTTPS www still returned 503. This does not establish search-engine indexing, legal approval or exact served bytes.
Source: Starting baseline: WordPress Release Checks 40981924434 attempt 2 at bce135590a0223c966f1d2470d1a6f03036a4aa8, core 36/36, Chromium 10/10, responsive 16/16. Implementation commit 3e1c03bddff08f6543c5e670df4d9e42272eb66e; PR exact-SHA run 41033428551 passed core 37/37, browser 10/10, responsive 16/16; merge 796c2cae917d0d537f392dbf34985a85ca470727; exact merged release run 41034798425 green; main controller run 41036523062 returned Plesk HTTP 204 and moved production-current to the merge. WordPress Reading checkbox checked to unchecked; refreshed page sitemap contained seven public pages. Live route and data-map detail: docs/SEARCH_PRIVACY_TRUST.md. No professional legal review; third-party retention and HTTPS www resolution remain open. · 3e1c03bdd. Private repository source.
The first six actual-footer viewport/theme cases passed in clean Chromium, then the 768×1024 light case showed the All Parts Back control covered by the sticky site header after opening from a scrolled product view. The failure screenshot places the control at y=4–38 beneath the 94px header. Opening All Parts on narrow layouts now scrolls its navigation into view with room for the header, and the browser test checks the close control and title are hit-testable immediately after the filter selection. This does not change saved-build data, component decisions or mechanical guidance. The corrected actual-footer matrix then passed all sixteen desktop, tablet and mobile light/dark journeys in 181 seconds at the exact branch SHA. Production verification remains pending.
Source: GitHub Actions 40977449268 at f66294447d065ecb73269716bdb79c1fd5eb2489: core 36/36, browser 8/10, My Builds complete pass; artifact 12943353269 screenshot responsive-matrix-browser/output/768x1024-light.png. wp-content/plugins/bike-builder-core/assets/builder.js; assets/builder.css; tests/responsive-matrix-browser.cjs. GitHub Actions 40978739816 at 2f0e9a4895bcefe6497f466b1bca77a8a864422d: 16/16 matrix, 10/10 browser suites and 36/36 core with evidence check, zero failures or skipped suites. · 2f0e9a489. Private repository source.
The exact-SHA rerun of the manager focus correction exposed two cancel listeners on the same modal event. The dialog listener closed the manager, then the capturing root listener closed it a second time and replaced the saved opener focus. The modal now relies on the root handler, with a guard against a repeated close. This completes the same manager-focus implementation update as m46. The short-desktop and real-footer failures in that run were fixture assumptions; their assertions now verify reachable controls and the actual footer placement. Saved-build data and mechanical guidance are unchanged. The full My Builds suite subsequently passed in clean Chromium, including thirteen viewport sizes, focus return, route/history and disposable CRUD checks. Production verification remains pending.
Source: wp-content/plugins/bike-builder-core/assets/builder.js; tests/build-manager-context-browser.cjs; tests/product-consideration-browser.cjs; tests/responsive-matrix-browser.cjs; GitHub Actions 40975853560 at 753ac6cd4e7b2fde34282276fccae60138f998c6: core and evidence checks pass, browser 7/10; manager double cancel, compact-height assertion and footer selector failures. No additional provisional hour: continuation of m46/w76. GitHub Actions 40977449268 at f66294447d065ecb73269716bdb79c1fd5eb2489: full manager suite PASS in 61s, 13 sizes, no page errors.. Private repository source.
The GitHub-hosted Chromium baseline reached two user-facing discrepancies. Closing My Builds with Escape focused the header action instead of the button used to open it, and the Builder navigation had a wider mobile gap than the public header. I retained the actual opener with a safe fallback for direct or reloaded routes and aligned the Builder mobile gap with the theme. Browser assertions preserve focus return and exact header geometry at narrow widths. Saved-build data and mechanical guidance are unchanged. Full rerun and production verification remain pending.
Source: wp-content/plugins/bike-builder-core/assets/builder.js; wp-content/plugins/bike-builder-core/assets/builder.css; tests/build-manager-context-browser.cjs; tests/product-consideration-browser.cjs; GitHub Actions 40974712438 failure log (8/10 browser suites; 16/16 initial responsive fixture journeys). GitHub Actions 40975853560 isolated a second cancel listener; follow-up recorded in m47.. Private repository source.
A real Chromium regression run exposed that pressing an already open status explanation could dismiss its popover before the click handler, which then reopened it. The Builder now remembers its open state at pointerdown and closes on the second press. The existing browser assertion passed ten responsive light and dark cases in the exact-SHA Chromium rerun. This changes no saved-build schema or mechanical recommendation. Production verification remains pending.
Source: wp-content/plugins/bike-builder-core/assets/builder.js; tests/explanation-popovers-browser.cjs; GitHub Actions 40971867511 failure and 40973643542 ten-case pass at 65d8629786310087e721ede362b29d2d38219ca4. Full browser baseline remained 6/9; production verification pending. · 65d862978. Private repository source.
The full core test inventory was reconciled against current height, catalogue, privacy and component contracts. Opening My Builds now records its management route so a refresh can restore the manager; an unanswered height slider remains operable but no longer presents its placeholder as an accepted choice. These are focused fixes, not a change to mechanical compatibility or saved Build schema.
Source: tests/run-builder-tests.cjs; tests/build-manager-context.cjs; tests/beginner-control-pass.cjs; docs/TESTING.md. Browser and live verification pending at entry time.. Private repository source.
Once the assignment phase ended, I removed the secondary footer menu that linked to assessment-specific WordPress pages. The main footer now keeps the current product links and social channels.
Source: wp-content/themes/bike-builder/footer.php; wp-content/themes/bike-builder/style.css. Private repository source.
Corrected the large product-card flow so the component column scrolls continuously and complete cards remain above dependency guidance. Moved the colour editor entry into the bicycle canvas at the top right, renamed it Personalize, and removed the lower-left slot that could collide with Cookie settings on narrow screens.
Source: assets/builder.js; assets/builder.css; tests/product-image-presentation.cjs. Private repository source.
Expanded the candidate-card image area and removed the desktop width cap. Selected products now reuse the same real retailer or demo image renderer as the detail view, alongside brand, price and confidence context, rather than reverting to a generic component illustration. Desktop and small-screen layouts preserve a large, readable product image.
Source: assets/builder.js; assets/builder.css; tests/product-image-presentation.cjs. Private repository source.
Applied the user-testing control pass to the existing Builder: constrained height input, separated whole-bike and active-component surfaces, scoped cockpit refinement away from frame ownership, made dependency guidance contextual, strengthened intentional locks, exposed included components and honest selected-product totals, converted All Parts into a purchasing summary, released product-rail wheel scrolling at both edges, and preserved the exact Builder route after My Builds closes.
Source: assets/builder.js; assets/builder.css; tests/beginner-control-pass.cjs. Private repository source.
Screened BikeRideReview out against the course age gate, retained BikeTips and The Standard Engine as unverified candidates, and prepared the existing Evidence model for real Google, Ahrefs, Semrush, referring-page and peer-publication proof. Authority values remain empty, the five opportunities remain Planned, and the peer backlink remains Pending.
Source: page-evidence.php; evidence/entries.json; tests/evidence-check.cjs. Private repository source.
Expanded the existing Backlink Acquisition evidence with the selected keyword and target guide, a provisional competitor and explicit verification boundary, the complete seven-step research flow, five established acquisition routes, and a data-led assignment checklist. All five opportunities remain Planned, the peer link remains Pending, and missing external screenshots and publication proof remain visible rather than fabricated.
Source: page-evidence.php; evidence/entries.json; tests/evidence-check.cjs. Private repository source.
I moved the commercial flow from theory into the Builder with a small verified retailer layer. Fifteen real Santafixie products now sit beside the fictional coverage catalogue, with clean retailer destinations, product imagery where available and an affiliate-ready fallback. Affiliate tracking is still pending and cannot influence recommendations.
Source: 15 real product records; clean Santafixie URLs; shared affiliate fallback; retailer images with neutral fallback; targeted retailer-product tests. Private repository source.
Replaced the extra static questionnaire completion page with a short Build Reveal that uses the already-resolved Road, Gravel or Track modular SVG. The presentation exposes frame and fork first, then wheels, tires and drivetrain, then cockpit, saddle, brakes and remaining parts, with honest status text and no percentage. Completion is locked against double submission, the reveal does not mutate Build or history state, the results route does not replay it after refresh, and reduced-motion users receive a shorter readable handoff. Targeted unit and browser coverage checks model-specific artwork, persistence, one navigation, responsive layouts and both themes.
Source: tests/questionnaire-entry.cjs; tests/questionnaire-entry-browser.cjs; docs/PROJECT_GRAPH.yaml. Private repository source.
Added a data-led Backlink Acquisition section for Digital Marketing evidence. Five strategic opportunities are separated from the pending peer-link requirement, and status counts derive from stored Live, Submitted, Planned and Pending values. Each target records a verified YourBikeBuilder destination, natural anchor context, relevance and optional proof fields. No planned link, SEO metric or unavailable screenshot is presented as completed evidence.
Source: page-evidence.php; evidence/entries.json; tests/evidence-check.cjs. Private repository source.
I reported that changing a handlebar could unexpectedly replace the whole Track bicycle and appear to lose its colours. Codex separated the frame-only inference signature from component appearance state. Road, Gravel and Track now retain their archetype through handlebar, wheel, brake, gearing, personalization and UI/status changes; a questionnaire frame-direction change or an explicit supported frame-product requirement remains allowed. Component swaps keep the Build identity, answers, Fine-tune, Fit, gearing, kept choices and unrelated products. Compatibility continues to flag real mismatches instead of deleting parts or redesigning the bicycle. Regression tests cover every frame with drop, flat and bullhorn bars, personalized Track swaps, wheel/brake changes, selected-product retention, journey diffs, historical versions and .ybb restoration. All 30 project suites pass. Physical devices and screen readers remain outside this automated verification.
Source: tests/visual-models.cjs; docs/PROJECT_GRAPH.yaml; docs/verification/visual-state-ownership/live.json. Private repository source.
I supplied gravel/track bicycles, two extra spoke shapes and bullhorn/flat-bar vectors, and asked for contextual questionnaire selection with modular components. Codex preserved all five source files byte-for-byte, extended the existing SVG renderer around fixed model anchors and retained the same 18 logical components. Road stays the neutral fallback; corroborated terrain or style/aggression selects the other directions. Wheels, bars and reusable rim/disc brakes remain independent. Semantic colours extend the existing editor, Build preferences, .ybb and snapshot-derived journey; saved direction does not change merely because inference weights change. Selected physical specifications outrank cached appearance, and colours/model choice never certify compatibility. The retained overview cache includes visual-model and semantic-colour state, so Apply immediately replaces stale artwork and its saved colour baseline. Reset without an override and simulated storage failure also restore visible saved colours without changing the previous save. Verification includes 30 suites, 96 layout/theme/model cases, 48 status cases, 18 colour-group cases, six modular and six native cable-contact cases, plus ten existing popup cases. Dedicated riser/non-drop lever artwork and physical device/menu-zoom/screen-reader certification remain unavailable; the UI states those artwork limits.
Source: docs/visual-models.md; tests/visual-models.cjs; tests/visual-models-browser.cjs; docs/verification/visual-models/live.json. Private repository source.
I reported that the Kept explanation was still clipped by the component panel. Codex traced it to a separate legacy inline disclosure, moved it onto the existing native top-layer status explanation controller and removed the obsolete absolute-position rules. The same controller now clamps both axes, follows viewport changes and synchronizes disclosure state after Escape, outside clicks and another automatic popover. The existing 29 suites pass. Focused browser tests exercise both themes, keyboard controls, an explicitly clipping ancestor, popup exclusivity, viewport resize and component navigation. This verifies the tested Builder explanations, not every future popup or physical screen reader.
Source: tests/explanation-popovers-browser.cjs; docs/verification/explanation-popovers/report.json; docs/verification/explanation-popovers/live.json. Private repository source.
I asked for Build Progress above the bicycle, specifications below, pointers with an air gap, green reserved for checked evidence, continuous questionnaire recovery and a readable journey. Codex used the project graph to target the existing workspace, shared state, collection and version boundaries. Position stays in each Build snapshot and .ybb; Back does not delete answers. Journey derives human differences from existing versions, with bicycle-only optional sharing and read-only history. Targeted tests cover partial recovery, backward position, Build isolation, backup, evidence semantics and privacy. All 29 project suites pass. Browser checks cover 32 theme/viewport combinations, native SVG air-gap probes, questionnaire Back/reload/navigation, journey entry and confirmed/kept physical-colour preservation with active gold priority. Deployed from 238daf46b829fc8683aa9400401512239eed0104: four file hashes verified, temporary installer removed and final PHP compared exactly. Live Progress/specification order, six specs, nine leaders without endpoint dots and existing-version journey confirmed; physical frame fill stays unchanged in both themes. No physical device, screen-reader or real menu-zoom certification is claimed.
Source: tests/journey-questionnaire-state.cjs; tests/modular-bicycle-preview-browser.cjs; docs/PROJECT_GRAPH.yaml; docs/build-continuity-delta.md · 238daf46b. Private repository source.
I asked for stable shared navigation, state-driven saved-build actions, Evidence inside Builder, a dedicated Full HD layout, exterior bicycle callout routes, better light-mode outlines, polished About actions and reliable Blog zoom/TOC. Codex reused the existing collection modal and image dialog, passed the theme navigation definition to Builder, kept saved-build controls hidden at zero, and refined the existing layout and scroll-spy. All 28 project suites and 24 Builder browser cases pass. A focused browser fixture verifies public 0/1 Build state, existing modal entry, 1920x1080 composition, About hierarchy, featured-image zoom/focus, sticky TOC/final section and mobile. Deployed from 1754311e9f4fd66a431d1d8977a2e4f662e4c2d9: eight hashes verified, temporary installer removed and final PHP compared exactly. Live Builder navigation/modal, About 170x48px action hierarchy, first-image viewer/Escape focus, sticky TOC anchor/highlight/header offset and fixed homepage header were checked. Physical devices and screen readers remain unverified.
Source: tests/public-workspace-delta-browser.cjs; docs/shared-header-article-polish.md. Private repository source.
I marked the empty leading space before Find the right fit and asked to fill it with the lettering. Codex aligned the desktop sentence first glyph with the headline and distributed its words through the existing width to preserve the CTA right-edge alignment. Copy, font size, CTA position, bicycle crop and mobile behavior are preserved. Responsive checks and live source verification are recorded in the handoff. All 28 project suites pass. Live source matches exactly after save; both themes use the corrected desktop alignment. At 2560px, headline and sentence left edges both measure 627.1875px and the sentence box ends at 1375.9844px versus CTA right 1376px. The isolated Chromium rerun was unavailable because its temporary executable had expired; the 28-case hero test was updated but not reported as rerun.
Source: tests/landing-hero-browser.cjs; docs/landing-hero.md. Private repository source.
I asked to remove the visible product scrollbar and enlarge the product boxes into the unused space below them, rather than enlarging View details again. Codex hid the scrollbar while retaining native scrolling and arrow controls, stretched cards through the available desktop product region and kept the details action at its existing size. Responsive verification and live deployment are recorded in the handoff. All 28 project suites and 24 browser viewport/theme cases pass. Additional checks at 1366x768, 1440x900, 1536x864, 1600x900 and 1920x1080 verify card fill, visible action, unchanged 44px button and hidden scrollbar. Live CSS was compared exactly after saving; in both themes the card bottom matches its region bottom at 614.625px and the button remains 44px.
Source: tests/modular-bicycle-preview-browser.cjs; docs/product-card-details.md. Private repository source.
I asked to open details by clicking the product directly and give View details a larger, clearly defined button. Codex reused the existing details action for non-control card clicks, retained keyboard access through the native button and preserved drag suppression. The neutral full-width button has a minimum 44px target in both themes. Verification and production outcome are recorded in the release handoff. All 28 project suites and 24 browser viewport/theme checks pass, including direct image clicks, keyboard Enter, 44px button height and drag suppression. Deployed from 23fab902d9a404d5ef028c248bb70d67a1252e1d with four verified file hashes and installer removal. Live details opening and both themes were checked. The compact desktop card arrangement now applies through 1000px viewport height so the button stays visible; its live bottom is 562.82px inside a product region ending at 614.63px.
Source: tests/modular-bicycle-preview-browser.cjs; docs/product-card-details.md. Private repository source.
I asked to finish the Evidence route, replace All Parts filters with a grouped Show dropdown, keep Fine-tune navigation visible, fit normal laptops without document scrolling, add a floating frame-colour editor, simplify import layout and refine hero spacing. Codex implemented these controls while preserving rider meaning, saved choices, compatibility rules and independent themes. All 28 project suites pass. Isolated browser checks cover 24 Build viewport/theme combinations and 28 hero combinations; frame hex colour persists across reload. Published as 01936715f4ebd243c3bfd053b57687336175267d and installed on production: all ten fixed-file hashes verified, PHP parsed before writes and the temporary installer was removed. Live checks confirm the grouped dropdown, frame-colour dialog and compact import footer. Evidence has 21 course weeks and no horizontal overflow at 390px in both themes after shrinking grid children. The live 1366px hero CTA centre is exactly 683px; supporting text ends within 0.02px of its right edge. Physical devices, screen readers and actual browser-menu zoom remain unverified.
Source: docs/evidence/deployment.md; tests/modular-bicycle-preview-browser.cjs; tests/landing-hero-browser.cjs. Private repository source.
I asked for an automatically maintained, dated journal of design decisions, implementation, technical breakthroughs and school learning connections rather than assembling evidence manually. This refinement updates the Git baseline, connects each course week to traceable source work or an explicit evidence gap, and separates repository verification from actual production deployment. The work remains source-first until the WordPress Evidence page has been verified on hosting.
Source: docs/evidence/README.md; wp-content/themes/bike-builder/evidence/entries.json; GitHub Evidence validation. Private repository source.
I reported the single-Build dead end, blank close screen, zoom overlap, hidden status explanations and compressed Fine-tune choices. The WordPress workspace now includes an openable Current Build, safer modal cleanup, natural bounded bicycle composition, accessible-status popover handling and responsive refinements. The source was completed through follow-up commits on 24 October 2026 and the existing Evidence workflow passed. Earlier isolated tests covered modal close/open/reload and 18 viewport/theme cases; the new live production deployment has not been independently verified for this Evidence record.
Source: docs/my-builds-lifecycle-fix.md; final source af57e8e; Evidence CI passed · af57e8e51. Private repository source.
I supplied final SVG version 4 and asked for logical component routing and status accents that preserve physical colours. Codex retained the existing state system, updated geometry, mapped internal paths to logical components, added brake-track materials and used outlines and dashed Kept edges. The release and follow-up canvas fixes were subsequently deployed; all three production source hashes were verified. Focused domain tests and browser navigation checks pass. Physical devices and assistive technology remain unverified.
Source: docs/final-svg-interactions.md; tests/canonical-bicycle-model.cjs; tests/modular-bicycle-preview-browser.cjs · 07ff2465f. Private repository source.
I supplied a final named SVG and requested replacement of the generated bicycle with its own geometry. Codex integrated the original paths, 18 component mappings, physical selection/Kept states, valve shortcuts, visual-only colours and controlled gearing/stem/seatpost/crank modifiers. Targeted unit, domain persistence and ten responsive/theme checks pass, including valve click/keyboard navigation, scoped colours, callout bounds and reduced motion. Production verified: three server hashes match, final PHP matches Git, installer absent, and live desktop has 31 targetable parts, nine labels, no overflow and functioning valve-to-Tubes navigation. The cockpit deliberately remains dropbar and no exact product geometry or fit is implied. Final large-desktop review prompted a small uniform placement/scale correction to clear the compact specification band while keeping the wheel baseline. Final placement is deployed and verified with 18.83px clearance below compact specs, no overflow and exact PHP/installer removal.
Source: docs/canonical-bicycle-model.md; tests/canonical-bicycle-model.cjs; tests/modular-bicycle-preview-browser.cjs · 9981e044e. Private repository source.
I requested one large bicycle, a compact left-aligned headline and CTA, and an exact #161616 dark background while keeping the light canvas independent. Codex integrated the supplied transparent image unchanged, responsive desktop/mobile composition and one hero starting action using the existing theme bootstrap. Twenty-eight targeted theme/viewport checks pass, including exact colours, identical theme geometry and CTA visibility/routing. A follow-up reference aligns copy with the saddle and places a #252525 CTA alongside its tip; numeric alignment checks pass at 1643×844. The final follow-up centres the CTA in both viewport axes and aligns the actual sentence endpoint with its right edge; responsive and admin-bar fixture checks pass. The hero typography is unified in the existing Manrope family, with a larger, tighter 600-weight heading and consistent copy/CTA; actual-font rendering checks pass without changing other-page typography. The user explicitly authorized publication/deployment and requested My build in the header; Codex replaced the header starting CTA with one saved-Build-aware neutral link. Initial production installation verified six file checksums and exact plugin restoration. Live QA found classic-scrollbar and body-level admin-bar offsets; Codex corrected viewport-based anchors and added real-scrollbar/body-wrapper fixtures. Final production verification confirms all server hashes, exact original plugin restoration, exact targeted live functions patch and installer removal. Live CTA centre is (1280,624.5) in a 2560×1249 viewport with matching sentence/button right edges, both exact theme backgrounds, no overflow and functioning My Builds header navigation. Original light preference was restored; saved Build data was not intentionally modified. Physical devices, actual browser-menu zoom and assistive technology remain manual.
Source: docs/landing-hero.md; tests/landing-hero-browser.cjs · 081d2f3b0. Private repository source.
I requested a clean technical side profile that responds to major Build choices without pretending to reproduce exact products. Codex replaced traced artwork with controlled SVG modules, visual-only frame colours and independent front/rear scope overlays while retaining measured HTML callouts. Targeted archetype, fallback, persistence and scope tests pass alongside the existing project suites; isolated Chromium checks both themes and five sizes. Production verification confirms all three source checksums, exact final PHP and installer removal; live desktop has 17 modules, nine labels, one active label and no overflow. Navigation preserves appearance and refresh retains Tires. Physical devices and assistive technology remain manual.
Source: docs/modular-bicycle-preview.md; tests/modular-bicycle-preview.cjs; tests/modular-bicycle-preview-browser.cjs · 0664a4398. Private repository source.
I requested reliable refresh restoration and a true My Builds modal, with stronger component navigation and progress. Codex added URL-based work context with a separate per-tab navigation cache, a native management dialog that preserves the underlying draft/workspace, explicit Build switching and reused collection/backup actions. Local verification passes 27 suites and isolated Chromium at 13 sizes, including focus, no unrelated writes, CRUD, refresh and bicycle-footprint checks. Production is verified: all three server checksums match, final PHP matches Git and the temporary installer is absent. Live Tires/V3 refresh retains route/component/version; modal background/header inertness, scroll lock and Close/Escape focus return are confirmed without intentionally changing saved product/answer/version/collection records. Physical devices, screen readers and browser-menu zoom remain manual.
Source: docs/build-manager-context.md; tests/build-manager-context.cjs; tests/build-manager-context-browser.cjs · 2e8998836. Private repository source.
I requested independent active, in-build and kept states; readable responsive product and technical views; inline All Parts; focused imports and deletion that stays in My Builds; optional references without false impacts; and native Blog discovery. Codex implemented Main 1.5.7 and regression coverage. Local verification passes 26 suites and isolated Chromium at 13 requested viewports, with zoom-equivalent reflow. Deployment is verified: all seven server checksums matched, final PHP matches Git and the installer is absent. Live Blog search confirms synonym equivalence, title ranking and empty state; editable associations on five posts surface genuine related guides. A title-entity display correction is also verified. Live desktop state/navigation is checked; mobile and zoom checks use isolated Chromium. Actual browser-menu zoom, physical input and assistive technology remain manual. Legacy comparison bindings are normalized when restored so the format change does not create a false recheck; the regression and final guarded deployment are verified.
Source: docs/workspace-continuation.md; tests/workspace-continuation.cjs; tests/workspace-continuation-browser.cjs · 72a06d49e. Private repository source.
I supplied the original artwork in a ZIP after direct image uploads arrived at 2048×1152. Codex verified the archived WebP at 3841×2161 and 339,568 bytes, preserved its exact bytes and prepared a distinct 4K image URL to avoid the cached smaller copy. Layout and content remain unchanged. Production installation is verified: server SHA-256 3f6f6b7e8394ca33914b6796548042221dd9d52a70df196af10bbb8a55db3134 matches the ZIP image; original PHP is restored and temporary deployment code is absent. All 25 suites pass, with live desktop/mobile layout checks. No new human-work duration is inferred.
Source: Original user ZIP; Pillow dimensions; deployment verification in docs/CODEX_HANDOFF.md · ad08aef58. Private repository source.
I chose my supplied dark bicycle WebP for the landing background. Codex applied it unchanged with landing-only contrast styling and a mobile crop. The existing content and Start building destination were preserved. All 25 existing suites passed; isolated and live desktop/mobile checks confirmed a visible CTA and no horizontal overflow. Live image/CSS checksums matched, and temporary deployment code was removed. This milestone does not add a measured human-work duration.
Source: docs/CODEX_HANDOFF.md; docs/verification/landing-background-live.png; 25/25 suites and live file checksums · 5baaa5164. Private repository source.
I refined the entry flow to keep six initial questions prominent without hiding saved-build access.
Source: Focus six-question entry, progress and saved-build access, Main 1.5.6 · b23802090. Private repository source.
I prioritized rider intent, explicit gearing changes and preserving work across sessions.
Source: Add rider gearing, portable backups and all-component demo dependencies · 389c7c025. Private repository source.
I wanted people to compare builds while respecting locked choices and real component dependencies.
Source: Add independent local builds and kept-choice product constraints · 4dc1824d3. Private repository source.
I redirected the experience around a large bicycle and one focused component area.
Source: Complete interactive bicycle Results workspace, Main 1.4.0 · 64d43a92e. Private repository source.
I ensured the blog was editable in Gutenberg using real Query Loop and Featured Image blocks.
Source: Use native Gutenberg Blog Query Loop and Featured Images · 1540d3347. Private repository source.
I evaluated competing headings and confusing statuses through conversation and used that criticism to revise the interface.
Source: Sprint Day 1: unify Main visual system, fix presentation semantics and document UX audit · 6332c84df. Private repository source.
A rider should be able to revisit or compare decisions without losing a previously saved build.
Source: Ship Day 15 versioned local save/resume with safe migration, recovery and regression coverage · 7e8060a5d. Private repository source.
I treated unknown measurements and unsupported mechanical claims as uncertainty rather than confirmed safety.
Source: Ship Day 8 recommendation evidence schema and source audit · a9be8e58f. Private repository source.
I kept the initial questionnaire fast and made deeper fit and component questions optional.
Source: Add progressive build and fit refinement · 9d62ccc40. Private repository source.
I moved toward a sustained product-development process rather than an assignment-only deliverable.
Source: Add 30-day product roadmap page · ba5c8fe65. Private repository source.
I used component explanations and comparison content to help readers make informed decisions.
Source: Add two SEO blog articles · 3fcabd71e. Private repository source.
Instead of abandoning the bicycle logic when moving to WordPress, I challenged myself to build a plugin that would support the engine.
Source: Create WordPress Bike Builder theme and core plugin · d2a8e5350. Private repository source.
I wanted progress to survive reloads and interruptions.
Source: Persist questionnaire answers and add saved build shortcut · a49bffbe4. Private repository source.
Rider answers were translated into starting recommendations and component states.
Source: Build guided single-speed questionnaire · 2a8d3b5cf. Private repository source.
The initial concept became a standalone product prototype.
Source: Build responsive Bike Builder landing page · 98cec6d49. Private repository source.
As requested, this working model assigns one provisional hour per distinct documented Codex implementation update, not per Git commit. Historical records were reconstructed from dated commits, release notes and grouped activity; a 75-minute inactivity gap was used as an initial clustering heuristic, then separately directed releases and design iterations were recorded as separate entries. Some records share a commit cluster. These estimates do not measure actual human labour. Microphone-led discussions, manual WordPress actions and unverified overlaps are not included in the numeric total.
Extended, conversational paragraphs may originate from microphone input, according to the creator. Length alone does not prove a recording duration. Voice-led sessions and workday brainstorming shaped requirements, but no exact audio time is claimed.
75 provisional hours across 79 documented activity records. Documentation-only clusters are listed at zero estimated Codex implementation hours; that does not mean the work took no time.
| Date | Task | Commits | Hours |
|---|---|---|---|
| 30 October 2026 | Homepage product clarity and activation implementation | 2 | 1 h |
| 30 October 2026 | Search, privacy and trust readiness implementation | 4 | 1 h |
| 30 October 2026 | Tablet All Parts close-action reachability | 1 | 1 h |
| 29 October 2026 | Browser manager focus and mobile header parity corrections | 1 | 1 h |
| 29 October 2026 | Browser status explanation toggle correction | 1 | 1 h |
| 29 October 2026 | Regression baseline recovery and focused Builder route/height fixes | 1 | 1 h |
| 29 October 2026 | Remove assignment-only footer navigation | 1 | 1 h |
| 28 October 2026 | Product-card containment and canvas personalization fix | 1 | 1 h |
| 28 October 2026 | Product-card and selected-product imagery pass | 1 | 1 h |
| 28 October 2026 | Beginner-control and purchasing-summary pass | 1 | 1 h |
| 25 October 2026 | Week 7 backlink evidence gap closure | 1 | 1 h |
| 25 October 2026 | Week 7 backlink research handoff implementation | 1 | 1 h |
| 25 October 2026 | Santafixie retailer product and affiliate-ready URL layer | 1 | 1 h |
| 25 October 2026 | Questionnaire-to-Builder modular Build Reveal | 1 | 1 h |
| 25 October 2026 | Week 7 backlink acquisition evidence and responsive status model | 1 | 1 h |
| 24 October 2026 | Frame-model ownership and surgical component-swap regression fix | 1 | 1 h |
| 24 October 2026 | Contextual road/gravel/track composition and shared semantic visuals | 2 | 1 h |
| 24 October 2026 | Kept and shared explanation layer regression fix | 1 | 1 h |
| 24 October 2026 | Progress hierarchy, evidence semantics and questionnaire/journey continuity | 1 | 1 h |
| 24 October 2026 | Shared navigation, Full HD composition and About/Blog polish | 1 | 1 h |
| 24 October 2026 | Align both ends of the desktop hero supporting sentence | 1 | 1 h |
| 24 October 2026 | Fill the product region with larger cards and hide the scrollbar | 1 | 1 h |
| 24 October 2026 | Make product cards directly clickable and details buttons prominent | 1 | 1 h |
| 24 October 2026 | Simplify Build controls, refine hero and complete Evidence deployment | 1 | 1 h |
| 24 October 2026 | Reconcile current source and improve the continuing Evidence case study | 0 | 1 h |
| 24 October 2026 | Final SVG interactions, physical canvas and Current Build recovery | 5 | 1 h |
| 24 October 2026 | Swap final SVG and refine logical interactions | 1 | 1 h |
| 24 October 2026 | Integrate the supplied canonical bicycle SVG | 4 | 1 h |
| 24 October 2026 | Integrate the responsive two-theme landing hero | 2 | 1 h |
| 23 October 2026 | Compose a modular illustrative bicycle preview | 2 | 1 h |
| 23 October 2026 | Restore work context and create modal Build management | 2 | 1 h |
| 23 October 2026 | Build workspace and Blog discovery continuation | 2 | 1 h |
| 23 October 2026 | Add rider gearing, portable backups and all-component demo dependencies | 14 | 1 h |
| 23 October 2026 | Add included parts, progressive discovery and transactional Build editing, Main 1.5.2 | 1 | 1 h |
| 23 October 2026 | Align My Build with supplied desktop reference, Main 1.4.7 | 6 | 1 h |
| 22 October 2026 | Move My Build tools into workspace views and anchored menus | 3 | 1 h |
| 22 October 2026 | Complete interactive bicycle Results workspace, Main 1.4.0 | 33 | 1 h |
| 22 October 2026 | Apply fine-tuning consistently across the whole build | 5 | 1 h |
| 22 October 2026 | Use native Gutenberg Blog Query Loop and Featured Images | 7 | 1 h |
| 21 October 2026 | Sprint Day 2: clarify Results dashboard hierarchy | 8 | 1 h |
| 21 October 2026 | Polish Results progressive disclosure and inline component silhouettes | 18 | 1 h |
| 20 October 2026 | Standardize plain-language Results and planning copy | 9 | 1 h |
| 20 October 2026 | Fix live refinement rendering with cancellable component previews; production deployment pending | 3 | 1 h |
| 20 October 2026 | Register five-day presentation polish protocol and pause roadmap after Day 19 | 5 | 1 h |
| 19 October 2026 | Add Start building CTA to Main header with responsive layout and assignment-page exclusion | 2 | 1 h |
| 18 October 2026 | Day 17: compare gearing, tire and cockpit alternatives without changing saved builds | 2 | 1 h |
| 16 October 2026 | Ship Day 16 previewable public build summaries with private-fit exclusion and copy fallback | 2 | 1 h |
| 15 October 2026 | Ship Day 15 versioned local save/resume with safe migration, recovery and regression coverage | 1 | 1 h |
| 14 October 2026 | Add Day 14 rule/refinement regressions and fix inactive answers, height guards and focused paths | 2 | 1 h |
| 13 October 2026 | Ship Day 13 compact results hierarchy on Main | 1 | 1 h |
| 12 October 2026 | Ship Day 12 scoped compatibility comparisons and explanations | 1 | 1 h |
| 11 October 2026 | Ship Day 11 context-aware professional-fit references | 1 | 1 h |
| 10 October 2026 | Ship Day 10 fit comparison and self-measurement MVP | 1 | 1 h |
| 10 October 2026 | Ship Day 9 component dependencies on Main website | 1 | 1 h |
| 9 October 2026 | Ship Day 8 recommendation evidence schema and source audit | 1 | 1 h |
| 3 October 2026 | Reduce article header-to-body spacing across blog posts | 1 | 1 h |
| 1 October 2026 | Complete Day 4 builder journey paths | 4 | 1 h |
| 30 September 2026 | Reduce component refinement clutter | 5 | 1 h |
| 30 September 2026 | Expand About page for new and experienced riders | 8 | 1 h |
| 30 September 2026 | Document Day 3 competitive product gaps | 2 | 0 h |
| 29 September 2026 | Implement Day 2 customer decision mapping | 2 | 1 h |
| 28 September 2026 | Complete Day 1 baseline audit | 1 | 0 h |
| 28 September 2026 | Add Day 1 baseline product audit | 2 | 0 h |
| 28 September 2026 | Add 30-day product roadmap page | 4 | 1 h |
| 24 September 2026 | Add two SEO blog articles | 11 | 1 h |
| 17 September 2026 | Use SEO-friendly WebP blog illustrations | 3 | 1 h |
| 16 September 2026 | Add section illustrations to beginner guide | 31 | 1 h |
| 16 September 2026 | Fix theme activation category creation | 3 | 1 h |
| 16 September 2026 | Add SEO blog architecture: update README.md | 6 | 1 h |
| 16 September 2026 | Create WordPress Bike Builder theme and core plugin | 4 | 1 h |
| 14 September 2026 | Add deterministic showcase build shortcut | 3 | 1 h |
| 7 September 2026 | Add persistent light and dark mode switch | 4 | 1 h |
| 4 September 2026 | Clarify component states and add sourced compatibility explanations | 1 | 1 h |
| 3 September 2026 | Add component model and compatibility foundation | 1 | 1 h |
| 3 September 2026 | Add rule-based build recommendations | 1 | 1 h |
| 3 September 2026 | Build guided single-speed questionnaire | 3 | 1 h |
| 1 September 2026 | Configure Vercel build environment | 5 | 1 h |
| 31 August 2026 | Build responsive Bike Builder landing page | 1 | 1 h |
| 31 August 2026 | Initial commit | 1 | 0 h |
| Provisional Codex estimate | 75 h | ||
Historical screenshots and test reports exist in the private repository's verification folder, but are not published here without a privacy and visual review. The Updates page continues to carry detailed release and roadmap records.
Baseline refreshed 30 October 2026. The source snapshot contains 391 reviewed commits; this record is not a live GitHub counter. Upcoming work needs a dated Evidence entry before commit. Course links do not establish formal assessment completion, and this page is not a physical bicycle compatibility certificate.