Connect by JBRH Open Connect

Price, SLA and warranty: what Connect may say

A price, an SLA or a warranty that Knowledge does not support is refused and escalated to a person, not improvised. That refusal is the correct outcome rather than a missing feature: an agent that guesses a figure has committed your business to it. What Connect may say is what your own sources already say, quoted rather than inferred.

Status
Available What this means
Audience
both
Channels
emailwhatsappphone
In the app
#/knowledge, #/needs-you, #/pipeline
Last verified
Product version
6.3.2

The rule#

safe_sales.py holds one principle across every channel: Connect does not create commercial terms. It is not a filter bolted to the end of a reply — it is the difference between an assistant that answers from your sources and one that produces a plausible number under pressure from a customer who wants an answer now.

The questionAnswered whenOtherwise
What does it cost?A figure for that item exists in KnowledgeRefused; the question reaches a person with the conversation attached
Can you do it cheaper?A published discount rule covers the caseRefused — a discount is an authority the workspace holds, not a negotiation the agent may open
How quickly will it be done?A stated turnaround exists for that workRefused; a commitment invented on a call is still a commitment
What is the guarantee?A warranty statement exists and appliesRefused, and this one matters most: warranties outlive the conversation
Will you match their quote?Never answerable from sources aloneAlways a person's decision

What grounded actually means#

Grounded means the words came from a source the workspace supplied, not from a model's sense of what a reasonable figure looks like. Knowledge is budgeted into any reply — of the order of 2,000 characters and four facts — so grounding is selective by design: the facts that bear on the question, carried into the answer, with the rest left out.

  • A number in Knowledge may be quoted as it stands, in the context its source gives it.
  • A term that applies conditionally is answered with the condition, or not at all — a conditional term stated flatly is a different term.
  • Where two sources disagree, the disagreement is a reason to escalate rather than a reason to pick one.
  • Nothing is inferred by arithmetic from a related figure. A unit price is not a bulk price, and deriving one from the other is invention with a calculation in front of it.

The realtime voice path is different, and honestly so#

On the turn-based carrier path every sentence is produced by Connect and is checked before it is spoken. On the realtime speech-to-speech path the model talks directly to the caller: there is no seam between deciding and saying, so the rule can only live in the instructions the session was opened with. Prevention is not available there.

So a breach is *detected* instead. price_spoken counts the lines the voice priced, using the same expression the carrier path checks each sentence with — deliberately the same expression, so that the two paths agree on what counts as a price rather than each holding a private opinion. A call where that count is not zero is visible afterwards and can be listened to, corrected in the instructions, and used to decide whether that workspace should be on the realtime path at all.

What a refusal looks like to a customer#

A refusal is not a wall. The reply says what Connect can say, states that the commercial part is being put to a person, and — where the channel and the autonomy rules allow — commits to coming back. That commitment becomes a follow-up with a reason and a due time, so it is a record rather than a promise nobody kept.

What the customer hears
An answer to everything answerable, and a clear statement that the figure is coming from a person.
What is created
A review on the deal, an item in Needs You, and usually a follow-up carrying the promise.
What is not created
A number. Nothing is written to the opportunity's value on the strength of a conversation nobody has authorised.
What is recorded
The refusal itself, in the decision log, with the rule that produced it.

Making more of it answerable#

  1. Look at what is being escalated repeatedly. The pattern is the specification for what your Knowledge is missing.

    Result Three escalations of the same question are a documentation gap, not three incidents.

  2. Add the term to Knowledge in the form a customer asks about it, including its conditions.

    Result The next identical question is answered from a source, and the answer cites something a person can check.

  3. Leave genuinely negotiable terms out.

    Result Escalation is the right outcome for a decision that depends on the customer in front of you, and Knowledge should not pretend otherwise.

Questions#

Is refusing to quote a limitation of the plan?

No. It is the same behaviour in every workspace, including the operator's own. The alternative is an agent that commits your business to terms nobody chose, which is not a feature at any price.

Can I let Connect quote from a price list?

That is exactly the supported path. A price list in Knowledge makes the figure grounded, and the answer then quotes your source rather than inventing one. What stays refused is a figure that no source carries.

How do I know whether a live call priced something?

The call record carries the count of priced lines, produced by the same test the carrier path applies to every sentence. A non-zero count is the thing to listen to, and the reason detection was built rather than assumed.