Tahanic Tahanic ← Home
Changelog

What changed in Tahanic.

A dated record of features, fixes and product decisions that have shipped. Newest first.

No release names. No invented versions. If it is here, it shipped.

Fixed MyReview · Analytics

Analytics alerts now follow the selected data scope.

The Insights page could exclude sample reviews from its figures while an alert on the same page still counted them — the page could say "no reviews" while an alert warned about "3 low reviews". Alerts now follow the same real/sample-data scope as the page.

Read details

Why it mattered: an alert asks someone to act, so a false alert is worse than an incorrect passive number. A manager could be told to respond to low reviews that the page itself said did not exist.

What changed: the low-review alert now evaluates the same 7-day window against the same scope the page displays, and figures are labelled sample, mixed or real so the source of every number is visible. Regression tests cover the scope agreement so the contradiction cannot silently return.

Fixed MyReview · Review growth

Funnel counts now represent QR-originated customers correctly.

The review-request funnel could misattribute customers who arrived through a QR code, so request counts did not reflect where people actually came from. Attribution now records the true origin.

Read details

Why it mattered: owners judge whether table cards and QR placements work by these numbers. Miscounted origins make a working channel look dead — or a dead one look alive.

Fixed MyReview · Data integrity

Redirect history is no longer lost when private feedback arrives later.

When a customer first followed the public review route and later submitted private feedback, the earlier redirect record could be overwritten. Both events are now kept.

Read details

What we deliberately did not do: historical records that were already lost were not reconstructed — fabricating history the system cannot verify would be worse than an honest gap. From the fix onward, both events persist.

Fixed MyReview · Analytics

Empty analytics no longer fabricate a 0.0 average rating.

With no reviews in scope, the average rating displayed as 0.0 — implying the worst possible score instead of no data. Empty states now say there is nothing to measure. Zero-denominator rates were fixed the same way: a percentage is only shown when there is something to divide by.

Read details

Why it mattered: zero reviews does not mean a zero-star average. A fabricated 0.0 tells an owner their reputation is catastrophic when the truth is simply "no data yet" — the difference between panic and patience.

Reliability Shared platform

A failed scheduled job no longer looks like a job with nothing to do.

Background jobs that failed could end in the same state as jobs that ran successfully but had no work. Failures are now recorded distinctly and surfaced.

Read details

Why it mattered: a silent failure erodes every promise the product makes — reminders that never fired and alerts that never went out looked identical to quiet days. Distinguishing "failed" from "nothing to do" is what makes the reliability of everything else observable.

Fixed MyReview · Inbox

Collaboration controls stay available when AI drafting fails.

When draft generation failed, the review's assignment, notes and flag controls disappeared with it. A failed draft still needs a person — those controls now remain regardless of drafting state.

Fixed MyReview · Safety

Unsafe-content state survives edits and restores.

Editing or restoring an earlier version of a reply could drop the unsafe-content marking that risk detection had applied. The safety state now persists through every edit and restore.

Fixed Shared platform · Permissions

Permission refusals are no longer shown as network errors.

When the server refused an action for permission reasons, the interface could report it as a connection failure. A refusal now says what it is, so a read-only user is not told to check their internet.

Fixed MyReview · Review growth

Invalid QR links explain themselves before asking for a rating.

A QR link pointing at a deleted or invalid business initially presented working rating controls to the customer. Those links now explain the problem up front instead of collecting a rating that can go nowhere.

New MyReview · Collaboration

Team collaboration in the Review Inbox.

Reviews can now be assigned to a team member, carry internal notes, be flagged by a manager, and be marked resolved. Every reply keeps a version history.

Read details

Assignment makes ownership explicit; notes keep the discussion next to the review instead of in a chat app; manager flags mark what needs senior attention; version history preserves what was drafted, edited and approved — by whom and when.

New Product decision MyReview · Approvals

A real approval workflow — and an explicit refusal of fake "sent" states.

Drafts now move through submitted-for-approval to approved, with withdrawal supported and approval limited to Owner and Manager roles. We deliberately did not add a "published" or "sent" state: no state may claim an action happened when nothing was published.

Read details

Why it mattered: publishing to the review platform currently happens outside Tahanic, so a "published" label inside Tahanic would be a claim the product cannot verify. Approved records who accepted the text and when — nothing more, nothing invented.

New MyReview · Notifications

Review-arrival alerts with escalation.

New reviews can alert the right people, escalate when unhandled, and recipient lists are validated so alerts never go to people who can no longer act on them.

Improved MyReview · AI drafting

Drafting integrity: server-built context, duplicate detection, no invention.

Drafting context is now built entirely server-side from the verified Business Profile. Near-duplicate replies are detected, rating-only and neutral three-star reviews get appropriate handling, and an unconditional instruction forbids inventing specifics the business never provided.

Read details

Why server-side: a draft grounded in client-supplied data could be manipulated or stale; resolving the profile on the server makes every draft traceable to what the business actually configured. Voice learning from approved replies was also improved — it learns from what you accepted, not from what it generated.

Improved MyReview · Analytics

Analytics: honest periods, honest labels, honest exports.

Reporting periods and comparisons were rebuilt, sample-data scope is explicit, AI-written and rewritten replies are counted separately, and metrics that cannot be measured yet say so instead of showing a number. Reports export to CSV.

Read details

Terminology was corrected too: the metric formerly implying publishing speed is now "time to approve" — it measures the approval, which is what actually happens inside Tahanic. Edit counts distinguish drafts used as-is from drafts you rewrote, which is the honest measure of how well the AI knows your voice.

New Product decision MyReview · Review growth

Real QR generation, private feedback — and review gating removed.

QR codes are now generated for real, private feedback exists alongside the public review route, and unsubscribe/suppression is enforced. Review gating — steering only happy customers toward public reviews — was removed deliberately.

Read details

Why gating was removed: filtering who gets asked based on sentiment violates review-platform policies and misrepresents a business's real reputation. Every customer now gets the same ask; unhappy customers can additionally choose a private route that reaches the owner directly.

Improved Shared platform · Navigation

Product areas reorganised.

The dashboard was restructured into distinct product areas with a Home summary and reorganised integrations, so each product's work lives in its own place instead of one long menu.

Fixed Shared platform · Production

Production entitlement issue resolved; sample data guarded.

An entitlement-dependency issue that could affect access in production was corrected, and a guard now prevents sample data from leaking into production contexts. Historical entry — current billing status is documented in the Help Centre.

New Website

Help Centre, Security page and supporting pages.

The public site gained a searchable Help Centre, a Security page and restructured supporting pages.