Counter-Offer
A Knight-initiated proposal of different terms while a Shrubbery is still awaiting Handshake.
Definition
A Counter-Offer is when the Knight (assignee) changes the objective and/or deadline on a Pending_Handshake row and asks the Lead to accept those terms instead. The row stays Pending_Handshake with pending_counter_offer = true until the Lead accepts or the path is otherwise resolved.
Avoid: renegotiation (that is Lead-initiated on an
Activerow), edit, pushback.
Role
Counter-Offer keeps consent two-sided when the original terms do not work for the assignee. Unlike Lead Renegotiation, the Knight cannot counter an already-Active commitment — only a pending proposal. The audit trail reuses event type renegotiated with initiator: 'knight' so timelines stay unified without a separate event enum.
The Lead accepts via the Garden/Oversight actions (acceptCounterOffer), which moves the row to Active on the counter terms. There is no dedicated "reject counter-offer" action: the Lead can re-edit terms (clearing the flag) or the Knight can refuse the whole commitment.
Lifecycle
- Proposed — Knight patches task/deadline on
Pending_Handshake;pending_counter_offerset; Lead notified (counter_offer_proposed). - Standing — badge on the Lead's card; row still pending consent.
- Accepted — Lead accepts →
Active, flag cleared; auditacceptedwithvia: 'counter_offer'. - Superseded — Lead edits the row; counter flag clears.
- Abandoned — Knight refuses →
Refused; flag clears.
Related guides
Last updated: 24 July 2026