A price needs a unit. A profile needs evidence.
A polished generated profile must not turn missing information into a confident claim.
A generated profile can look complete because the template knows where every piece of information belongs. That does not mean the provider supplied every piece of information.
The June profile work made this distinction concrete around prices, availability, and reviews. The interface had to show what was known without filling the gaps with plausible looking defaults.
See the original requestInside the screen
The number is clear. Its meaning is not.
This is exactly the kind of small ambiguity I want to catch before it becomes a customer expectation.

Select a detail
The currency tells me how to read the number. It does not tell me whether the amount buys an hour, a session, or the entire job.
Starting suggests a lower bound, but I cannot tell what that bound refers to. The control needs the pricing basis close enough to the amount that the two travel together.
Continue is where this ambiguity would move into the next step. I would inspect the stored amount and pricing basis together, then follow them into the profile.
The July capture shows a price entry screen. It does not establish a provider’s actual rates or billing terms.
The original request20 Jun 2026 · excerpt
it should always just mention euro for price
Excerpted from the development conversation. Punctuation is lightly edited; the surrounding story is an edited retrospective.
01
The euro symbol had to survive the whole path.
The originating request asked for euro pricing throughout the flow. The response addressed more than the prompt sent to AI. It normalised money on the server and carried the same currency through client rendering and saved values. That matters because asking a model for a symbol does not guarantee the value reaching the screen will retain it. A later layer can still interpret a prefix incorrectly or fall back to another format.
The recorded example kept the pricing meaning while standardising the currency, such as an amount per print. I want to keep those responsibilities separate. Currency identifies the money. The unit identifies what the amount buys. Fixing one does not authorise the interface to invent the other. A price without a known basis should not quietly acquire an hourly label because the profile template expects one.
02
A template cannot create trust evidence
Availability labels such as Open now required saved availability information. Review sections and breakdowns were hidden when real review rows or rating evidence did not exist.
A configured review distribution is presentation data. It does not prove reviews happened. That distinction protects the reader from confusing an attractive component with an actual record of someone’s work.
03
A clean numeric field can be too confident.
The July production capture asks for a typical starting price and shows a euro prefix. It is a real later screen, and it also gives me something to question. Some services have an easy starting amount. Others depend on scope, duration, materials, or a quote. Requiring a number can make an uncertain offer look precise before the provider has explained what it covers.
That is the detail I want a reader to notice. A sparse form can still impose a strong assumption. My next review would trace a quoted service and a fixed price service through the same flow, then inspect their public summaries. The customer should see the difference. The AI can help structure the provider’s explanation, but neither a model nor a polished template should manufacture certainty that the provider never supplied.
The profile needs evidence as well as clear pricing. I return to that question in A portfolio is part of the answer.
Where this chapter landed
What changed.
The public profile rules removed unsupported pricing units, default prices, availability labels, and review displays while retaining useful saved context.
Added while revisiting this story · September 2026
The thinking behind the detail.
Research notes to take these decisions further. These sources were reviewed for this retrospective.
The input needs its meaning
W3C distinguishes visible labels and instructions from an accessible name alone. Applied here, a price input needs enough visible context to explain what the amount represents, as well as a programmatic label.