Protected ReadonlychatProtected ReadonlycontextProtectedhasProtectedhasProtectedhasProtected ReadonlylanguageProtected ReadonlypreferenceProtected ReadonlytoProtectedtoolProtectedinitProtectedisWhether a preference carries a value the user set, rather than the one the product ships.
The effective value cannot answer this: a product is free to ship its own confirmation defaults, and reading those back as a decision would tick the step for a user who never saw it. An empty object does not count either, since that is what resetting the per-tool settings leaves behind.
Called when an application is stopped or unloaded.
Note that this is implemented using window.pagehide which doesn't allow any asynchronous code anymore.
I.e. this is the last tick.
ProtectedupdateA session gets its title from its first exchange, so a titled or persisted session means the user has asked something. Once true, the key stays true: the achievement does not go away when a chat is deleted.
ProtectedupdateProtectedupdateProtectedupdateThe user has taken a stance on tool confirmation as soon as they changed the default mode or pre-approved individual tools.
Publishes the state that the getting started walkthrough observes to tick off its steps.
The keys describe what the user achieved rather than what they clicked. A step is therefore only completed once the setup actually works, and a user who configured everything before ever opening the walkthrough finds it completed rather than waiting for changes that already happened.