Skip to content

feat(public): add truthful search-intent bridge for 'conversion audit' searches - #102

Merged
nish3451 merged 7 commits into
mainfrom
fix/conversion-audit-search-intent-bridge
Aug 11, 2026
Merged

feat(public): add truthful search-intent bridge for 'conversion audit' searches#102
nish3451 merged 7 commits into
mainfrom
fix/conversion-audit-search-intent-bridge

Conversation

@nish3451

@nish3451 nish3451 commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

What and why

A buyer searching "website conversion audit service" has a specific intent — find where ready-to-buy visitors leave a page and what each fault costs. The Website Appraisal (the free leak audit) is the truthful nearest match, but no owned surface spoke that phrase, so the intent had nothing to connect to.

This adds the bridge without renaming TinyStudio or The Website Appraisal, and without any conversion/revenue promise (the repo's no-guarantees boundary holds: no conversion lift, no rankings, no booked calls).

What changed

  • Homepage FAQ — new entry "Is this a conversion audit?": plainly not by that name; the appraisal is the leak audit; no conversion lift is sold because nobody can promise one.
  • Homepage identity block — new controlled-question row q8-conversion-audit ("Is TinyStudio a conversion audit service" → No, with the leak-audit truth), keeping the "homepage answers every controlled question" invariant.
  • Controlled-question registryq8-conversion-audit added to evidence-fixtures/ai-search/controlled-questions.json; the audit.html embed mirrors it (drift guard compares byte-for-byte) and the artifact copy now says eight named questions. No captured runs changed.
  • Machine-readable pairllms.txt and offer.md map q8 to the homepage as preferred source and both state the bridge in Current Offer, so an engine answers the intent truthfully.
  • Heading-hierarchy test — locked homepage outline updated for the two new h3 rows.

Verification

  • npm test — all six suites pass, 90 tests, 0 failures (mirror rule, homepage disambiguation invariant, embed/fixture equality, locked outline, forbidden-claims scan).
  • npx wrangler@latest deploy --dry-run exits clean.
  • git diff --check clean.
  • Evidence receipt: docs/evidence/conversion-audit-search-intent-bridge-2026-08-11.md.

Summary by CodeRabbit

  • Documentation

    • Clarified that TinyStudio provides a leak audit, not a conversion audit service.
    • Added explicit messaging that no conversion-lift guarantee or conversion-audit pricing is offered.
    • Updated the offer information and machine-readable guidance to reflect this positioning.
  • Evidence

    • Added an eighth controlled search question with corresponding search-result evidence.
    • Updated the public audit evidence and recorded verification details.
  • Bug Fixes

    • Updated the homepage heading structure to reflect the revised FAQ content.

…' searches

A buyer searching for a website conversion audit service lands on a site
that never speaks that phrase, so the intent has nothing truthful to
connect to. Add the bridge without renaming the product:

- homepage FAQ: 'Is this a conversion audit?' — answered plainly: the
  appraisal is the leak audit, and no conversion lift is sold;
- homepage identity block: new controlled-question row q8
  ('Is TinyStudio a conversion audit service'), answered No with the
  leak-audit truth;
- controlled-question registry q8-conversion-audit (id, name, prompt,
  truth) and the audit.html embed, with the artifact copy updated to
  eight named questions;
- llms.txt/offer.md mirror the q8 preferred-source mapping to the
  homepage and state the bridge in Current Offer, so a machine reader
  answers the intent truthfully without over-promising;
- heading-hierarchy locked outline updated for the two new h3 rows.

No conversion, revenue or ranking promises are added; the bridge
explicitly refuses them. TinyStudio and The Website Appraisal keep their
names.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The PR documents a conversion-audit search-intent bridge. It adds controlled-question mappings, homepage disclosures, embedded evidence, offer metadata, heading validation, and verification records. Product names, pricing, routes, guarantees, and captured evidence runs remain unchanged.

Changes

Conversion-audit search-intent bridge

Layer / File(s) Summary
Search-intent contract and source mappings
docs/evidence/..., evidence-fixtures/ai-search/controlled-questions.json, public/llms.txt, public/offer.md
Adds q8-conversion-audit and maps it to homepage content. The offer language identifies the service as a leak audit without promising conversion lift.
Homepage and embedded evidence updates
public/index.html, public/audit.html, scripts/test-heading-hierarchy.mjs
Adds homepage identity and FAQ disclosures. The audit page embeds the eighth question and its ground truth. The expected heading outline includes the new h3.
Scope and verification record
docs/evidence/conversion-audit-search-intent-bridge-2026-08-11.md
Records unchanged product boundaries and successful mapping, evidence, heading, forbidden-claims, deployment, and diff checks.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: adding a truthful search-intent bridge for conversion-audit searches.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/conversion-audit-search-intent-bridge

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

Copy link
Copy Markdown

💡 Codex Review

https://github.com/nish3451/TinyStudio.io/blob/f22881f91e7ff75da917f51b8e89055a52a69943/evidence-fixtures/ai-search/controlled-questions.json#L48-L50
P2 Badge Record a state for q8 before adding it to the controlled test

When /audit loads, public/audit.js lists every registered prompt but renders answer/status rows only from evidence.runs; because evidence.json contains no run for q8-conversion-audit, visitors see the eighth prompt with no Found/Wrong/Absent/Not tested state or reason. This contradicts the adjacent claim that every answer is labelled and that untested questions print a reason, so either keep q8 out of the controlled registry until it is run or add truthful not-tested/captured run records.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 226afa9013

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread public/audit.html
<section id="ai-search">
<h2>The AI-search evidence, on our own site</h2>
<p class="lede">AI search is a reading surface of its own: the questions a buyer asks get answered before they reach you. So this belongs to the reach pass, and it carries its evidence with it. Below is the controlled test on the one business we may show in full — ours. Seven named questions, the exact prompts, the verbatim answers, and the pages each engine cited. Every answer is labelled with what actually happened: found, wrong, absent, or not tested.</p>
<p class="lede">AI search is a reading surface of its own: the questions a buyer asks get answered before they reach you. So this belongs to the reach pass, and it carries its evidence with it. Below is the controlled test on the one business we may show in full — ours. Eight named questions, the exact prompts, the verbatim answers, and the pages each engine cited. Every answer is labelled with what actually happened: found, wrong, absent, or not tested.</p>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Label the eighth question as untested

The newly added q8-conversion-audit has no entry in evidence.json, while audit.js renders prompts from the question registry but result states only from evidence.runs. Consequently, the public artifact calls this an eight-question controlled test and displays Q8's prompt without any Found, Wrong, Absent, or Not tested result or reason, making an unexecuted question appear to be part of the captured test. Add an explicit not-tested run with a reason, capture an actual run, or avoid counting Q8 as tested evidence.

Useful? React with 👍 / 👎.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@evidence-fixtures/ai-search/controlled-questions.json`:
- Around line 48-51: Update the q8-conversion-audit truth text in
controlled-questions.json and its mirrored payload in public/audit.html to state
that TinyStudio does not promise conversion lift, rather than saying it promises
no conversion lift; keep the remaining service description unchanged.

In `@public/audit.html`:
- Line 116: Update the lede paragraph around the “Eight named questions”
statement to distinguish the eight registered questions from the evidence
actually collected in evidence.runs, avoiding any implication that
q8-conversion-audit has an executed run or cited pages.
- Line 120: Update renderArtifact() to include every question from the evidence
question list, not only entries in evidence.runs. For questions without a run,
such as q8-conversion-audit, create an explicit not-tested row with a clear
reason, while preserving existing run rows and their states.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c56328c6-6359-44cd-962c-8bc7040e04f5

📥 Commits

Reviewing files that changed from the base of the PR and between e7f0b47 and 1f74c38.

📒 Files selected for processing (7)
  • docs/evidence/conversion-audit-search-intent-bridge-2026-08-11.md
  • evidence-fixtures/ai-search/controlled-questions.json
  • public/audit.html
  • public/index.html
  • public/llms.txt
  • public/offer.md
  • scripts/test-heading-hierarchy.mjs

Comment on lines +48 to +51
"id": "q8-conversion-audit",
"name": "Whether TinyStudio is a conversion audit service",
"prompt": "Is TinyStudio a conversion audit service?",
"truth": "TinyStudio is not a conversion audit service: it runs the free leak audit of the one page your revenue depends on, each fault named in order of what it costs you, with the fix beside each, and promises no conversion lift (index.html)."

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

State the absence of a guarantee, not a guarantee of no lift.

promises no conversion lift can be read as a promise that conversion will not improve. The intended boundary is that TinyStudio does not promise conversion lift. Update the mirrored payload in public/audit.html at the same time.

Proposed wording
- "truth": "... and promises no conversion lift (index.html)."
+ "truth": "... and does not promise conversion lift (index.html)."
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@evidence-fixtures/ai-search/controlled-questions.json` around lines 48 - 51,
Update the q8-conversion-audit truth text in controlled-questions.json and its
mirrored payload in public/audit.html to state that TinyStudio does not promise
conversion lift, rather than saying it promises no conversion lift; keep the
remaining service description unchanged.

Comment thread public/audit.html
<section id="ai-search">
<h2>The AI-search evidence, on our own site</h2>
<p class="lede">AI search is a reading surface of its own: the questions a buyer asks get answered before they reach you. So this belongs to the reach pass, and it carries its evidence with it. Below is the controlled test on the one business we may show in full — ours. Seven named questions, the exact prompts, the verbatim answers, and the pages each engine cited. Every answer is labelled with what actually happened: found, wrong, absent, or not tested.</p>
<p class="lede">AI search is a reading surface of its own: the questions a buyer asks get answered before they reach you. So this belongs to the reach pass, and it carries its evidence with it. Below is the controlled test on the one business we may show in full — ours. Eight named questions, the exact prompts, the verbatim answers, and the pages each engine cited. Every answer is labelled with what actually happened: found, wrong, absent, or not tested.</p>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

Qualify the evidence scope for the eighth question.

The questions array contains eight entries, but evidence.runs contains no q8-conversion-audit run. The sentence “Eight named questions, the exact prompts, the verbatim answers, and the pages each engine cited” can overstate the evidence available for q8.

Use wording that separates registered questions from executed runs.

Proposed wording
- Eight named questions, the exact prompts, the verbatim answers, and the pages each engine cited.
+ Eight named questions and their exact prompts; captured answers and cited pages are shown for the runs that were executed.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
<p class="lede">AI search is a reading surface of its own: the questions a buyer asks get answered before they reach you. So this belongs to the reach pass, and it carries its evidence with it. Below is the controlled test on the one business we may show in full — ours. Eight named questions, the exact prompts, the verbatim answers, and the pages each engine cited. Every answer is labelled with what actually happened: found, wrong, absent, or not tested.</p>
<p class="lede">AI search is a reading surface of its own: the questions a buyer asks get answered before they reach you. So this belongs to the reach pass, and it carries its evidence with it. Below is the controlled test on the one business we may show in full — ours. Eight named questions and their exact prompts; captured answers and cited pages are shown for the runs that were executed. Every answer is labelled with what actually happened: found, wrong, absent, or not tested.</p>
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/audit.html` at line 116, Update the lede paragraph around the “Eight
named questions” statement to distinguish the eight registered questions from
the evidence actually collected in evidence.runs, avoiding any implication that
q8-conversion-audit has an executed run or cited pages.

Comment thread public/audit.html
<div class="rows" data-ai-search-evidence></div>
<p class="micro">The states are strict. Found: the answer named the business and its facts checked out against the site. Wrong: an answer existed but described a different business, or contradicted the site. Absent: we ran the question and no AI answer came back. Not tested: we did not run it, and the reason is printed beside it. Absent is not the same as not tested. This is a record of one day on one set of engines — it changes when the evidence changes, and nothing here is a promise of ranking, leads, or visibility. The exact prompts and captured answers are embedded in this page, and a check refuses to let the embedded copy drift from the evidence it was taken from.</p>
<script type="application/json" id="ai-search-evidence">{"questions":{"schema":"controlled-questions/v1","purpose":"The controlled questions behind the AI-search evidence artifact on the audit page. Every question has a stable id, a short name, the exact prompt sent to each engine, and the ground truth the verdict is checked against. A question enters this list only when it is one a buyer would actually ask before committing.","questions":[{"id":"q1-what-tinystudio-does","name":"What TinyStudio does","prompt":"What does TinyStudio do?","truth":"TinyStudio runs a free leak audit of high-ticket service homepages and a desk that closes the leaks the audit finds (audit.html, pricing.html)."},{"id":"q2-what-tinystudio-charges","name":"What TinyStudio charges","prompt":"How much does TinyStudio charge?","truth":"The audit is free. The desk that closes findings runs at $2,500 a month on a three-month minimum (pricing.html)."},{"id":"q3-where-tinystudio-is-based","name":"Where TinyStudio is based","prompt":"Where is TinyStudio based?","truth":"The site does not state a base city or office address for TinyStudio (audit.html, pricing.html)."},{"id":"q4-who-tinystudio-works-with","name":"Who TinyStudio works with","prompt":"Who does TinyStudio work with?","truth":"TinyStudio serves high-ticket clinics, surgeons, dentists, spas, clubs, property, dealers, brokers and similar businesses; clients are never named (audit.html)."},{"id":"q5-what-is-tinystudio-io","name":"Whether tinystudio.io is named","prompt":"What is tinystudio.io?","truth":"tinystudio.io is TinyStudio's own site: the leak audit, plus the Agent Desk behind it."},{"id":"q6-client-work","name":"Whether TinyStudio publishes client work","prompt":"Does TinyStudio publish client work?","truth":"TinyStudio does not publish client work: no logos, no case studies, no testimonials, no 'as seen at' (audit.html)."},{"id":"q7-what-tinystudio-io-charges","name":"What tinystudio.io charges","prompt":"tinystudio.io pricing","truth":"The audit is free; the desk runs at $2,500 a month on a three-month minimum (pricing.html)."}]},"evidence":{"schema":"ai-search-evidence/v1","testedOn":"2026-08-06","business":{"name":"TinyStudio","site":"https://tinystudio.io/","kind":"controlled-test business","note":"First-party and not a client. The audit tests its own business the way it tests a client's homepage, and publishes the results because nothing here belongs to a paying customer."},"engines":[{"id":"google","name":"Google","surface":"AI Overview","note":"Anonymous session, English (US), no personalisation."},{"id":"bing","name":"Bing","surface":"AI-generated answer","note":"Anonymous session, English (US)."},{"id":"duckduckgo","name":"DuckDuckGo","surface":"Search Assist","note":"Anonymous session, English (US)."},{"id":"chatgpt","name":"ChatGPT","surface":"Chat","note":"Not run: sign-in required for an anonymous session."},{"id":"perplexity","name":"Perplexity","surface":"Answer","note":"Not run: blocked by an automated-session challenge."}],"runs":[{"questionId":"q1-what-tinystudio-does","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio most commonly refers to a free Mac application that uses artificial intelligence to generate video and audio subtitles locally. Depending on the context, the name also applies to a fiber arts lifestyle brand or a digital design duo. ...","sources":[{"title":"Fiberygoodness - what is tinyStudio","url":"https://www.fiberygoodness.com/whatistinystudio"},{"title":"TinyStudio - App Store","url":"https://apps.apple.com/us/app/tinystudio/id6448954288"},{"title":"TinyStudio (design agency)","url":"https://tinystudio.ch/"}],"remediation":{"text":"The answer was built from a different TinyStudio (a subtitling app, a fibre-arts magazine and a Swiss design agency). No page on tinystudio.io contributed to it, so no page-specific fix is claimed."}},{"questionId":"q2-what-tinystudio-charges","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Because \"TinyStudio\" matches a few different well-known brands, businesses, and software platforms, the cost depends on exactly which one you are looking for: ... Tiny Studios ... Small Studio Tier: $0 per month ... Starter Tier: $99 per month ... tinyStudio Creative Life Magazine ... $4.95 per month ... The Tiny Studio LA ... starting at $30 to $40 per hour ...","sources":[{"title":"Fiberygoodness","url":"https://www.fiberygoodness.com/"},{"title":"The Tiny Studio LA - Tagvenue","url":"https://www.tagvenue.com/"},{"title":"GetSpaces","url":"https://www.getspaces.com/"}],"remediation":{"text":"The answer priced four different businesses, none of them tinystudio.io. No page on our site was read, so no page-specific fix is claimed."}},{"questionId":"q3-where-tinystudio-is-based","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Because \"Tiny Studio\" (or TinyStudio) is a common name used by several different creative companies worldwide, it depends on which specific business you mean: ... Jakarta, Indonesia and Paris, France ... London, United Kingdom ... Manchester, United Kingdom ... Bristol, United Kingdom ... North Hollywood, Los Angeles, CA ... Toronto, Canada.","sources":[{"title":"Tiny Studio - Instagram","url":"https://www.instagram.com/t.i.n.y.studio/"},{"title":"The Tiny Studio LA - Tagvenue","url":"https://www.tagvenue.com/"},{"title":"Tiny Studios - Studio Laar","url":"https://www.studiolaar.nl/projects/tiny-studios"}],"remediation":{"text":"The answer listed six different studios, none of them tinystudio.io. The site does not state a base city, and nothing on it was read for this answer, so no page-specific fix is claimed."}},{"questionId":"q4-who-tinystudio-works-with","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Tiny Studio (a video production studio) works with brands, charities, businesses, and agencies-anyone who has a message to communicate.","sources":[{"title":"TinyStudio TV","url":"https://www.tinystudio.tv/"},{"title":"Fiberygoodness","url":"https://www.fiberygoodness.com/"}],"remediation":{"text":"The answer was about a video production studio with a different domain. No page on tinystudio.io was read, so no page-specific fix is claimed."}},{"questionId":"q5-what-is-tinystudio-io","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio is an AI agent platform designed to turn business strategies-such as your offer, target audience, marketing funnels, and CRM context-into practical lead-to-call execution plans.","sources":[{"title":"tinystudio.io - TinyStudio Agent Desk","url":"https://tinystudio.io/"}],"remediation":{"text":"The answer named tinystudio.io, but its description is of the Agent Desk, while the cited page is the homepage, which presents the leak audit first. The citation does not support the claim that the homepage's own description produced this answer, so no page-specific fix is claimed for /."}},{"questionId":"q6-client-work","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Yes, multiple entities named \"Tiny Studio\" or \"tinyStudio\" publish client or featured work depending on which organization you mean. ... Tiny Studio LLC ... www.tinystudiollc.com ...","sources":[{"title":"Tiny Studio LLC","url":"https://www.tinystudiollc.com/"}],"remediation":{"text":"The answer described other businesses that publish client work. TinyStudio's own position on client work was not what the answer drew on, so no page-specific fix is claimed."}},{"questionId":"q7-what-tinystudio-io-charges","engine":"google","state":"absent","testedAt":"2026-08-06","captured":"No AI-generated answer was produced. The result page returned organic links only; tinystudio.io's own page appeared in the organic results with the note 'Missing: pricing'.","sources":[],"remediation":{"text":"There was no AI answer to correct, and no tinystudio.io page was read to produce one, so no page-specific fix is claimed."}},{"questionId":"q1-what-tinystudio-does","engine":"bing","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio is a versatile tool designed to assist users in various tasks, particularly in the creative and business sectors. ... Subtitle Generation ... Traffic Management ... Invoice Processing ...","sources":[{"title":"About TinyStudio - tinystudio.ai","url":"https://tinystudio.ai/about-tinystudio/"},{"title":"tinystudio.ai","url":"https://tinystudio.ai/"}],"remediation":{"text":"The answer was built from tinystudio.ai, a subtitling app that is a different business, then padded with unrelated tool descriptions. No page on tinystudio.io was cited, so no page-specific fix is claimed."}},{"questionId":"q1-what-tinystudio-does","engine":"duckduckgo","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio is a platform that offers resources and inspiration for fiber and yarn artists, including a digital magazine, tutorials, and personal stories from artists to enhance creativity and simplify the fiber crafting experience.","sources":[{"title":"Fiberygoodness","url":"https://www.fiberygoodness.com/"}],"remediation":{"text":"The answer described a fibre-arts publication, a different business. No page on tinystudio.io was cited, so no page-specific fix is claimed."}},{"questionId":"q1-what-tinystudio-does","engine":"chatgpt","state":"not-tested","testedAt":"2026-08-06","reason":"Sign-in is required to run a question, and no anonymous session was available for this run."},{"questionId":"q1-what-tinystudio-does","engine":"perplexity","state":"not-tested","testedAt":"2026-08-06","reason":"The engine blocked the session with an automated-session challenge, so the question was not run."}]}}</script>
<script type="application/json" id="ai-search-evidence">{"questions":{"schema":"controlled-questions/v1","purpose":"The controlled questions behind the AI-search evidence artifact on the audit page. Every question has a stable id, a short name, the exact prompt sent to each engine, and the ground truth the verdict is checked against. A question enters this list only when it is one a buyer would actually ask before committing.","questions":[{"id":"q1-what-tinystudio-does","name":"What TinyStudio does","prompt":"What does TinyStudio do?","truth":"TinyStudio runs a free leak audit of high-ticket service homepages and a desk that closes the leaks the audit finds (audit.html, pricing.html)."},{"id":"q2-what-tinystudio-charges","name":"What TinyStudio charges","prompt":"How much does TinyStudio charge?","truth":"The audit is free. The desk that closes findings runs at $2,500 a month on a three-month minimum (pricing.html)."},{"id":"q3-where-tinystudio-is-based","name":"Where TinyStudio is based","prompt":"Where is TinyStudio based?","truth":"The site does not state a base city or office address for TinyStudio (audit.html, pricing.html)."},{"id":"q4-who-tinystudio-works-with","name":"Who TinyStudio works with","prompt":"Who does TinyStudio work with?","truth":"TinyStudio serves high-ticket clinics, surgeons, dentists, spas, clubs, property, dealers, brokers and similar businesses; clients are never named (audit.html)."},{"id":"q5-what-is-tinystudio-io","name":"Whether tinystudio.io is named","prompt":"What is tinystudio.io?","truth":"tinystudio.io is TinyStudio's own site: the leak audit, plus the Agent Desk behind it."},{"id":"q6-client-work","name":"Whether TinyStudio publishes client work","prompt":"Does TinyStudio publish client work?","truth":"TinyStudio does not publish client work: no logos, no case studies, no testimonials, no 'as seen at' (audit.html)."},{"id":"q7-what-tinystudio-io-charges","name":"What tinystudio.io charges","prompt":"tinystudio.io pricing","truth":"The audit is free; the desk runs at $2,500 a month on a three-month minimum (pricing.html)."},{"id":"q8-conversion-audit","name":"Whether TinyStudio is a conversion audit service","prompt":"Is TinyStudio a conversion audit service?","truth":"TinyStudio is not a conversion audit service: it runs the free leak audit of the one page your revenue depends on, each fault named in order of what it costs you, with the fix beside each, and promises no conversion lift (index.html)."}]},"evidence":{"schema":"ai-search-evidence/v1","testedOn":"2026-08-06","business":{"name":"TinyStudio","site":"https://tinystudio.io/","kind":"controlled-test business","note":"First-party and not a client. The audit tests its own business the way it tests a client's homepage, and publishes the results because nothing here belongs to a paying customer."},"engines":[{"id":"google","name":"Google","surface":"AI Overview","note":"Anonymous session, English (US), no personalisation."},{"id":"bing","name":"Bing","surface":"AI-generated answer","note":"Anonymous session, English (US)."},{"id":"duckduckgo","name":"DuckDuckGo","surface":"Search Assist","note":"Anonymous session, English (US)."},{"id":"chatgpt","name":"ChatGPT","surface":"Chat","note":"Not run: sign-in required for an anonymous session."},{"id":"perplexity","name":"Perplexity","surface":"Answer","note":"Not run: blocked by an automated-session challenge."}],"runs":[{"questionId":"q1-what-tinystudio-does","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio most commonly refers to a free Mac application that uses artificial intelligence to generate video and audio subtitles locally. Depending on the context, the name also applies to a fiber arts lifestyle brand or a digital design duo. ...","sources":[{"title":"Fiberygoodness - what is tinyStudio","url":"https://www.fiberygoodness.com/whatistinystudio"},{"title":"TinyStudio - App Store","url":"https://apps.apple.com/us/app/tinystudio/id6448954288"},{"title":"TinyStudio (design agency)","url":"https://tinystudio.ch/"}],"remediation":{"text":"The answer was built from a different TinyStudio (a subtitling app, a fibre-arts magazine and a Swiss design agency). No page on tinystudio.io contributed to it, so no page-specific fix is claimed."}},{"questionId":"q2-what-tinystudio-charges","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Because \"TinyStudio\" matches a few different well-known brands, businesses, and software platforms, the cost depends on exactly which one you are looking for: ... Tiny Studios ... Small Studio Tier: $0 per month ... Starter Tier: $99 per month ... tinyStudio Creative Life Magazine ... $4.95 per month ... The Tiny Studio LA ... starting at $30 to $40 per hour ...","sources":[{"title":"Fiberygoodness","url":"https://www.fiberygoodness.com/"},{"title":"The Tiny Studio LA - Tagvenue","url":"https://www.tagvenue.com/"},{"title":"GetSpaces","url":"https://www.getspaces.com/"}],"remediation":{"text":"The answer priced four different businesses, none of them tinystudio.io. No page on our site was read, so no page-specific fix is claimed."}},{"questionId":"q3-where-tinystudio-is-based","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Because \"Tiny Studio\" (or TinyStudio) is a common name used by several different creative companies worldwide, it depends on which specific business you mean: ... Jakarta, Indonesia and Paris, France ... London, United Kingdom ... Manchester, United Kingdom ... Bristol, United Kingdom ... North Hollywood, Los Angeles, CA ... Toronto, Canada.","sources":[{"title":"Tiny Studio - Instagram","url":"https://www.instagram.com/t.i.n.y.studio/"},{"title":"The Tiny Studio LA - Tagvenue","url":"https://www.tagvenue.com/"},{"title":"Tiny Studios - Studio Laar","url":"https://www.studiolaar.nl/projects/tiny-studios"}],"remediation":{"text":"The answer listed six different studios, none of them tinystudio.io. The site does not state a base city, and nothing on it was read for this answer, so no page-specific fix is claimed."}},{"questionId":"q4-who-tinystudio-works-with","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Tiny Studio (a video production studio) works with brands, charities, businesses, and agencies-anyone who has a message to communicate.","sources":[{"title":"TinyStudio TV","url":"https://www.tinystudio.tv/"},{"title":"Fiberygoodness","url":"https://www.fiberygoodness.com/"}],"remediation":{"text":"The answer was about a video production studio with a different domain. No page on tinystudio.io was read, so no page-specific fix is claimed."}},{"questionId":"q5-what-is-tinystudio-io","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio is an AI agent platform designed to turn business strategies-such as your offer, target audience, marketing funnels, and CRM context-into practical lead-to-call execution plans.","sources":[{"title":"tinystudio.io - TinyStudio Agent Desk","url":"https://tinystudio.io/"}],"remediation":{"text":"The answer named tinystudio.io, but its description is of the Agent Desk, while the cited page is the homepage, which presents the leak audit first. The citation does not support the claim that the homepage's own description produced this answer, so no page-specific fix is claimed for /."}},{"questionId":"q6-client-work","engine":"google","state":"wrong","testedAt":"2026-08-06","captured":"Yes, multiple entities named \"Tiny Studio\" or \"tinyStudio\" publish client or featured work depending on which organization you mean. ... Tiny Studio LLC ... www.tinystudiollc.com ...","sources":[{"title":"Tiny Studio LLC","url":"https://www.tinystudiollc.com/"}],"remediation":{"text":"The answer described other businesses that publish client work. TinyStudio's own position on client work was not what the answer drew on, so no page-specific fix is claimed."}},{"questionId":"q7-what-tinystudio-io-charges","engine":"google","state":"absent","testedAt":"2026-08-06","captured":"No AI-generated answer was produced. The result page returned organic links only; tinystudio.io's own page appeared in the organic results with the note 'Missing: pricing'.","sources":[],"remediation":{"text":"There was no AI answer to correct, and no tinystudio.io page was read to produce one, so no page-specific fix is claimed."}},{"questionId":"q1-what-tinystudio-does","engine":"bing","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio is a versatile tool designed to assist users in various tasks, particularly in the creative and business sectors. ... Subtitle Generation ... Traffic Management ... Invoice Processing ...","sources":[{"title":"About TinyStudio - tinystudio.ai","url":"https://tinystudio.ai/about-tinystudio/"},{"title":"tinystudio.ai","url":"https://tinystudio.ai/"}],"remediation":{"text":"The answer was built from tinystudio.ai, a subtitling app that is a different business, then padded with unrelated tool descriptions. No page on tinystudio.io was cited, so no page-specific fix is claimed."}},{"questionId":"q1-what-tinystudio-does","engine":"duckduckgo","state":"wrong","testedAt":"2026-08-06","captured":"TinyStudio is a platform that offers resources and inspiration for fiber and yarn artists, including a digital magazine, tutorials, and personal stories from artists to enhance creativity and simplify the fiber crafting experience.","sources":[{"title":"Fiberygoodness","url":"https://www.fiberygoodness.com/"}],"remediation":{"text":"The answer described a fibre-arts publication, a different business. No page on tinystudio.io was cited, so no page-specific fix is claimed."}},{"questionId":"q1-what-tinystudio-does","engine":"chatgpt","state":"not-tested","testedAt":"2026-08-06","reason":"Sign-in is required to run a question, and no anonymous session was available for this run."},{"questionId":"q1-what-tinystudio-does","engine":"perplexity","state":"not-tested","testedAt":"2026-08-06","reason":"The engine blocked the session with an automated-session challenge, so the question was not run."}]}}</script>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

rg -n -C 8 \
  'data-ai-search-evidence|ai-search-evidence|q8-conversion-audit|questionId|not-tested|not tested|evidence\.runs' \
  --glob '*.html' \
  --glob '*.js' \
  --glob '*.mjs' \
  .

Repository: nish3451/TinyStudio.io

Length of output: 50378


Render unrun questions as not-tested rows. q8-conversion-audit has no entry in evidence.runs, and renderArtifact() renders rows only from runs. The question appears in the prompt list but has no state row. Add an explicit not-tested row with a reason.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/audit.html` at line 120, Update renderArtifact() to include every
question from the evidence question list, not only entries in evidence.runs. For
questions without a run, such as q8-conversion-audit, create an explicit
not-tested row with a clear reason, while preserving existing run rows and their
states.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@nish3451
nish3451 merged commit 2ae7504 into main Aug 11, 2026
3 checks passed
nish3451 added a commit that referenced this pull request Aug 12, 2026
…(PR #22 conflict-locked, superseded by #28) against current GitHub state (2026-08-12) (#152)

Closes the review item "Two open PRs carry the same heading-hierarchy fix —
PR #22 is conflict-locked and superseded" (review queue, unreviewed-by-grok),
re-verified against the current GitHub state on 2026-08-12.

Verified facts (2026-08-12):
- PR #22 is CLOSED (2026-08-09), never merged, mergeStateStatus: DIRTY
  (conflict-locked) at close — the item's description was accurate.
- The superseding fix PR #28 is MERGED on main (2026-08-09, commit 7be3d8f);
  sibling duplicate #27 is also CLOSED.
- All 53 currently open PRs diff-reviewed: the only literal heading markup
  anywhere is one hierarchy-preserving h2 on /specimen in PR #107 (with its
  locked outline updated in scripts/test-heading-hierarchy.mjs) and one
  standalone h1 in PR #116's new closed-intake page — zero open PR retags
  an existing heading level, so no open PR duplicates the heading fix.
- Main has carried exactly one heading fix since 2026-08-09: the only
  heading-tag change since the merge is 2ae7504's two hierarchy-preserving
  homepage FAQ h3s (PR #102, locked outline updated). npm run check passes
  and npm test passes in full (test:headings 6/6) on current origin/main
  (ad9cee3).
- Site-side verification is current via docs/evidence/heading-hierarchy-2026-08-09.md
  (PR #74) with the 2026-08-12 re-verify in flight as PR #120.

Docs-only change; no code, no deployment.
nish3451 added a commit that referenced this pull request Aug 13, 2026
…and live (#139)

The 2026-08-11 re-verification confirmed the closeout on head 354e725.
Thirteen commits have landed since; the pipeline kept shipping every merge,
so release-state-tinystudio-io.json now pins 18128e8 — byte-identical to the
current origin/main HEAD, zero deployment lag (the 2026-08-11 receipt's
docs-only lag is gone). Both named PRs (#28 7be3d8f heading hierarchy, #30
b004c11 apple-touch-icon) are ancestors of the deployed release; the stuck
eae1d87 is strictly older. Live: all six served pages serve the locked
gap-free heading outlines (home now 30 items incl. PR #102's two FAQ h3s),
all five appraisal pages serve rel=apple-touch-icon resolving 200 image/png.
npm run check passes; npm test passes 92/92 on this head.
nish3451 added a commit that referenced this pull request Aug 13, 2026
…ainst current main and live (#127)

The 2026-08-11 re-verification confirmed the declaration on head 8b42e0a.
Twenty-six commits have landed since; the only change to the declaration
is an extension, not a regression: 2ae7504 (#102) added q8-conversion-audit
to the controlled-question registry and mapped it to the homepage as its
preferred source page in both llms.txt and offer.md. The Answer Readiness
guard region in check-site.mjs is untouched by the range (1e78ecf refactors
only the copy-guard head), and test-agent-ui.mjs plus evidence.json are
byte-identical. npm run check passes, the full 92-test suite passes, and a
fresh live measurement of https://tinystudio.io/llms.txt and /offer.md
finds the section present with all eight questions mapped to exactly one
served page, both price questions on pricing.html, the mirror identical,
and the served bytes byte-identical to source. No live engine run is
claimed.
nish3451 added a commit that referenced this pull request Aug 14, 2026
…ainst current main and live (2026-08-14) (#180)

The preferred-source declaration (PR #42, extended by PR #102's q8) is
unchanged since the 2026-08-12 receipt: npm run check passes with the
"AI Answer Readiness (dogfood 4473a99a9bc9)" guard enforcing section
presence, exactly-one-page coverage for all eight controlled questions,
served-page membership, pricing.html ownership for q2/q7, and the
offer.md mirror. The full test suite passes (117 tests, 0 failures).
Fresh live fetches on 2026-08-14 show llms.txt and offer.md serve the
identical eight-question mapping byte-for-byte, every mapped page is in
the live sitemap, the homepage identity block still answers all eight
questions with no retired Agent Desk framing, and the audit-page embed
still matches the fixture. The finding stays closed with no code change.

Co-authored-by: nish3451 <nish3451@users.noreply.github.com>
Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
nish3451 added a commit that referenced this pull request Aug 14, 2026
…nt main (2026-08-14) (#189)

* docs(evidence): re-verify PR #42 + #43 serial-merge closeout on current main (2026-08-14)

Re-verifies the review item [unreviewed-by-opus] Merge PR #42 and #43 in
serial order (or rebase the loser) against the current GitHub state on
2026-08-14. The 2026-08-12 closeout (PR #146, 4e2b94c) still holds:
- PR #42 squash 95d2248 is in origin/main (f9214c1)
- PR #43 merge ad9cee3 is in origin/main
- git merge-base --is-ancestor 95d2248 ad9cee3 is true (serial order)
- PR #42 declaration is on main; q8-conversion-audit (PR #102) layered on top
- PR #43 branch tip ed62202 is an ancestor of main with zero unmerged content
- No open PR #42 or #43

No code change is needed or proposed.

* docs(lane-report): record lane 1 PR #42 + #43 serial-merge re-verification closeout (2026-08-14)

---------

Co-authored-by: Nish <nish@tinystudio.io>
nish3451 added a commit that referenced this pull request Aug 14, 2026
… intent bridge (#193)

* fix(public): add domain-valuation distinction to the conversion-audit intent bridge

The search-intent bridge for "website conversion audit service" (PR #102)
met the backlog item's acceptance criteria except one: the intent surface
must also distinguish The Website Appraisal from a domain-value appraisal.
Google reads "website appraisal service" as domain valuation, and no owned
surface answered that confusion. The second-pass branch
fix/conversion-audit-bridge-domain-valuation (PR #151) carried this copy
but drifted 120 commits behind main and never merged.

Add the plain distinction to the homepage FAQ answer and mirror it in the
llms.txt / offer.md Current Offer bridge statement, so the two mirrors
cannot drift apart. No product name, price, guarantee, or captured
evidence changes; receipt in
docs/evidence/conversion-audit-search-intent-bridge-2026-08-14.md.

Co-authored-by: CommandCodeBot <noreply@commandcode.ai>

* docs(lane-report): domain-valuation distinction on the conversion-audit intent bridge

Co-authored-by: CommandCodeBot <noreply@commandcode.ai>

---------

Co-authored-by: nish3451 <nish3451@users.noreply.github.com>
Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
nish3451 added a commit that referenced this pull request Aug 14, 2026
… intent bridge (#151)

The search-intent bridge for "website conversion audit service" (PR #102)
met the backlog item's acceptance criteria except one: the intent surface
must also distinguish The Website Appraisal from a domain-value appraisal.
The scout's original observation was that Google reads "website appraisal
service" as domain valuation, and no owned surface answered that confusion.
Add the plain distinction to the homepage FAQ answer and mirror it in the
llms.txt / offer.md Current Offer bridge statement. No product name, price,
guarantee, or captured evidence changes; receipt in
docs/evidence/conversion-audit-search-intent-bridge-2026-08-12.md.
nish3451 added a commit that referenced this pull request Aug 15, 2026
…ainst current main and live (2026-08-15)

The preferred-source declaration (PR #42, extended by PR #102's q8) still
holds on the current head: npm run check passes with the "AI Answer
Readiness (dogfood 4473a99a9bc9)" guard enforcing section presence,
exactly-one-page coverage for all eight controlled questions, served-page
membership, pricing-page ownership for q2/q7, and the offer.md mirror,
and the full test suite passes (121 tests, 0 failures). Two commits since
the 2026-08-14 receipt touched llms.txt/offer.md — #193 extended the
conversion-audit bridge statement, and #202 re-pointed the mappings from
the 307-redirecting .html addresses to the clean extensionless addresses
that serve 200 (/pricing, /audit) — neither regressed the declaration.
Fresh live fetches on 2026-08-15 show llms.txt and offer.md serve the
identical eight-question mapping byte-for-byte, every mapped page serves
200 and is in the live sitemap, the homepage identity block still answers
all eight questions with no retired Agent Desk framing, and the audit-page
embed still matches the fixture. The finding stays closed with no code
change.

Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
nish3451 added a commit that referenced this pull request Aug 15, 2026
…ainst current main and live (2026-08-15) (#226)

The preferred-source declaration (PR #42, extended by PR #102's q8) still
holds on the current head: npm run check passes with the "AI Answer
Readiness (dogfood 4473a99a9bc9)" guard enforcing section presence,
exactly-one-page coverage for all eight controlled questions, served-page
membership, pricing-page ownership for q2/q7, and the offer.md mirror,
and the full test suite passes (121 tests, 0 failures). Two commits since
the 2026-08-14 receipt touched llms.txt/offer.md — #193 extended the
conversion-audit bridge statement, and #202 re-pointed the mappings from
the 307-redirecting .html addresses to the clean extensionless addresses
that serve 200 (/pricing, /audit) — neither regressed the declaration.
Fresh live fetches on 2026-08-15 show llms.txt and offer.md serve the
identical eight-question mapping byte-for-byte, every mapped page serves
200 and is in the live sitemap, the homepage identity block still answers
all eight questions with no retired Agent Desk framing, and the audit-page
embed still matches the fixture. The finding stays closed with no code
change.

Co-authored-by: nish3451 <nish3451@users.noreply.github.com>
Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant