Pulso’s Ask feature could not answer a general question at all, and the reason was structural rather than a bug: the schema behind every answer had no prose field, only a list of watch suggestions, so "is this a sensible first automatic" had nowhere to go. That is now two endpoints, /api/ask for prose answers carrying their own unknowns, references and follow-ups, and /api/ask/plan, which shows you what it understood before anything is spent. Choosing between them is done by a deterministic router in plain JavaScript, no model call, so asking costs nothing until the answer does.
Then the money, which was wrong in both directions at once. /api/ask never deducted a credit, because the guard only checked the balance and the deduction call was simply missing, so every advice answer was free. In the other direction, /plan promised a live price check that /api/ask then skipped whenever the watch wasn’t one you already own, which is exactly the case where a price is worth looking up. Charging now happens on delivery rather than on the promise. A brand-new account also read "you’re out of lookups" before asking anything, because the signup grant is lazy and /plan walked straight past it.
The other half of the day was heritage: every watch can now tell you its own story, under six enforced honesty rules that were tested against the awkward cases first. A Speedmaster comes back notable and dated 2021, not 1957, because it is the watch someone owns rather than the model’s legend, and a quartz Armani comes back ordinary with nothing invented. Backfilling six owned watches cost $0.16.
Also today: spec icons on every card, grid and list toggles on both platforms, and a Roadmap ladder that filtered 1/0 against a boolean and therefore showed zero of 54 shortlist watches.