ticlawk 0.1.17-dev.12 → 0.1.17-dev.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -8,9 +8,14 @@ The goal loop runs in the backend **goal lane**. Your chat-side job is to handle
|
|
|
8
8
|
|
|
9
9
|
## Handling a message
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
-
|
|
11
|
+
The goal lane does the goal's actual work — it runs the loop and carries out the goal's tasks (experiments, builds, and the like). Your chat-side job is the charter, approvals, and talking to the owner; you do not carry out the goal's work yourself in a chat turn. Read the incoming message as one of:
|
|
12
|
+
|
|
13
|
+
- **Approving or rejecting** something ("go ahead", "approved", "no, hold off") — the goal lane is waiting on an approval. Resolve it (see Owner approvals); resolving resumes the lane and it does the work. Don't do the work yourself.
|
|
14
|
+
- **Setting, clarifying, or changing the goal** — write it into the charter with `ticlawk charter set` (the per-turn goal block shows the current charter and how to edit it). That re-aims the lane.
|
|
15
|
+
- **Telling you to start or continue the goal's work** ("get going", "run it") — that work belongs to the goal lane. Don't run experiments, builds, or its tasks here. Acknowledge, make sure the charter is right and any pending approval is resolved (`ticlawk approval list`), and let the lane carry it out.
|
|
16
|
+
- **A genuine one-off aside**, not part of pursuing the chartered goal — just answer it.
|
|
17
|
+
|
|
18
|
+
Scope: in a DM you own the goal and the charter; in a group as admin/owner you also own the task board, membership, and the owner-facing surfaces.
|
|
14
19
|
|
|
15
20
|
## Owner approvals
|
|
16
21
|
|
|
@@ -101,16 +101,23 @@ If this message sets a goal, write it into the charter — the goal and what "do
|
|
|
101
101
|
`);
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
-
//
|
|
105
|
-
//
|
|
106
|
-
//
|
|
107
|
-
//
|
|
108
|
-
//
|
|
109
|
-
|
|
104
|
+
// For the goal-authority chat lane, lead with what work on the goal is doing
|
|
105
|
+
// right now (from goal_lane_state, attached by the claim) — in plain terms,
|
|
106
|
+
// not internal state names — so the agent acts on fact: resolve a pending
|
|
107
|
+
// approval, don't redo work already running, and use charter set for a goal
|
|
108
|
+
// change. Transition deliveries (the goal loop's own steps) get the spec only.
|
|
109
|
+
const gl = msg.goal_lane_state && typeof msg.goal_lane_state === 'object' ? msg.goal_lane_state : null;
|
|
110
|
+
const stateLine = !gl
|
|
111
|
+
? ''
|
|
112
|
+
: gl.pending_approval
|
|
113
|
+
? `Work on this goal is paused, waiting for you to approve: "${gl.pending_approval.title}". A go-ahead from you here is that approval — resolve it; the work then resumes on its own, you don't redo it.`
|
|
114
|
+
: (gl.state && gl.state !== 'suspended')
|
|
115
|
+
? `Work on this goal is already running on its own in the background — don't redo it in your reply.`
|
|
116
|
+
: `No work on this goal is running right now.`;
|
|
110
117
|
const authorityLine = msg.reason === 'transition'
|
|
111
118
|
? 'This is the goal and success spec for this conversation. Run the current step against it.'
|
|
112
119
|
: hasGoalAuthority(msg)
|
|
113
|
-
?
|
|
120
|
+
? `${stateLine ? stateLine + ' ' : ''}Handle this message and reply. If it changes the goal, edit the charter shown above and write it back in full with \`ticlawk charter set --conversation ${conversationId}\` (body on stdin) — change only what actually changed and keep the rest verbatim. That re-aims the work. See GOAL_AUTHORITY.md.`
|
|
114
121
|
: 'Use it as current group goal and role context. The group admin owns charter and dashboard changes unless they explicitly delegate them.';
|
|
115
122
|
return promptBlock(`
|
|
116
123
|
[conversation_goal]
|