fix(public): self-declare clean /agents /pricing /specimen URLs in page head - #210
fix(public): self-declare clean /agents /pricing /specimen URLs in page head#210nish3451 wants to merge 37 commits into
Conversation
…ge head The three pages' head metadata named their own .html twin URLs in the canonical link, og:url, and the JSON-LD WebPage @id/url, while the worker serves the clean extensionless form (and 307-redirects the .html twin). audit.html already self-declares the clean /audit; align the remaining three with it so search engines and social scrapers resolve the served 200 address instead of the redirecting form. Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
|
Warning Review limit reached
Next review available in: 50 minutes Limit details: You’ve used the included review currently available. Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Free Run ID: 📒 Files selected for processing (2)
ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Free Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: Your plan includes up to 1 review per rolling hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe change updates metadata and structured data for three pages to use extensionless URLs. Site validation checks now enforce these URLs. A report records the changes and validation results. ChangesClean page URL declarations
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change aligns page metadata with the clean URLs already served by the site, with no actionable merge-blocking risk remaining after normal checks and review. Note 🎁 Summarized by CodeRabbit FreeYour organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login. Comment |
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
|
Superseded by #218, which landed the same clean-canonical-URL fix for agents.html, pricing.html, specimen.html, and scripts/check-site.mjs (byte-identical HTML changes; check-site.mjs differs only in comment wording). Closing as redundant — no unique changes remain to carry forward. |
What
Makes
/agents,/pricing,/specimenself-declare their clean extensionless URLs in the page head, matching what/auditalready does:<link rel="canonical">now points athttps://tinystudio.io/agents(was.../agents.html), etc.<meta property="og:url">now points at the clean URLWebPagenode@id(.../agents#webpage) andurlnow use the clean URLThe worker serves the clean extensionless form at 200 and 307-redirects each
.htmltwin, so the pages previously self-declared a redirecting address in three places.Why it matters
og:urland JSON-LD@id/urldrift the same way: social scrapers and machine readers resolve the.htmltwin, which redirects.Files
public/agents.html,public/pricing.html,public/specimen.html— canonical + og:url + WebPage @id/url now cleanscripts/check-site.mjs— updated the three page-URL expectation tables (social share, structured data, canonical) and the canonical comment to require the clean extensionless address on all five pagesValidation
npm run checkpassesnpm test(full suite) exits 0Summary by CodeRabbit
.htmlroutes and redirect behavior.