unfairly 0.8.2 → 0.8.3
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/CHANGELOG.md +6 -0
- package/README.md +3 -1
- package/dist/cmd/pace.d.ts +22 -1
- package/dist/cmd/pace.d.ts.map +1 -1
- package/dist/cmd/pace.js +60 -27
- package/dist/cmd/pace.js.map +1 -1
- package/dist/pace/device.d.ts +3 -0
- package/dist/pace/device.d.ts.map +1 -1
- package/dist/pace/device.js +1 -0
- package/dist/pace/device.js.map +1 -1
- package/dist/pace/enroll.d.ts +80 -0
- package/dist/pace/enroll.d.ts.map +1 -0
- package/dist/pace/enroll.js +138 -0
- package/dist/pace/enroll.js.map +1 -0
- package/dist/pace-runtime.d.ts +2 -0
- package/dist/pace-runtime.d.ts.map +1 -0
- package/dist/pace-runtime.js +67 -0
- package/dist/pace-runtime.js.map +1 -0
- package/package.json +4 -3
- package/plugin/.mcp.json +1 -1
- package/plugin/README.md +3 -7
- package/plugin/gemini/gemini-extension.json +1 -1
- package/plugin/mcp.json +1 -1
- package/plugin/runtime/unfairly-intelligence.mjs +5513 -0
- package/plugin/scripts/capture.cjs +30 -8
- package/plugin/skills/find-company-playbook/SKILL.md +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.8.3 — 2026-09-25
|
|
4
|
+
|
|
5
|
+
- **Connect in the same session** — after the person approves the machine in the browser, a detached poller claims the collector credential within seconds, so the session that showed the link starts reporting without a restart.
|
|
6
|
+
- **90-day backfill on first connect** — the first sync fetches the org's approved repositories and uploads the last 90 days of session summaries with their commits.
|
|
7
|
+
- **Members of several organizations** — the connect code survives the organization picker, so a member of more than one org can choose which one the machine reports to.
|
|
8
|
+
|
|
3
9
|
## 0.8.2 — 2026-09-24
|
|
4
10
|
|
|
5
11
|
- **Unfairly Intelligence collector** — `unfairly setup` installs a metadata-only collector for Claude Code, Codex, Cursor, and Gemini CLI. At session boundaries it summarizes each session from the client's own local transcript: model, token counts by type, turns, tool calls and errors, approval denials, subagent use, the approved repository, the SHAs of the session's own commits, and which published skills or company playbooks it used. Prompts, responses, code, commands, paths, branch names, and commit messages never leave the machine; skills outside the published set are counted, not named.
|
package/README.md
CHANGED
|
@@ -21,9 +21,11 @@ That's it. One command — auto-detects state and:
|
|
|
21
21
|
|
|
22
22
|
Re-run any time inside the repo for a daily check-in card showing what your team's been up to.
|
|
23
23
|
|
|
24
|
+
For Unfairly Intelligence alone, most people install the plugin from their AI client's plugin screen instead (see `plugins/ai-pace/README.md`). `unfairly setup --org <org-id>` enrolls a machine into a specific organization, and `unfairly intelligence backfill --days 90` uploads summaries of past local sessions.
|
|
25
|
+
|
|
24
26
|
### Power-user commands
|
|
25
27
|
|
|
26
|
-
`unfairly setup` (machine wiring), `unfairly intelligence install` (collector install/repair), `unfairly intelligence status`, `unfairly intelligence policy`, `unfairly intelligence pause`, `unfairly intelligence uninstall`, `unfairly init` (workspace bind only), `unfairly pull`, `unfairly push`, `unfairly status`, `unfairly watch`, `unfairly mcp`, `unfairly login`. The bare command above delegates to these — they're available when you want fine-grained control.
|
|
28
|
+
`unfairly setup` (machine wiring), `unfairly intelligence install` (collector install/repair), `unfairly intelligence status`, `unfairly intelligence backfill`, `unfairly intelligence policy`, `unfairly intelligence pause`, `unfairly intelligence uninstall`, `unfairly init` (workspace bind only), `unfairly pull`, `unfairly push`, `unfairly status`, `unfairly watch`, `unfairly mcp`, `unfairly login`. The bare command above delegates to these — they're available when you want fine-grained control.
|
|
27
29
|
|
|
28
30
|
## Commands
|
|
29
31
|
|
package/dist/cmd/pace.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { detectPaceClients } from "../pace/device.js";
|
|
2
|
-
export declare const RUNTIME_VERSION = "0.8.
|
|
2
|
+
export declare const RUNTIME_VERSION = "0.8.3";
|
|
3
3
|
export declare const INTELLIGENCE_POLICY: {
|
|
4
4
|
version: "metadata-v3";
|
|
5
5
|
mode: "metadata_only";
|
|
@@ -7,6 +7,21 @@ export declare const INTELLIGENCE_POLICY: {
|
|
|
7
7
|
prohibited_content: string[];
|
|
8
8
|
};
|
|
9
9
|
export declare function runPaceCapture(source: string, hookEvent: string): Promise<void>;
|
|
10
|
+
/** How far back the first sync after connecting reads local transcripts. Matches the report's window. */
|
|
11
|
+
export declare const HISTORY_BACKFILL_DAYS = 90;
|
|
12
|
+
/**
|
|
13
|
+
* Summarizes local sessions and uploads them. Does nothing until this machine
|
|
14
|
+
* is connected: before that there is nowhere to send summaries and no
|
|
15
|
+
* approved-repository list, and a session summarized without that list would
|
|
16
|
+
* lose its commits for good. The first sync after connecting reads the last
|
|
17
|
+
* {@link HISTORY_BACKFILL_DAYS} days so the report has history from day one.
|
|
18
|
+
*/
|
|
19
|
+
export declare function runPaceSync(options?: {
|
|
20
|
+
flush?: boolean;
|
|
21
|
+
}): Promise<{
|
|
22
|
+
summarized: number;
|
|
23
|
+
backfilled: boolean;
|
|
24
|
+
} | null>;
|
|
10
25
|
/** Summarizes local sessions changed since the last sweep and queues them for upload. */
|
|
11
26
|
export declare function runPaceSweep(options?: {
|
|
12
27
|
sinceMs?: number;
|
|
@@ -15,6 +30,12 @@ export declare function runPaceSweep(options?: {
|
|
|
15
30
|
summarized: number;
|
|
16
31
|
queued: number;
|
|
17
32
|
}>;
|
|
33
|
+
/**
|
|
34
|
+
* The Authorization header for Intelligence uploads: this installation's own
|
|
35
|
+
* collector credential (plugin install path) or, failing that, the signed-in
|
|
36
|
+
* CLI token.
|
|
37
|
+
*/
|
|
38
|
+
export declare function paceAuthorization(): Promise<string | null>;
|
|
18
39
|
/** Pulls the organization's approved repositories so sessions can carry repository IDs and commit SHAs. */
|
|
19
40
|
export declare function refreshRepositoryPolicy(options?: {
|
|
20
41
|
force?: boolean;
|
package/dist/cmd/pace.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pace.d.ts","sourceRoot":"","sources":["../../src/cmd/pace.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,iBAAiB,EAIlB,MAAM,mBAAmB,CAAC;AAG3B,eAAO,MAAM,eAAe,UAAU,CAAC;AAEvC,eAAO,MAAM,mBAAmB;;;;;CAgB/B,CAAC;AAcF,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"pace.d.ts","sourceRoot":"","sources":["../../src/cmd/pace.ts"],"names":[],"mappings":"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"}
|
package/dist/cmd/pace.js
CHANGED
|
@@ -8,7 +8,7 @@ import { normalizeHookEvent } from "../pace/normalize.js";
|
|
|
8
8
|
import { appendPaceEvent, paceSpoolPath, readPaceEvents, removePaceEvents } from "../pace/spool.js";
|
|
9
9
|
import { currentDevicePlatform, detectPaceClients, paceDevicePath, readOrCreatePaceDevice, writePaceDevice, } from "../pace/device.js";
|
|
10
10
|
const DEFAULT_API = "https://app.unfairly.ai";
|
|
11
|
-
export const RUNTIME_VERSION = "0.8.
|
|
11
|
+
export const RUNTIME_VERSION = "0.8.3";
|
|
12
12
|
const PLUGIN_VERSION = "0.1.0";
|
|
13
13
|
export const INTELLIGENCE_POLICY = {
|
|
14
14
|
version: "metadata-v3",
|
|
@@ -54,20 +54,40 @@ export async function runPaceCapture(source, hookEvent) {
|
|
|
54
54
|
});
|
|
55
55
|
await appendPaceEvent(event);
|
|
56
56
|
const boundary = event.event_type === "session.started" || event.event_type === "session.ended" || event.event_type === "workflow.stopped";
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
// since the last sweep; a failure here must never break the AI workflow.
|
|
61
|
-
await runPaceSweep().catch(() => undefined);
|
|
62
|
-
}
|
|
63
|
-
if (process.env.UNFAIRLY_PACE_NO_FLUSH !== "1" && boundary) {
|
|
64
|
-
// A telemetry outage must never break the employee's AI workflow. Keep the
|
|
65
|
-
// durable queue and retry on the next session boundary or explicit flush.
|
|
66
|
-
await runPaceFlush().catch(() => undefined);
|
|
67
|
-
}
|
|
57
|
+
// A failure here must never break the AI workflow.
|
|
58
|
+
if (boundary)
|
|
59
|
+
await runPaceSync({ flush: process.env.UNFAIRLY_PACE_NO_FLUSH !== "1" }).catch(() => undefined);
|
|
68
60
|
}
|
|
69
61
|
const SWEEP_OVERLAP_MS = 15 * 60_000;
|
|
70
62
|
const FIRST_SWEEP_LOOKBACK_MS = 2 * 86_400_000;
|
|
63
|
+
/** How far back the first sync after connecting reads local transcripts. Matches the report's window. */
|
|
64
|
+
export const HISTORY_BACKFILL_DAYS = 90;
|
|
65
|
+
/**
|
|
66
|
+
* Summarizes local sessions and uploads them. Does nothing until this machine
|
|
67
|
+
* is connected: before that there is nowhere to send summaries and no
|
|
68
|
+
* approved-repository list, and a session summarized without that list would
|
|
69
|
+
* lose its commits for good. The first sync after connecting reads the last
|
|
70
|
+
* {@link HISTORY_BACKFILL_DAYS} days so the report has history from day one.
|
|
71
|
+
*/
|
|
72
|
+
export async function runPaceSync(options = {}) {
|
|
73
|
+
if (!(await paceAuthorization()))
|
|
74
|
+
return null;
|
|
75
|
+
const device = await readOrCreatePaceDevice();
|
|
76
|
+
const firstSync = !device.history_backfilled_at;
|
|
77
|
+
// Session summaries carry repository IDs and commit SHAs only for approved
|
|
78
|
+
// repositories, so the policy has to be current before sessions are summarized.
|
|
79
|
+
await refreshRepositoryPolicy({ force: firstSync }).catch(() => null);
|
|
80
|
+
const sweep = firstSync
|
|
81
|
+
? await runPaceSweep({ sinceMs: Date.now() - HISTORY_BACKFILL_DAYS * 86_400_000, collectedVia: "backfill" })
|
|
82
|
+
: await runPaceSweep();
|
|
83
|
+
if (firstSync)
|
|
84
|
+
await writePaceDevice({ ...(await readOrCreatePaceDevice()), history_backfilled_at: new Date().toISOString() });
|
|
85
|
+
// A telemetry outage must never break the employee's AI workflow. Keep the
|
|
86
|
+
// durable queue and retry on the next session boundary or explicit flush.
|
|
87
|
+
if (options.flush !== false)
|
|
88
|
+
await runPaceFlush().catch(() => undefined);
|
|
89
|
+
return { summarized: sweep.summarized, backfilled: firstSync };
|
|
90
|
+
}
|
|
71
91
|
/** Summarizes local sessions changed since the last sweep and queues them for upload. */
|
|
72
92
|
export async function runPaceSweep(options = {}) {
|
|
73
93
|
const { sweepLocalSessions } = await import("../pace/session-summary.js");
|
|
@@ -82,6 +102,19 @@ export async function runPaceSweep(options = {}) {
|
|
|
82
102
|
await writePaceDevice({ ...(await readOrCreatePaceDevice()), last_session_sweep_at: new Date(startedAt).toISOString() });
|
|
83
103
|
return result;
|
|
84
104
|
}
|
|
105
|
+
/**
|
|
106
|
+
* The Authorization header for Intelligence uploads: this installation's own
|
|
107
|
+
* collector credential (plugin install path) or, failing that, the signed-in
|
|
108
|
+
* CLI token.
|
|
109
|
+
*/
|
|
110
|
+
export async function paceAuthorization() {
|
|
111
|
+
const { collectorAuthorization, readCollectorCredential } = await import("../pace/enroll.js");
|
|
112
|
+
const credential = await readCollectorCredential();
|
|
113
|
+
if (credential)
|
|
114
|
+
return collectorAuthorization(credential);
|
|
115
|
+
const token = await getToken();
|
|
116
|
+
return token ? `Bearer ${token}` : null;
|
|
117
|
+
}
|
|
85
118
|
function apiBase() {
|
|
86
119
|
return (process.env.UNFAIRLY_API_URL ?? DEFAULT_API).replace(/\/$/, "");
|
|
87
120
|
}
|
|
@@ -91,10 +124,10 @@ export async function refreshRepositoryPolicy(options = {}) {
|
|
|
91
124
|
const fresh = device.repository_policy_refreshed_at && Date.now() - Date.parse(device.repository_policy_refreshed_at) < 3_600_000;
|
|
92
125
|
if (fresh && !options.force)
|
|
93
126
|
return null;
|
|
94
|
-
const
|
|
95
|
-
if (!
|
|
127
|
+
const authorization = await paceAuthorization();
|
|
128
|
+
if (!authorization)
|
|
96
129
|
return null;
|
|
97
|
-
const response = await fetch(`${apiBase()}/api/ai-pace/repository-policy`, { headers: { Authorization:
|
|
130
|
+
const response = await fetch(`${apiBase()}/api/ai-pace/repository-policy`, { headers: { Authorization: authorization } });
|
|
98
131
|
if (!response.ok)
|
|
99
132
|
return null;
|
|
100
133
|
const { parseRepositoryPolicy, repositoryPolicyPath } = await import("../pace/repository.js");
|
|
@@ -105,7 +138,7 @@ export async function refreshRepositoryPolicy(options = {}) {
|
|
|
105
138
|
await writePaceDevice({ ...(await readOrCreatePaceDevice()), repository_policy_refreshed_at: new Date().toISOString() });
|
|
106
139
|
return { repositories: policy.mappings.length };
|
|
107
140
|
}
|
|
108
|
-
async function uploadSessionSummaries(
|
|
141
|
+
async function uploadSessionSummaries(authorization) {
|
|
109
142
|
const { readSessionSpool, removeSessionSummaries } = await import("../pace/session-summary.js");
|
|
110
143
|
let sent = 0;
|
|
111
144
|
for (let round = 0; round < 50; round += 1) {
|
|
@@ -114,7 +147,7 @@ async function uploadSessionSummaries(token) {
|
|
|
114
147
|
break;
|
|
115
148
|
const response = await fetch(`${apiBase()}/api/ai-pace/sessions`, {
|
|
116
149
|
method: "POST",
|
|
117
|
-
headers: { Authorization:
|
|
150
|
+
headers: { Authorization: authorization, "Content-Type": "application/json" },
|
|
118
151
|
body: JSON.stringify({ sessions: pending }),
|
|
119
152
|
});
|
|
120
153
|
if (!response.ok)
|
|
@@ -130,18 +163,18 @@ export async function runPaceBackfill(days) {
|
|
|
130
163
|
// Uploads are only accepted from a registered, active installation.
|
|
131
164
|
await runPaceHeartbeat();
|
|
132
165
|
const sweep = await runPaceSweep({ sinceMs: Date.now() - days * 86_400_000, collectedVia: "backfill" });
|
|
133
|
-
const
|
|
134
|
-
if (!
|
|
166
|
+
const authorization = await paceAuthorization();
|
|
167
|
+
if (!authorization)
|
|
135
168
|
throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
|
|
136
|
-
const upload = await uploadSessionSummaries(
|
|
169
|
+
const upload = await uploadSessionSummaries(authorization);
|
|
137
170
|
return { summarized: sweep.summarized, uploaded: upload.sent, remaining: upload.remaining, approved_repositories: policy?.repositories ?? null };
|
|
138
171
|
}
|
|
139
172
|
export async function runPaceFlush() {
|
|
140
|
-
const
|
|
141
|
-
if (!
|
|
173
|
+
const authorization = await paceAuthorization();
|
|
174
|
+
if (!authorization)
|
|
142
175
|
throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
|
|
143
176
|
await refreshRepositoryPolicy().catch(() => null);
|
|
144
|
-
const sessions = await uploadSessionSummaries(
|
|
177
|
+
const sessions = await uploadSessionSummaries(authorization);
|
|
145
178
|
const events = await readPaceEvents();
|
|
146
179
|
if (!events.length)
|
|
147
180
|
return { sent: 0, remaining: 0, sessions_sent: sessions.sent };
|
|
@@ -154,7 +187,7 @@ export async function runPaceFlush() {
|
|
|
154
187
|
const response = await fetch(`${apiUrl}/api/ai-pace/events`, {
|
|
155
188
|
method: "POST",
|
|
156
189
|
headers: {
|
|
157
|
-
Authorization:
|
|
190
|
+
Authorization: authorization,
|
|
158
191
|
"Content-Type": "application/json",
|
|
159
192
|
...(device.attestation ? { "X-AI-Pace-Attestation": device.attestation } : {}),
|
|
160
193
|
},
|
|
@@ -168,8 +201,8 @@ export async function runPaceFlush() {
|
|
|
168
201
|
return { sent: events.length, remaining, sessions_sent: sessions.sent };
|
|
169
202
|
}
|
|
170
203
|
export async function runPaceHeartbeat() {
|
|
171
|
-
const
|
|
172
|
-
if (!
|
|
204
|
+
const authorization = await paceAuthorization();
|
|
205
|
+
if (!authorization)
|
|
173
206
|
throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
|
|
174
207
|
const device = await readOrCreatePaceDevice();
|
|
175
208
|
const clients = await detectPaceClients();
|
|
@@ -177,7 +210,7 @@ export async function runPaceHeartbeat() {
|
|
|
177
210
|
const response = await fetch(`${apiUrl}/api/ai-pace/heartbeat`, {
|
|
178
211
|
method: "POST",
|
|
179
212
|
headers: {
|
|
180
|
-
Authorization:
|
|
213
|
+
Authorization: authorization,
|
|
181
214
|
"Content-Type": "application/json",
|
|
182
215
|
},
|
|
183
216
|
body: JSON.stringify({
|
package/dist/cmd/pace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pace.js","sourceRoot":"","sources":["../../src/cmd/pace.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pace.js","sourceRoot":"","sources":["../../src/cmd/pace.ts"],"names":[],"mappings":"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"}
|
package/dist/pace/device.d.ts
CHANGED
|
@@ -25,6 +25,7 @@ declare const DeviceStateSchema: z.ZodObject<{
|
|
|
25
25
|
paused: z.ZodOptional<z.ZodBoolean>;
|
|
26
26
|
last_upload_at: z.ZodOptional<z.ZodString>;
|
|
27
27
|
last_session_sweep_at: z.ZodOptional<z.ZodString>;
|
|
28
|
+
history_backfilled_at: z.ZodOptional<z.ZodString>;
|
|
28
29
|
repository_policy_refreshed_at: z.ZodOptional<z.ZodString>;
|
|
29
30
|
collection_policy_version: z.ZodOptional<z.ZodLiteral<"metadata-v3">>;
|
|
30
31
|
managed_files: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
@@ -58,6 +59,7 @@ declare const DeviceStateSchema: z.ZodObject<{
|
|
|
58
59
|
paused?: boolean | undefined;
|
|
59
60
|
last_upload_at?: string | undefined;
|
|
60
61
|
last_session_sweep_at?: string | undefined;
|
|
62
|
+
history_backfilled_at?: string | undefined;
|
|
61
63
|
repository_policy_refreshed_at?: string | undefined;
|
|
62
64
|
managed_files?: string[] | undefined;
|
|
63
65
|
intelligence_install?: {
|
|
@@ -76,6 +78,7 @@ declare const DeviceStateSchema: z.ZodObject<{
|
|
|
76
78
|
paused?: boolean | undefined;
|
|
77
79
|
last_upload_at?: string | undefined;
|
|
78
80
|
last_session_sweep_at?: string | undefined;
|
|
81
|
+
history_backfilled_at?: string | undefined;
|
|
79
82
|
repository_policy_refreshed_at?: string | undefined;
|
|
80
83
|
managed_files?: string[] | undefined;
|
|
81
84
|
intelligence_install?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/pace/device.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB,gHAQ7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAK1B,CAAC;AAEZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAW1E,QAAA,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/pace/device.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB,gHAQ7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAK1B,CAAC;AAEZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAW1E,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYZ,CAAC;AAEZ,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,eAAe,CAAC,CAUvE;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAM3E;AAkBD,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA0DvE;AAED,wBAAgB,qBAAqB,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAE1E;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAKvG"}
|
package/dist/pace/device.js
CHANGED
|
@@ -34,6 +34,7 @@ const DeviceStateSchema = z.object({
|
|
|
34
34
|
paused: z.boolean().optional(),
|
|
35
35
|
last_upload_at: z.string().datetime().optional(),
|
|
36
36
|
last_session_sweep_at: z.string().datetime().optional(),
|
|
37
|
+
history_backfilled_at: z.string().datetime().optional(),
|
|
37
38
|
repository_policy_refreshed_at: z.string().datetime().optional(),
|
|
38
39
|
collection_policy_version: z.literal("metadata-v3").optional(),
|
|
39
40
|
managed_files: z.array(z.string().min(1)).max(20).optional(),
|
package/dist/pace/device.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/pace/device.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/pace/device.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* No-terminal connection for the plugin. On a session start without a
|
|
4
|
+
* collector credential, the plugin starts (or continues) a browser-approved
|
|
5
|
+
* enrollment and hands the person a link. Once approved, it claims a
|
|
6
|
+
* credential bound to this installation. Only these two small files are kept.
|
|
7
|
+
*/
|
|
8
|
+
declare const CredentialSchema: z.ZodObject<{
|
|
9
|
+
installation_id: z.ZodString;
|
|
10
|
+
secret: z.ZodString;
|
|
11
|
+
org_id: z.ZodString;
|
|
12
|
+
}, "strict", z.ZodTypeAny, {
|
|
13
|
+
installation_id: string;
|
|
14
|
+
secret: string;
|
|
15
|
+
org_id: string;
|
|
16
|
+
}, {
|
|
17
|
+
installation_id: string;
|
|
18
|
+
secret: string;
|
|
19
|
+
org_id: string;
|
|
20
|
+
}>;
|
|
21
|
+
export type CollectorCredential = z.infer<typeof CredentialSchema>;
|
|
22
|
+
export declare const collectorCredentialPath: () => string;
|
|
23
|
+
export declare const readCollectorCredential: () => Promise<{
|
|
24
|
+
installation_id: string;
|
|
25
|
+
secret: string;
|
|
26
|
+
org_id: string;
|
|
27
|
+
} | null>;
|
|
28
|
+
export declare function collectorAuthorization(credential: CollectorCredential): string;
|
|
29
|
+
export type EnrollmentState = {
|
|
30
|
+
status: "connected";
|
|
31
|
+
orgId: string;
|
|
32
|
+
} | {
|
|
33
|
+
status: "waiting";
|
|
34
|
+
link: string;
|
|
35
|
+
code: string;
|
|
36
|
+
} | {
|
|
37
|
+
status: "unavailable";
|
|
38
|
+
};
|
|
39
|
+
/** One step of the enrollment state machine; safe to call on every session start. */
|
|
40
|
+
export declare function ensureEnrolled(input: {
|
|
41
|
+
apiUrl: string;
|
|
42
|
+
installationId: string;
|
|
43
|
+
platform: "darwin" | "linux" | "win32";
|
|
44
|
+
arch: "x64" | "arm64";
|
|
45
|
+
clients: string[];
|
|
46
|
+
orgHint?: string;
|
|
47
|
+
fetchImpl?: typeof fetch;
|
|
48
|
+
now?: Date;
|
|
49
|
+
}): Promise<EnrollmentState>;
|
|
50
|
+
/**
|
|
51
|
+
* Checks the enrollment this machine is waiting on, without starting a new
|
|
52
|
+
* one. Claims and stores the credential when the person has approved it.
|
|
53
|
+
*/
|
|
54
|
+
export declare function pollPendingEnrollment(input: {
|
|
55
|
+
apiUrl: string;
|
|
56
|
+
fetchImpl?: typeof fetch;
|
|
57
|
+
now?: Date;
|
|
58
|
+
}): Promise<EnrollmentState | {
|
|
59
|
+
status: "none";
|
|
60
|
+
}>;
|
|
61
|
+
/**
|
|
62
|
+
* Keeps polling after the connect link is shown, so approving in the browser
|
|
63
|
+
* connects this machine within seconds instead of at the next session start.
|
|
64
|
+
* Stops when connected, when the enrollment ends, or at the deadline.
|
|
65
|
+
*/
|
|
66
|
+
export declare function awaitApproval(input: {
|
|
67
|
+
apiUrl: string;
|
|
68
|
+
intervalMs?: number;
|
|
69
|
+
deadlineMs?: number;
|
|
70
|
+
fetchImpl?: typeof fetch;
|
|
71
|
+
sleep?: (ms: number) => Promise<void>;
|
|
72
|
+
clock?: () => number;
|
|
73
|
+
}): Promise<boolean>;
|
|
74
|
+
/** At most one background poller per machine: sessions often start in bursts. */
|
|
75
|
+
export declare function acquireApprovalLock(now?: number): Promise<boolean>;
|
|
76
|
+
export declare const releaseApprovalLock: () => Promise<void | undefined>;
|
|
77
|
+
/** What a SessionStart hook prints: a visible message for the person plus context so the assistant can repeat the link. */
|
|
78
|
+
export declare function sessionStartOutput(state: EnrollmentState, hookEventName?: string): string;
|
|
79
|
+
export {};
|
|
80
|
+
//# sourceMappingURL=enroll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enroll.d.ts","sourceRoot":"","sources":["../../src/pace/enroll.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AAEH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;EAAwI,CAAC;AAE/J,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAGnE,eAAO,MAAM,uBAAuB,cAAkF,CAAC;AAiBvH,eAAO,MAAM,uBAAuB;;;;SAA8D,CAAC;AAEnG,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,mBAAmB,GAAG,MAAM,CAE9E;AAED,MAAM,MAAM,eAAe,GACvB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC;AAE9B,qFAAqF;AACrF,wBAAsB,cAAc,CAAC,KAAK,EAAE;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;IACvC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ,GAAG,OAAO,CAAC,eAAe,CAAC,CAoB3B;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC,eAAe,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAe1J;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,OAAO,CAAC,CAWnB;AAID,iFAAiF;AACjF,wBAAsB,mBAAmB,CAAC,GAAG,SAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAiB5E;AAED,eAAO,MAAM,mBAAmB,iCAA6D,CAAC;AAE9F,2HAA2H;AAC3H,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,SAAiB,GAAG,MAAM,CAUjG"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import fs from "node:fs/promises";
|
|
2
|
+
import os from "node:os";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
/**
|
|
6
|
+
* No-terminal connection for the plugin. On a session start without a
|
|
7
|
+
* collector credential, the plugin starts (or continues) a browser-approved
|
|
8
|
+
* enrollment and hands the person a link. Once approved, it claims a
|
|
9
|
+
* credential bound to this installation. Only these two small files are kept.
|
|
10
|
+
*/
|
|
11
|
+
const CredentialSchema = z.object({ installation_id: z.string().uuid(), secret: z.string().regex(/^[A-Za-z0-9_-]{43}$/), org_id: z.string().uuid() }).strict();
|
|
12
|
+
const PendingSchema = z.object({ device_code: z.string(), user_code: z.string(), verification_uri: z.string().url(), expires_at: z.string() }).strict();
|
|
13
|
+
const dir = () => path.join(os.homedir(), ".unfairly", "pace");
|
|
14
|
+
export const collectorCredentialPath = () => process.env.UNFAIRLY_PACE_COLLECTOR ?? path.join(dir(), "collector.json");
|
|
15
|
+
const pendingPath = () => process.env.UNFAIRLY_PACE_ENROLLMENT ?? path.join(dir(), "enrollment.json");
|
|
16
|
+
async function readJson(file, schema) {
|
|
17
|
+
try {
|
|
18
|
+
const parsed = schema.safeParse(JSON.parse(await fs.readFile(file, "utf8")));
|
|
19
|
+
return parsed.success ? parsed.data : null;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
async function writeJson(file, value) {
|
|
26
|
+
await fs.mkdir(path.dirname(file), { recursive: true, mode: 0o700 });
|
|
27
|
+
await fs.writeFile(file, `${JSON.stringify(value)}\n`, { encoding: "utf8", mode: 0o600 });
|
|
28
|
+
}
|
|
29
|
+
export const readCollectorCredential = () => readJson(collectorCredentialPath(), CredentialSchema);
|
|
30
|
+
export function collectorAuthorization(credential) {
|
|
31
|
+
return `Collector ${credential.installation_id}.${credential.secret}`;
|
|
32
|
+
}
|
|
33
|
+
/** One step of the enrollment state machine; safe to call on every session start. */
|
|
34
|
+
export async function ensureEnrolled(input) {
|
|
35
|
+
const existing = await readCollectorCredential();
|
|
36
|
+
if (existing)
|
|
37
|
+
return { status: "connected", orgId: existing.org_id };
|
|
38
|
+
const call = input.fetchImpl ?? fetch;
|
|
39
|
+
const now = input.now ?? new Date();
|
|
40
|
+
const polled = await pollPendingEnrollment({ apiUrl: input.apiUrl, fetchImpl: call, now });
|
|
41
|
+
if (polled.status === "connected" || polled.status === "waiting")
|
|
42
|
+
return polled;
|
|
43
|
+
// No live enrollment, or it was denied, expired, or claimed elsewhere: start over.
|
|
44
|
+
const clients = input.clients.filter((client) => ["codex", "claude_code", "cursor", "gemini_cli"].includes(client));
|
|
45
|
+
const response = await call(`${input.apiUrl}/api/ai-pace/enroll`, {
|
|
46
|
+
method: "POST",
|
|
47
|
+
headers: { "Content-Type": "application/json" },
|
|
48
|
+
body: JSON.stringify({ installation_id: input.installationId, platform: input.platform, arch: input.arch, clients, ...(input.orgHint ? { org_hint: input.orgHint } : {}) }),
|
|
49
|
+
});
|
|
50
|
+
if (!response.ok)
|
|
51
|
+
return { status: "unavailable" };
|
|
52
|
+
const started = await response.json();
|
|
53
|
+
await writeJson(pendingPath(), { device_code: started.device_code, user_code: started.user_code, verification_uri: started.verification_uri, expires_at: new Date(now.getTime() + started.expires_in * 1000).toISOString() });
|
|
54
|
+
return { status: "waiting", link: started.verification_uri, code: started.user_code };
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Checks the enrollment this machine is waiting on, without starting a new
|
|
58
|
+
* one. Claims and stores the credential when the person has approved it.
|
|
59
|
+
*/
|
|
60
|
+
export async function pollPendingEnrollment(input) {
|
|
61
|
+
const existing = await readCollectorCredential();
|
|
62
|
+
if (existing)
|
|
63
|
+
return { status: "connected", orgId: existing.org_id };
|
|
64
|
+
const pending = await readJson(pendingPath(), PendingSchema);
|
|
65
|
+
if (!pending || Date.parse(pending.expires_at) <= (input.now ?? new Date()).getTime())
|
|
66
|
+
return { status: "none" };
|
|
67
|
+
const call = input.fetchImpl ?? fetch;
|
|
68
|
+
const response = await call(`${input.apiUrl}/api/ai-pace/enroll/poll`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ device_code: pending.device_code }) });
|
|
69
|
+
const body = await response.json().catch(() => ({}));
|
|
70
|
+
if (body.status === "approved" && body.installation_id && body.secret && body.org_id) {
|
|
71
|
+
await writeJson(collectorCredentialPath(), CredentialSchema.parse({ installation_id: body.installation_id, secret: body.secret, org_id: body.org_id }));
|
|
72
|
+
await fs.unlink(pendingPath()).catch(() => undefined);
|
|
73
|
+
return { status: "connected", orgId: body.org_id };
|
|
74
|
+
}
|
|
75
|
+
if (body.status === "pending")
|
|
76
|
+
return { status: "waiting", link: pending.verification_uri, code: pending.user_code };
|
|
77
|
+
return { status: "none" };
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Keeps polling after the connect link is shown, so approving in the browser
|
|
81
|
+
* connects this machine within seconds instead of at the next session start.
|
|
82
|
+
* Stops when connected, when the enrollment ends, or at the deadline.
|
|
83
|
+
*/
|
|
84
|
+
export async function awaitApproval(input) {
|
|
85
|
+
const clock = input.clock ?? Date.now;
|
|
86
|
+
const sleep = input.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
|
|
87
|
+
const deadline = clock() + (input.deadlineMs ?? 16 * 60_000);
|
|
88
|
+
while (clock() < deadline) {
|
|
89
|
+
const state = await pollPendingEnrollment({ apiUrl: input.apiUrl, fetchImpl: input.fetchImpl, now: new Date(clock()) }).catch(() => ({ status: "waiting" }));
|
|
90
|
+
if (state.status === "connected")
|
|
91
|
+
return true;
|
|
92
|
+
if (state.status === "none")
|
|
93
|
+
return false;
|
|
94
|
+
await sleep(input.intervalMs ?? 5_000);
|
|
95
|
+
}
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
const approvalLockPath = () => path.join(path.dirname(pendingPath()), "approval-wait.json");
|
|
99
|
+
/** At most one background poller per machine: sessions often start in bursts. */
|
|
100
|
+
export async function acquireApprovalLock(now = Date.now()) {
|
|
101
|
+
const file = approvalLockPath();
|
|
102
|
+
try {
|
|
103
|
+
const lock = JSON.parse(await fs.readFile(file, "utf8"));
|
|
104
|
+
const fresh = typeof lock.started_at === "number" && now - lock.started_at < 17 * 60_000;
|
|
105
|
+
let alive = false;
|
|
106
|
+
try {
|
|
107
|
+
if (typeof lock.pid === "number") {
|
|
108
|
+
process.kill(lock.pid, 0);
|
|
109
|
+
alive = true;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
catch {
|
|
113
|
+
alive = false;
|
|
114
|
+
}
|
|
115
|
+
if (fresh && alive)
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
// No lock yet.
|
|
120
|
+
}
|
|
121
|
+
await writeJson(file, { pid: process.pid, started_at: now });
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
export const releaseApprovalLock = () => fs.unlink(approvalLockPath()).catch(() => undefined);
|
|
125
|
+
/** What a SessionStart hook prints: a visible message for the person plus context so the assistant can repeat the link. */
|
|
126
|
+
export function sessionStartOutput(state, hookEventName = "SessionStart") {
|
|
127
|
+
if (state.status !== "waiting")
|
|
128
|
+
return "";
|
|
129
|
+
const message = `Connect Unfairly Intelligence to your team: open ${state.link} and approve code ${state.code}. It shares session metadata only, never prompts or code.`;
|
|
130
|
+
return JSON.stringify({
|
|
131
|
+
systemMessage: message,
|
|
132
|
+
hookSpecificOutput: {
|
|
133
|
+
hookEventName,
|
|
134
|
+
additionalContext: `The Unfairly Intelligence plugin is installed but this machine is not connected yet. At a natural point, tell the user once: "${message}" Do not repeat it after they connect.`,
|
|
135
|
+
},
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=enroll.js.map
|