@nestr/mcp 0.1.72 → 0.1.89
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/build/api/client.d.ts +84 -5
- package/build/api/client.d.ts.map +1 -1
- package/build/api/client.js +120 -21
- package/build/api/client.js.map +1 -1
- package/build/help/articles.d.ts +146 -0
- package/build/help/articles.d.ts.map +1 -0
- package/build/help/articles.js +574 -0
- package/build/help/articles.js.map +1 -0
- package/build/help/cross-links.d.ts +21 -0
- package/build/help/cross-links.d.ts.map +1 -0
- package/build/help/cross-links.js +61 -0
- package/build/help/cross-links.js.map +1 -0
- package/build/help/topics.d.ts.map +1 -1
- package/build/help/topics.js +324 -12
- package/build/help/topics.js.map +1 -1
- package/build/http.d.ts +26 -13
- package/build/http.d.ts.map +1 -1
- package/build/http.js +572 -128
- package/build/http.js.map +1 -1
- package/build/oauth/client-info.d.ts +58 -0
- package/build/oauth/client-info.d.ts.map +1 -0
- package/build/oauth/client-info.js +68 -0
- package/build/oauth/client-info.js.map +1 -0
- package/build/oauth/config.d.ts +19 -0
- package/build/oauth/config.d.ts.map +1 -1
- package/build/oauth/config.js +12 -0
- package/build/oauth/config.js.map +1 -1
- package/build/oauth/flow.d.ts +6 -0
- package/build/oauth/flow.d.ts.map +1 -1
- package/build/oauth/flow.js +30 -4
- package/build/oauth/flow.js.map +1 -1
- package/build/oauth/store.d.ts +14 -0
- package/build/oauth/store.d.ts.map +1 -1
- package/build/oauth/store.js.map +1 -1
- package/build/server.d.ts +11 -0
- package/build/server.d.ts.map +1 -1
- package/build/server.js +38 -5
- package/build/server.js.map +1 -1
- package/build/skills/tension-processing.d.ts.map +1 -1
- package/build/skills/tension-processing.js +11 -1
- package/build/skills/tension-processing.js.map +1 -1
- package/build/tools/index.d.ts +580 -90
- package/build/tools/index.d.ts.map +1 -1
- package/build/tools/index.js +598 -82
- package/build/tools/index.js.map +1 -1
- package/build/tools/validation.d.ts +42 -0
- package/build/tools/validation.d.ts.map +1 -0
- package/build/tools/validation.js +97 -0
- package/build/tools/validation.js.map +1 -0
- package/build/util/diagnose.d.ts +40 -0
- package/build/util/diagnose.d.ts.map +1 -0
- package/build/util/diagnose.js +26 -0
- package/build/util/diagnose.js.map +1 -0
- package/build/util/request-context.d.ts +11 -0
- package/build/util/request-context.d.ts.map +1 -0
- package/build/util/request-context.js +30 -0
- package/build/util/request-context.js.map +1 -0
- package/package.json +2 -1
- package/web/index.html +25 -0
- package/web/styles.css +62 -0
package/build/oauth/flow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/oauth/flow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,QAAQ,GAGT,MAAM,YAAY,CAAC;AA+
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/oauth/flow.ts"],"names":[],"mappings":"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"}
|
package/build/oauth/store.d.ts
CHANGED
|
@@ -32,6 +32,8 @@ export interface PendingAuthWithPKCE {
|
|
|
32
32
|
scope?: string;
|
|
33
33
|
/** Identifier for the MCP client (e.g., "claude-code", "cursor") for token metadata */
|
|
34
34
|
clientConsumer?: string;
|
|
35
|
+
/** MCP `clientInfo.version` from the initialize handshake (e.g., "1.4.2"). */
|
|
36
|
+
clientVersion?: string;
|
|
35
37
|
/** GA4 client_id for cross-domain analytics tracking */
|
|
36
38
|
gaClientId?: string;
|
|
37
39
|
}
|
|
@@ -45,6 +47,16 @@ export interface StoredOAuthSession {
|
|
|
45
47
|
scope?: string;
|
|
46
48
|
/** Nestr user ID for analytics (GA4 user_id) */
|
|
47
49
|
userId?: string;
|
|
50
|
+
/**
|
|
51
|
+
* Most recent refresh attempt — for `nestr_diagnose`. We persist this so the
|
|
52
|
+
* answer survives pod restarts and is consistent across the pool. Cleared
|
|
53
|
+
* (or replaced) whenever a new refresh runs.
|
|
54
|
+
*/
|
|
55
|
+
lastRefreshAttempt?: {
|
|
56
|
+
at: number;
|
|
57
|
+
success: boolean;
|
|
58
|
+
error?: string;
|
|
59
|
+
};
|
|
48
60
|
}
|
|
49
61
|
/**
|
|
50
62
|
* PKCE challenge data indexed by authorization code
|
|
@@ -67,6 +79,8 @@ export interface PkceForCodeData {
|
|
|
67
79
|
export interface StoredMcpSession {
|
|
68
80
|
authToken: string;
|
|
69
81
|
mcpClient?: string;
|
|
82
|
+
/** MCP `clientInfo.version` from the initialize handshake (e.g., "1.4.2"). */
|
|
83
|
+
mcpClientVersion?: string;
|
|
70
84
|
userId?: string;
|
|
71
85
|
userName?: string;
|
|
72
86
|
isApiKey: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/oauth/store.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,0BAA0B,EAAE,MAAM,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uFAAuF;IACvF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/oauth/store.ts"],"names":[],"mappings":"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"}
|
package/build/oauth/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/oauth/store.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/oauth/store.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyHH,4CAA4C;AAE5C,IAAI,MAAM,GAAsB,IAAI,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC9D,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC5D,MAAM,GAAG,eAAe,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/build/server.d.ts
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
6
6
|
import { NestrClient } from "./api/client.js";
|
|
7
|
+
import type { DiagnoseSnapshot } from "./util/diagnose.js";
|
|
8
|
+
export type { DiagnoseSnapshot };
|
|
7
9
|
export interface NestrMcpServerConfig {
|
|
8
10
|
client?: NestrClient;
|
|
9
11
|
/** Optional callback for analytics tracking of tool calls */
|
|
@@ -12,6 +14,15 @@ export interface NestrMcpServerConfig {
|
|
|
12
14
|
userId?: string;
|
|
13
15
|
/** Pre-resolved user display name for MCPcat identification */
|
|
14
16
|
userName?: string;
|
|
17
|
+
/** Builds a fresh diagnose snapshot from session state. Required for nestr_diagnose. */
|
|
18
|
+
getDiagnose?: () => DiagnoseSnapshot;
|
|
19
|
+
/**
|
|
20
|
+
* Public (unauthenticated) mode. When true the server advertises only the
|
|
21
|
+
* public help tools (PUBLIC_TOOL_NAMES) and every tool call is run with
|
|
22
|
+
* isPublic=true, so it can never reach authenticated Nestr data. Defaults to
|
|
23
|
+
* false — the standard authenticated /mcp surface is unchanged.
|
|
24
|
+
*/
|
|
25
|
+
isPublic?: boolean;
|
|
15
26
|
}
|
|
16
27
|
export declare function createServer(config?: NestrMcpServerConfig): Server;
|
|
17
28
|
//# sourceMappingURL=server.d.ts.map
|
package/build/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAOnE,OAAO,EAAE,WAAW,EAAuB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAOnE,OAAO,EAAE,WAAW,EAAuB,MAAM,iBAAiB,CAAC;AAMnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAEjC,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACzG,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,gBAAgB,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAuED,wBAAgB,YAAY,CAAC,MAAM,GAAE,oBAAyB,GAAG,MAAM,CA+OtE"}
|
package/build/server.js
CHANGED
|
@@ -6,7 +6,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
|
6
6
|
import { ListToolsRequestSchema, CallToolRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
7
7
|
import { createClientFromEnv } from "./api/client.js";
|
|
8
8
|
import { VERSION } from "./version.js";
|
|
9
|
-
import { toolDefinitions, handleToolCall } from "./tools/index.js";
|
|
9
|
+
import { toolDefinitions, handleToolCall, PUBLIC_TOOL_NAMES } from "./tools/index.js";
|
|
10
10
|
import { getCompletableListHtml, appResources } from "./apps/index.js";
|
|
11
11
|
// Skills instructions are now served on-demand via nestr_help tool (see src/help/topics.ts)
|
|
12
12
|
import * as mcpcat from "mcpcat";
|
|
@@ -49,12 +49,24 @@ Nestr supports any self-organization approach. When the flavour is clear (check
|
|
|
49
49
|
|
|
50
50
|
- **title**: Plain text only (HTML stripped)
|
|
51
51
|
- **purpose, description, comments**: Use HTML, NOT Markdown (\`<b>\` not \`**\`, \`<ul><li>\` not \`-\`)
|
|
52
|
-
- **Linking to nests**: \`https://app.nestr.io/n/{nestId}\` (path is \`/n/\`, NOT \`/nest/\`)
|
|
52
|
+
- **Linking to nests**: every returned nest includes a precomputed \`url\` field — use it directly. Canonical pattern is \`https://app.nestr.io/n/{nestId}\` (path is \`/n/\`, NOT \`/nest/\` or \`/nests/\`). See \`nestr_help({ topic: "linking" })\`.
|
|
53
53
|
|
|
54
54
|
## Role Assignments
|
|
55
55
|
|
|
56
56
|
The \`users\` array on every nest contains the IDs of assigned users. For roles, \`users\` tells you **who fills (energizes) that role**. To find all roles a user fills, search with \`assignee:me label:role\` or \`assignee:{userId} label:role\`. The \`users\` field is always present in API responses, even when using \`stripDescription: true\`.
|
|
57
57
|
|
|
58
|
+
## Authentication
|
|
59
|
+
|
|
60
|
+
Tools accept either an OAuth bearer token (user-scoped) or a workspace API key, except where the tool description explicitly says "Auth: OAuth only" — those require user scope and will return \`AUTH_SCOPE_INSUFFICIENT\` under an API key.
|
|
61
|
+
|
|
62
|
+
**On any auth error, call \`nestr_diagnose\` first.** It works without auth and reports which flow the session is in (A = server-managed refresh, B = client-managed refresh, unknown = API key), whether the bearer reached Nestr, when the most recent upstream 401 was, and (Flow A only) the most recent refresh attempt. Auth error codes:
|
|
63
|
+
|
|
64
|
+
- \`AUTH_NO_TOKEN_PRESENTED\` — run the OAuth flow.
|
|
65
|
+
- \`AUTH_TOKEN_REJECTED_BY_NESTR\` — Flow B clients refresh themselves; Flow A means the user must reconnect.
|
|
66
|
+
- \`AUTH_REFRESH_FAILED\` — server-side refresh failed; user must reconnect.
|
|
67
|
+
- \`AUTH_SCOPE_INSUFFICIENT\` — token is valid but lacks permission for this action; do not retry.
|
|
68
|
+
- \`AUTH_PROXY_HEADER_DROPPED\` — server bug. Retry once and report the \`correlationId\`.
|
|
69
|
+
|
|
58
70
|
## Best Practices
|
|
59
71
|
|
|
60
72
|
1. Start with \`nestr_get_me\` to establish context
|
|
@@ -64,6 +76,7 @@ The \`users\` array on every nest contains the IDs of assigned users. For roles,
|
|
|
64
76
|
5. Use hints=true on \`nestr_get_nest\` to surface issues without extra queries
|
|
65
77
|
6. For governance changes in established workspaces, prefer the tension flow
|
|
66
78
|
7. To find who fills a role, check its \`users\` array. To find a user's roles, use \`assignee:{userId} label:role\`
|
|
79
|
+
8. **One prime label per nest.** A nest's core identity is defined by exactly one of: \`project\`, \`tension\`, \`role\`, \`circle\`, \`anchor-circle\`, \`meeting\`, \`metric\`, \`goal\`, \`result\`, \`checklist\`, \`feedback\`. Never combine two — a project is not also a tension. Modifier labels like \`governance\`/\`circle-meeting\` (which pair with \`meeting\`) are fine, as are workspace and personal labels. If you need both, create separate nests and link them with \`nestr_add_graph_link\`.
|
|
67
80
|
`.trim();
|
|
68
81
|
export function createServer(config = {}) {
|
|
69
82
|
const client = config.client || createClientFromEnv();
|
|
@@ -78,16 +91,23 @@ export function createServer(config = {}) {
|
|
|
78
91
|
},
|
|
79
92
|
instructions: SERVER_INSTRUCTIONS,
|
|
80
93
|
});
|
|
81
|
-
// Register tool list handler
|
|
94
|
+
// Register tool list handler. On the public surface, advertise only the
|
|
95
|
+
// unauthenticated help tools so guest agents never see workspace tools.
|
|
82
96
|
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
83
|
-
|
|
97
|
+
const tools = config.isPublic
|
|
98
|
+
? toolDefinitions.filter((t) => PUBLIC_TOOL_NAMES.has(t.name))
|
|
99
|
+
: toolDefinitions;
|
|
100
|
+
return { tools };
|
|
84
101
|
});
|
|
85
102
|
// Register tool call handler
|
|
86
103
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
87
104
|
const { name, arguments: args } = request.params;
|
|
88
105
|
const toolArgs = args || {};
|
|
89
106
|
try {
|
|
90
|
-
const result = await handleToolCall(client, name, toolArgs
|
|
107
|
+
const result = await handleToolCall(client, name, toolArgs, {
|
|
108
|
+
getDiagnose: config.getDiagnose,
|
|
109
|
+
isPublic: config.isPublic,
|
|
110
|
+
});
|
|
91
111
|
// Track successful tool call
|
|
92
112
|
if (config.onToolCall) {
|
|
93
113
|
config.onToolCall(name, toolArgs, true);
|
|
@@ -200,6 +220,19 @@ export function createServer(config = {}) {
|
|
|
200
220
|
cachedIdentity = { userId: config.userId, userName: config.userName };
|
|
201
221
|
}
|
|
202
222
|
mcpcat.track(server, mcpcatProjectId, {
|
|
223
|
+
// Disable MCPcat's get_more_tools "report missing functionality" tool.
|
|
224
|
+
// Nestr exposes its full toolset up front, so that tool can only return a
|
|
225
|
+
// canned "we've shown you everything" reply — and its name collides with
|
|
226
|
+
// the host's real tool_search, confusing agents into a wasted call.
|
|
227
|
+
// Core analytics (tracing), user identify, redaction, and the context/
|
|
228
|
+
// intent capture below are all independent and stay enabled.
|
|
229
|
+
enableReportMissing: false,
|
|
230
|
+
// Soften MCPcat's default context-parameter description. The default
|
|
231
|
+
// demands "15-25 words (count carefully)", but the word count is never
|
|
232
|
+
// enforced server-side — it only made agents anxious about a metadata
|
|
233
|
+
// field. Keep the intent (third-person, no secrets) and make clear it's
|
|
234
|
+
// advisory so calls never fail on it.
|
|
235
|
+
customContextDescription: "A brief, third-person note on why this tool is being called and how it serves the user's goal, recorded for analytics only. Any length is fine and a call never fails based on this text. Don't include credentials, tokens, or personal data.",
|
|
203
236
|
...(enableReplay ? {} : {
|
|
204
237
|
// Selectively redact sensitive values - keep metadata visible for debugging
|
|
205
238
|
redactSensitiveInformation: async (text) => {
|
package/build/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAe,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tension-processing.d.ts","sourceRoot":"","sources":["../../src/skills/tension-processing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,+BAA+B,
|
|
1
|
+
{"version":3,"file":"tension-processing.d.ts","sourceRoot":"","sources":["../../src/skills/tension-processing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,+BAA+B,QA+LpC,CAAC"}
|
|
@@ -113,6 +113,7 @@ Then identify the **next physical action** — the very next concrete step.
|
|
|
113
113
|
- **New governance item**: title + labels (e.g., \`["role"]\`). For roles, include accountabilities/domains as bulk shorthand.
|
|
114
114
|
- **Change existing item**: \`_id\` of existing item + fields to change. Existing children auto-copied if accountabilities/domains not provided.
|
|
115
115
|
- **Remove existing item**: Use \`nestr_remove_tension_part\`.
|
|
116
|
+
- **Hold an election** (assign/reconfirm a role's filler for a term): provide \`roleId\` + \`users: ["userId"]\` + optional \`due\` — see Elections below.
|
|
116
117
|
|
|
117
118
|
3. **Manage children individually** (optional): \`nestr_get_tension_part_children\`, \`nestr_create_tension_part_child\`, \`nestr_update_tension_part_child\`, \`nestr_delete_tension_part_child\`.
|
|
118
119
|
|
|
@@ -124,7 +125,16 @@ Then identify the **next physical action** — the very next concrete step.
|
|
|
124
125
|
|
|
125
126
|
### Elections
|
|
126
127
|
|
|
127
|
-
|
|
128
|
+
An election assigns or reconfirms a role's filler for a term — it does NOT change the role's accountabilities or domains. Hold one by calling \`nestr_add_tension_part\` with a \`roleId\` (the election mode), NOT with the role's \`_id\` (that is a role edit).
|
|
129
|
+
|
|
130
|
+
Electable roles are typically the core roles — Facilitator, Secretary, and Rep Link — plus any role marked electable. Hold the election in the role's circle:
|
|
131
|
+
|
|
132
|
+
1. \`nestr_create_tension(circleId, "Elect a Secretary")\` — create the tension on the circle.
|
|
133
|
+
2. \`nestr_add_tension_part(circleId, tensionId, { roleId, users: ["userId"], due })\` — \`roleId\` is the electable role being filled, \`users\` is the one person being elected, \`due\` is the optional term end date (omit to elect without a term).
|
|
134
|
+
3. \`nestr_get_tension_parts\` — review: the part shows as an election (elected user + term) with no accountability/domain changes.
|
|
135
|
+
4. \`nestr_update_tension_status(circleId, tensionId, "proposed")\` — submit for consent.
|
|
136
|
+
|
|
137
|
+
Do NOT run an election by passing the role's \`_id\` with \`users\`: that path is a role *edit* — it copies the role's existing accountabilities/domains into the proposal and reads as a full governance change rather than a clean election. Use \`roleId\` instead.
|
|
128
138
|
|
|
129
139
|
### Questions and Reactions
|
|
130
140
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tension-processing.js","sourceRoot":"","sources":["../../src/skills/tension-processing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAAG
|
|
1
|
+
{"version":3,"file":"tension-processing.js","sourceRoot":"","sources":["../../src/skills/tension-processing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+L9C,CAAC,IAAI,EAAE,CAAC"}
|