Conversation
--html-dir given as a relative path crashed filepath.relative_to(BASE_DIR) (BASE_DIR is absolute), silently producing an empty prices CSV. Resolve the path first and fall back to the raw string. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 13-recent-manifest.py: select recent-window snapshots (>=2 quarters, anchored 2024Q3, >=1 snapshot in trailing 12mo), 7 categories. - 14-recent-ipi.py: matched-model index (Jevons elementary per category, review-weighted geometric composite), quarterly + monthly, trailing-12mo headline. - run-recent-pipeline.sh: idempotent driver (download retry -> extract -> build). - gitignore: exclude html-recent/ raw HTML (22GB) and transient .out logs. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
15,150/15,309 snapshots (99%), 100% price extraction across 7 categories. Composite IPI flat over the past year (2025Q1->2026Q1: -0.3%); video -11.6%, coding -6.8%, writing -6.6%, design +2.1%. Includes per-category indices and volume-proxy weights for client-side recompute. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- code/15-build-site-data.py: reuse step 14's monthly build to emit per-category monthly index -> site/data.json (2.2 KB, trailing 12mo, rebased to window-start=100). - site/index.html + site/ipi.js: category checklist drives live in-browser composite recompute (matches pipeline's exp(Sum w.ln/Sum w)). - Verified: client recompute over all categories reproduces composite_all. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Page wasn't working and the user is building their own site. Removed site/index.html, site/ipi.js, scripts/deploy-site.sh and deleted the gh-pages branch. Kept code/15-build-site-data.py + site/data.json as the data layer for the user's own frontend. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rebuilt CSRankings-style site now hand-rolls the trend chart and sparklines as inline SVG — no Plotly/CDN. Validated: JS syntax OK, data.json contract complete, client composite reproduces composite_all (headline -2.1% trailing 12mo). Adds deploy-site.sh redeploy helper. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ting Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Serve the IPI frontend from /docs (branch mode) instead of the site/ subfolder, which Pages branch mode cannot serve. Drop the Actions workflow; update the data-build script output path. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Self-contained faq.html (no external libs): explains the purpose of the index and documents the exact formulas — price relatives, chained Jevons category index, weighted-geometric-mean composite, headline 12mo change, and review-based weights — with CSS-rendered math. Cross-linked from the main index header. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Polished, still fully self-contained (no external libs/CDN): Inter/system font stack, soft canvas with white rounded cards + subtle shadows, indigo accent, inline-SVG logo + favicon, pill basket toggles, refined table and tooltip, responsive tweaks. FAQ restyled to match (TOC card, paper card, boxed formulas). All JS hooks and the data contract are unchanged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ection - index.html: add full-sentence IPI definition directly beneath the page title - index.html: lay out trend chart (left) and category-selection table (right) side by side via CSS grid, collapsing to stacked below 900px; widen wrap - faq.html: matching aesthetic refresh Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- ipi.js: significantMoves() flags MoM moves past 0.8% plus the biggest rise/drop; drawChart overlays a green/red segment + labeled % on the composite line, recomputed live as categories are toggled - index.html: legend caption under the chart (green=rise, red=drop) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Chart & annotations: - Taller trend chart (H 320->420) with larger margins. - Populate the previously-empty move-notes list: one short description per highlighted month-over-month composite move, chronological. - Fix category name wrapping under its color swatch (white-space: nowrap). Subcategories (main + sub, two-level): - Subdivide broad domains into narrow subcategories via a reproducible pipeline (code/16 re-classifies slugs; code/17 builds the site data) that reuses step 14's matched-model machinery (step 15 refactored into build_site_data()). - Show BOTH the main broad categories (the composite basket, robust -2.1%) AND the relevant subcategories as dashed detail lines nested under their parent, excluded from the composite to avoid double-counting. - Relevance = real movement (index range) AND solid matched-pair coverage; the data supports exactly one breakout (Logo & Brand, -1.8%, under Design -3.3%). Thin/flat subcats stay folded into their broad domain. - data.json carries level/parent/label/color per category; ipi.js reads them with fallbacks so a pure broad build still renders. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Added new FAQ entries regarding the target audience, reasons for using Fiverr, inflation adjustments, potential index distortions, and contribution opportunities. Updated table of contents to reflect new questions.
Pivot the site from trailing-12mo/monthly to full-history/quarterly: splice the historical 500-seller pilot index onto the recent crawl at the shared 2024Q3 link, re-based to 2020Q1=100 (25 quarters, 7 categories). Add per-category freelancer rankings in the category expand row, ranked by number of distinct gigs/services offered. Rankings union two sources so gig counts span the full 2020→2026 window: the recent manifest plus the historical pilot (pilot-prices.csv, year≥2020) classified with the same keyword taxonomy the historical index uses. New code/18-build-site-data-long.py builds docs/data.json. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…me drill-down - Rank by distinct priced gigs (pilot + recent, year>=2020); TOP_N 12->25 - New docs/freelancers.json (163 sellers, 698 gigs) with change-point-compressed price series; gig URLs point to Wayback snapshots (fixes live-profile link rot) - Lazy-loaded nested drill-down UI: per-gig inline-SVG price charts, CVD-safe tier ramp, end-labels + tooltips, label de-collision pass - Verified end-to-end in Playwright Chromium (0 console errors, no overflow) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Translation showed only recent-crawl quarters on the site because the step-12 forward chain required the immediately-preceding grid quarter to be in the index. Translation's 2019Q2-Q4 coverage gap (right after the 2019Q1 base) broke the chain and silently discarded 18 valid transitions (2020Q1->2024Q3). Make the forward chain gap-tolerant (chain from the most recent indexed quarter; the matched-model relative already spans the gap). Backward chain left strict to keep pre-2019 paper levels stable. Diff is purely additive: translation now spans 2020Q1->2026Q1 on the site, composite +216.8% -> +217.7%. Add a quarter inspector to the composite chart: pick a quarter from a year-grouped dropdown or click the chart to pin it, with a readout of composite level / QoQ / YoY / vs-base. Verified in Chromium (0 console errors, no overflow). Note: re-running step 12 also revived data_entry/data_analysis in the paper composite/elasticity outputs (peak 311.6->325.8, elasticity table 5->8 cats); draft prose not yet updated (tracked in plans/todo.md). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the near-identical dark category colors with a validated categorical palette (worst all-pairs CVD ΔE 12.9 on the light surface). Dominant design line gets high-contrast blue. Applied at all three sources: build script COLORS, docs/data.json, ipi.js fallback PALETTE. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Widen .wrap (1280→1600px) and trim side padding (20→12px) on index + faq so content uses more of a wide screen. Make wide FAQ tables scroll in their own box on narrow viewports (fixes pre-existing mobile overflow). Verified: index + faq at 1920/1280/375px — no overflow, 0 console errors. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Center the header (flex column, centered title, subtitle, nav). Remove the "#" rank column from the category table; reconcile detail/footer colspans to the new 7-column layout. Verified in Chromium: header centered, columns aligned, no overflow, 0 console errors. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite drafts/sections/faq.md to match the current live chart (quarterly, base 2020 Q1, 25 quarters through 2026 Q1, headline Δ'20–'26, 7 categories). Fix monthly→quarterly and Feb2025→Feb2026 staleness across existing answers (headline, formulas, data source, weights, limitations, reproduce). Add 6 new [NEW]-tagged questions placed in reading-flow order (not appended): period/why-2020, ChatGPT/COVID visibility, category selection + "AI-exposed" criterion, why-not-surveys/wage-data, freelancer/gig explorer, update cadence. Gaps sourced from a CSRankings-FAQ benchmark + audience review. 21 questions total. Draft only — not yet applied to live docs/faq.html. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the old 10-question live FAQ with the full reviewed 21-question set (no [NEW] tags in the HTML). Keep all method formulas — 4-step math plus the weights formula — updated for the current chart: quarterly, base 2020 Q1=100, headline Δ'20–'26. Expand the TOC to 21 anchored entries and drop stale monthly / trailing-12-month / recent-window copy. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Match index.html so the FAQ text box uses most of a wide screen instead of sitting in a narrow 900px column. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Stack the logo above a centered "FAQ & Methodology" title and subtitle, matching the centered header on index.html. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…posite headline & end-label - Start on one individual category (design) instead of the full composite - Add rotated y-axis unit title: IPI (2020Q1 = 100) - Remove the black end-of-line composite value label - Remove the large composite percentage number at the top of the hero - Composite line + move highlights now only render for a 2+ category basket Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… IPI GEKS + FE hedonic + quality-adjusted hedonic all converge far below the chained-Jevons index; chained overstates 2024Q4 level by ~2.4x. Pilot only, production pipeline and headline numbers unchanged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add explicit "index points" units to the y-axis title and headline caption, and unit tags to the hover tooltip and quarter-inspector readout so every IPI figure reads with units. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.