@noodleseed/one 0.35.1 → 0.36.0
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/dist/commands/catalog-data-resources.d.ts.map +1 -1
- package/dist/commands/catalog-data-resources.js +2 -1
- package/dist/commands/catalog-data-resources.js.map +1 -1
- package/dist/commands/policy-ops.d.ts.map +1 -1
- package/dist/commands/policy-ops.js +57 -15
- package/dist/commands/policy-ops.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/commercial-plans.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/commercial-plans.js +5 -6
- package/node_modules/@noodle-borg/service/dist/commercial-plans.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/index.d.ts +0 -1
- package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/index.js +0 -1
- package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/main.js +0 -9
- package/node_modules/@noodle-borg/service/dist/main.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/policy-idempotency.d.ts +16 -0
- package/node_modules/@noodle-borg/service/dist/policy-idempotency.d.ts.map +1 -0
- package/node_modules/@noodle-borg/service/dist/policy-idempotency.js +58 -0
- package/node_modules/@noodle-borg/service/dist/policy-idempotency.js.map +1 -0
- package/node_modules/@noodle-borg/service/dist/policy.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/policy.js +4 -2
- package/node_modules/@noodle-borg/service/dist/policy.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/plans.d.ts +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/plans.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/plans.js +92 -4
- package/node_modules/@noodle-borg/service/dist/routes/plans.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/serve.d.ts +0 -6
- package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/serve.js +0 -6
- package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres-policy.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres-policy.js +97 -70
- package/node_modules/@noodle-borg/service/dist/store/postgres-policy.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +2 -0
- package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
- package/package.json +1 -1
- package/node_modules/@noodle-borg/service/dist/free-tier.d.ts +0 -33
- package/node_modules/@noodle-borg/service/dist/free-tier.d.ts.map +0 -1
- package/node_modules/@noodle-borg/service/dist/free-tier.js +0 -77
- package/node_modules/@noodle-borg/service/dist/free-tier.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-policy.d.ts","sourceRoot":"","sources":["../../src/store/postgres-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"postgres-policy.d.ts","sourceRoot":"","sources":["../../src/store/postgres-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AAC3C,OAAO,KAAK,EACV,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EAGlB,MAAM,cAAc,CAAC;AAQtB,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,qBAAqB,EAC5B,GAAG,EAAE,MAAM,IAAI,GACd,OAAO,CAAC,gBAAgB,CAAC,CAwD3B;AAED,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,iBAAiB,EACxB,GAAG,EAAE,MAAM,IAAI,GACd,OAAO,CAAC,gBAAgB,CAAC,CA8D3B;AAED,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAWtC;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAWtC;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAIvC;AAED,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAWtC"}
|
|
@@ -1,28 +1,33 @@
|
|
|
1
|
-
import { InMemoryPolicyAssignmentStore, PolicyConflictError } from '../policy.js';
|
|
1
|
+
import { InMemoryPolicyAssignmentStore, PolicyConflictError, validatePolicyAssignmentInput, } from '../policy.js';
|
|
2
|
+
import { policyMutationFingerprint } from '../policy-idempotency.js';
|
|
2
3
|
export async function putPolicyAssignmentRow(pool, input, now) {
|
|
3
4
|
// Reuse the in-memory validator so both backends enforce the same policy shape.
|
|
5
|
+
const normalized = validatePolicyAssignmentInput(input);
|
|
4
6
|
const validator = new InMemoryPolicyAssignmentStore({ now });
|
|
5
|
-
const validated = await validator.putPolicyAssignment(
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
const validated = await validator.putPolicyAssignment(withoutExpectedVersion(normalized));
|
|
8
|
+
const mutationFingerprint = policyMutationFingerprint('apply', normalized);
|
|
9
|
+
return withPolicyTransaction(pool, async (client) => {
|
|
10
|
+
if (validated.idempotencyKey !== undefined) {
|
|
11
|
+
await lockPolicyIdempotencyKey(client, validated.idempotencyKey);
|
|
12
|
+
}
|
|
13
|
+
await lockPolicyId(client, validated.id);
|
|
8
14
|
if (validated.idempotencyKey !== undefined) {
|
|
9
|
-
const replay = await idempotentReplay(
|
|
15
|
+
const replay = await idempotentReplay(client, validated.idempotencyKey, 'apply', normalized);
|
|
10
16
|
if (replay !== undefined) {
|
|
11
|
-
await pool.query('COMMIT');
|
|
12
17
|
return replay;
|
|
13
18
|
}
|
|
14
19
|
}
|
|
15
|
-
const { rows: versionRows } = await
|
|
20
|
+
const { rows: versionRows } = await client.query('SELECT version FROM policy_assignments WHERE id = $1 ORDER BY version DESC LIMIT 1 FOR UPDATE', [validated.id]);
|
|
16
21
|
const currentVersion = Number(versionRows[0]?.version ?? 0);
|
|
17
22
|
if (input.expectedVersion !== undefined && input.expectedVersion !== currentVersion) {
|
|
18
23
|
throw new PolicyConflictError(`expected policy version ${input.expectedVersion}, found ${currentVersion}`, currentVersion);
|
|
19
24
|
}
|
|
20
25
|
const version = currentVersion + 1;
|
|
21
|
-
await
|
|
22
|
-
const { rows } = await
|
|
26
|
+
await client.query('UPDATE policy_assignments SET active = false WHERE id = $1 AND active = true', [validated.id]);
|
|
27
|
+
const { rows } = await client.query(`INSERT INTO policy_assignments
|
|
23
28
|
(id, version, active, scope, policy, created_at, created_by_subject, created_by_email,
|
|
24
|
-
reason, source, metadata, tombstone, idempotency_key)
|
|
25
|
-
VALUES ($1, $2, true, $3::jsonb, $4::jsonb, $5, $6, $7, $8, $9, $10::jsonb, false, $11)
|
|
29
|
+
reason, source, metadata, tombstone, idempotency_key, mutation_fingerprint)
|
|
30
|
+
VALUES ($1, $2, true, $3::jsonb, $4::jsonb, $5, $6, $7, $8, $9, $10::jsonb, false, $11, $12)
|
|
26
31
|
RETURNING *`, [
|
|
27
32
|
validated.id,
|
|
28
33
|
version,
|
|
@@ -35,51 +40,52 @@ export async function putPolicyAssignmentRow(pool, input, now) {
|
|
|
35
40
|
validated.source,
|
|
36
41
|
JSON.stringify(validated.metadata ?? {}),
|
|
37
42
|
validated.idempotencyKey ?? null,
|
|
43
|
+
mutationFingerprint,
|
|
38
44
|
]);
|
|
39
|
-
await pool.query('COMMIT');
|
|
40
45
|
return policyRowToRecord(rows[0]);
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
await pool.query('ROLLBACK');
|
|
44
|
-
throw error;
|
|
45
|
-
}
|
|
46
|
+
});
|
|
46
47
|
}
|
|
47
48
|
export async function deletePolicyAssignmentRow(pool, input, now) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
const normalized = validatePolicyAssignmentInput({
|
|
50
|
+
id: input.id,
|
|
51
|
+
scope: { level: 'platform' },
|
|
52
|
+
policy: { schemaVersion: 1 },
|
|
53
|
+
createdBySubject: input.createdBySubject,
|
|
54
|
+
...(input.createdByEmail !== undefined ? { createdByEmail: input.createdByEmail } : {}),
|
|
55
|
+
reason: input.reason,
|
|
56
|
+
source: input.source,
|
|
57
|
+
...(input.expectedVersion !== undefined ? { expectedVersion: input.expectedVersion } : {}),
|
|
58
|
+
...(input.idempotencyKey !== undefined ? { idempotencyKey: input.idempotencyKey } : {}),
|
|
59
|
+
});
|
|
60
|
+
const validator = new InMemoryPolicyAssignmentStore({ now });
|
|
61
|
+
const validated = await validator.putPolicyAssignment(withoutExpectedVersion(normalized));
|
|
62
|
+
const mutationFingerprint = policyMutationFingerprint('delete', normalized);
|
|
63
|
+
return withPolicyTransaction(pool, async (client) => {
|
|
64
|
+
if (validated.idempotencyKey !== undefined) {
|
|
65
|
+
await lockPolicyIdempotencyKey(client, validated.idempotencyKey);
|
|
66
|
+
}
|
|
67
|
+
await lockPolicyId(client, validated.id);
|
|
68
|
+
if (validated.idempotencyKey !== undefined) {
|
|
69
|
+
const replay = await idempotentReplay(client, validated.idempotencyKey, 'delete', normalized);
|
|
52
70
|
if (replay !== undefined) {
|
|
53
|
-
await pool.query('COMMIT');
|
|
54
71
|
return replay;
|
|
55
72
|
}
|
|
56
73
|
}
|
|
57
|
-
const history = await
|
|
74
|
+
const history = await listPolicyAssignmentHistoryWithClient(client, input.id);
|
|
58
75
|
const current = history[history.length - 1];
|
|
59
76
|
const currentVersion = current?.version ?? 0;
|
|
60
77
|
if (input.expectedVersion !== undefined && input.expectedVersion !== currentVersion) {
|
|
61
78
|
throw new PolicyConflictError(`expected policy version ${input.expectedVersion}, found ${currentVersion}`, currentVersion);
|
|
62
79
|
}
|
|
63
|
-
|
|
64
|
-
const
|
|
65
|
-
id: input.id,
|
|
66
|
-
scope: current?.scope ?? { level: 'platform' },
|
|
67
|
-
policy: { schemaVersion: 1 },
|
|
68
|
-
createdBySubject: input.createdBySubject,
|
|
69
|
-
...(input.createdByEmail !== undefined ? { createdByEmail: input.createdByEmail } : {}),
|
|
70
|
-
reason: input.reason,
|
|
71
|
-
source: input.source,
|
|
72
|
-
...(input.idempotencyKey !== undefined ? { idempotencyKey: input.idempotencyKey } : {}),
|
|
73
|
-
});
|
|
74
|
-
await pool.query('UPDATE policy_assignments SET active = false WHERE id = $1 AND active = true', [validated.id]);
|
|
75
|
-
const { rows } = await pool.query(`INSERT INTO policy_assignments
|
|
80
|
+
await client.query('UPDATE policy_assignments SET active = false WHERE id = $1 AND active = true', [validated.id]);
|
|
81
|
+
const { rows } = await client.query(`INSERT INTO policy_assignments
|
|
76
82
|
(id, version, active, scope, policy, created_at, created_by_subject, created_by_email,
|
|
77
|
-
reason, source, metadata, tombstone, idempotency_key)
|
|
78
|
-
VALUES ($1, $2, false, $3::jsonb, $4::jsonb, $5, $6, $7, $8, $9, $10::jsonb, true, $11)
|
|
83
|
+
reason, source, metadata, tombstone, idempotency_key, mutation_fingerprint)
|
|
84
|
+
VALUES ($1, $2, false, $3::jsonb, $4::jsonb, $5, $6, $7, $8, $9, $10::jsonb, true, $11, $12)
|
|
79
85
|
RETURNING *`, [
|
|
80
86
|
validated.id,
|
|
81
87
|
currentVersion + 1,
|
|
82
|
-
JSON.stringify(validated.scope),
|
|
88
|
+
JSON.stringify(current?.scope ?? validated.scope),
|
|
83
89
|
JSON.stringify(validated.policy),
|
|
84
90
|
now(),
|
|
85
91
|
validated.createdBySubject,
|
|
@@ -88,14 +94,10 @@ export async function deletePolicyAssignmentRow(pool, input, now) {
|
|
|
88
94
|
validated.source,
|
|
89
95
|
JSON.stringify(validated.metadata ?? {}),
|
|
90
96
|
validated.idempotencyKey ?? null,
|
|
97
|
+
mutationFingerprint,
|
|
91
98
|
]);
|
|
92
|
-
await pool.query('COMMIT');
|
|
93
99
|
return policyRowToRecord(rows[0]);
|
|
94
|
-
}
|
|
95
|
-
catch (error) {
|
|
96
|
-
await pool.query('ROLLBACK');
|
|
97
|
-
throw error;
|
|
98
|
-
}
|
|
100
|
+
});
|
|
99
101
|
}
|
|
100
102
|
export async function listActivePolicyAssignmentRows(pool, context) {
|
|
101
103
|
const { rows } = await pool.query(`SELECT *
|
|
@@ -132,7 +134,10 @@ export async function listPolicyAssignmentHistoryRows(pool, id) {
|
|
|
132
134
|
reason: 'validator',
|
|
133
135
|
source: 'system',
|
|
134
136
|
});
|
|
135
|
-
|
|
137
|
+
return listPolicyAssignmentHistoryWithClient(pool, id);
|
|
138
|
+
}
|
|
139
|
+
async function listPolicyAssignmentHistoryWithClient(client, id) {
|
|
140
|
+
const { rows } = await client.query('SELECT * FROM policy_assignments WHERE id = $1 ORDER BY version ASC', [id]);
|
|
136
141
|
return rows.map(policyRowToRecord);
|
|
137
142
|
}
|
|
138
143
|
function orgFilterMatches(scope, org) {
|
|
@@ -193,36 +198,58 @@ function policyRowToRecord(row) {
|
|
|
193
198
|
...(row.idempotency_key !== null ? { idempotencyKey: row.idempotency_key } : {}),
|
|
194
199
|
};
|
|
195
200
|
}
|
|
196
|
-
async function idempotentReplay(
|
|
197
|
-
const { rows } = await
|
|
201
|
+
async function idempotentReplay(client, idempotencyKey, kind, normalized) {
|
|
202
|
+
const { rows } = await client.query('SELECT * FROM policy_assignments WHERE idempotency_key = $1', [idempotencyKey]);
|
|
198
203
|
if (rows.length === 0)
|
|
199
204
|
return undefined;
|
|
200
|
-
const
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
scope: existing.scope,
|
|
205
|
-
policy: existing.policy,
|
|
206
|
-
createdBySubject: existing.createdBySubject,
|
|
207
|
-
createdByEmail: existing.createdByEmail,
|
|
208
|
-
reason: existing.reason,
|
|
209
|
-
source: existing.source,
|
|
210
|
-
metadata: existing.metadata,
|
|
211
|
-
}) !==
|
|
212
|
-
JSON.stringify({
|
|
213
|
-
id: validated.id,
|
|
214
|
-
scope: validated.scope,
|
|
215
|
-
policy: validated.policy,
|
|
216
|
-
createdBySubject: validated.createdBySubject,
|
|
217
|
-
createdByEmail: validated.createdByEmail,
|
|
218
|
-
reason: validated.reason,
|
|
219
|
-
source: validated.source,
|
|
220
|
-
metadata: validated.metadata,
|
|
221
|
-
})) {
|
|
205
|
+
const row = rows[0];
|
|
206
|
+
const existing = policyRowToRecord(row);
|
|
207
|
+
const incomingFingerprint = policyMutationFingerprint(kind, normalized);
|
|
208
|
+
if (row.mutation_fingerprint !== incomingFingerprint) {
|
|
222
209
|
throw new PolicyConflictError('idempotency key was already used with a different body');
|
|
223
210
|
}
|
|
224
211
|
return existing;
|
|
225
212
|
}
|
|
213
|
+
async function lockPolicyIdempotencyKey(client, idempotencyKey) {
|
|
214
|
+
await lockPolicyMutation(client, `policy-idempotency:${idempotencyKey}`);
|
|
215
|
+
}
|
|
216
|
+
async function lockPolicyId(client, policyId) {
|
|
217
|
+
await lockPolicyMutation(client, `policy-id:${policyId}`);
|
|
218
|
+
}
|
|
219
|
+
async function lockPolicyMutation(client, lockKey) {
|
|
220
|
+
await client.query('SELECT pg_advisory_xact_lock(hashtextextended($1, 0))', [lockKey]);
|
|
221
|
+
}
|
|
222
|
+
async function withPolicyTransaction(pool, operation) {
|
|
223
|
+
const client = await pool.connect();
|
|
224
|
+
try {
|
|
225
|
+
await client.query('BEGIN');
|
|
226
|
+
try {
|
|
227
|
+
const result = await operation(client);
|
|
228
|
+
await client.query('COMMIT');
|
|
229
|
+
return result;
|
|
230
|
+
}
|
|
231
|
+
catch (error) {
|
|
232
|
+
await client.query('ROLLBACK');
|
|
233
|
+
throw error;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
finally {
|
|
237
|
+
client.release();
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
function withoutExpectedVersion(input) {
|
|
241
|
+
return {
|
|
242
|
+
id: input.id,
|
|
243
|
+
scope: input.scope,
|
|
244
|
+
policy: input.policy,
|
|
245
|
+
createdBySubject: input.createdBySubject,
|
|
246
|
+
...(input.createdByEmail !== undefined ? { createdByEmail: input.createdByEmail } : {}),
|
|
247
|
+
reason: input.reason,
|
|
248
|
+
source: input.source,
|
|
249
|
+
...(input.metadata !== undefined ? { metadata: input.metadata } : {}),
|
|
250
|
+
...(input.idempotencyKey !== undefined ? { idempotencyKey: input.idempotencyKey } : {}),
|
|
251
|
+
};
|
|
252
|
+
}
|
|
226
253
|
function parseJson(value) {
|
|
227
254
|
return typeof value === 'string' ? JSON.parse(value) : value;
|
|
228
255
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-policy.js","sourceRoot":"","sources":["../../src/store/postgres-policy.ts"],"names":[],"mappings":"AASA,OAAO,
|
|
1
|
+
{"version":3,"file":"postgres-policy.js","sourceRoot":"","sources":["../../src/store/postgres-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-schema.d.ts","sourceRoot":"","sources":["../../src/store/postgres-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAK/B;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"postgres-schema.d.ts","sourceRoot":"","sources":["../../src/store/postgres-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAK/B;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CA6TpE"}
|
|
@@ -213,6 +213,7 @@ export async function ensureArtifactSchema(pool) {
|
|
|
213
213
|
metadata jsonb NOT NULL DEFAULT '{}',
|
|
214
214
|
tombstone boolean NOT NULL DEFAULT false,
|
|
215
215
|
idempotency_key text,
|
|
216
|
+
mutation_fingerprint text,
|
|
216
217
|
PRIMARY KEY (id, version)
|
|
217
218
|
)
|
|
218
219
|
`);
|
|
@@ -222,6 +223,7 @@ export async function ensureArtifactSchema(pool) {
|
|
|
222
223
|
await pool.query(`ALTER TABLE policy_assignments ADD COLUMN IF NOT EXISTS metadata jsonb NOT NULL DEFAULT '{}'`);
|
|
223
224
|
await pool.query(`ALTER TABLE policy_assignments ADD COLUMN IF NOT EXISTS tombstone boolean NOT NULL DEFAULT false`);
|
|
224
225
|
await pool.query(`ALTER TABLE policy_assignments ADD COLUMN IF NOT EXISTS idempotency_key text`);
|
|
226
|
+
await pool.query(`ALTER TABLE policy_assignments ADD COLUMN IF NOT EXISTS mutation_fingerprint text`);
|
|
225
227
|
await pool.query(`
|
|
226
228
|
CREATE UNIQUE INDEX IF NOT EXISTS policy_assignments_idempotency_idx
|
|
227
229
|
ON policy_assignments (idempotency_key)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-schema.js","sourceRoot":"","sources":["../../src/store/postgres-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAU;IACnD,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;KAMd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;KASd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;KAcd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC9F,MAAM,IAAI,CAAC,KAAK,CAAC;;;;KAId,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;KAUd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;KAQd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;KAQd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;KAYd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;KAGd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;KAQd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;KASd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;KAuBd,CAAC,CAAC;IACL,mGAAmG;IACnG,gDAAgD;IAChD,MAAM,IAAI,CAAC,KAAK,CACd,oGAAoG,CACrG,CAAC;IACF,MAAM,IAAI,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC1F,MAAM,IAAI,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC5F,kGAAkG;IAClG,8FAA8F;IAC9F,MAAM,IAAI,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC5F,MAAM,IAAI,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC1F,qGAAqG;IACrG,uFAAuF;IACvF,MAAM,IAAI,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC3F,mGAAmG;IACnG,0EAA0E;IAC1E,MAAM,IAAI,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;IAChG,MAAM,IAAI,CAAC,KAAK,CAAC;;;;KAId,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvE,MAAM,IAAI,CAAC,KAAK,CAAC;;;;KAId,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;KAId,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;KAGd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;KAGd,CAAC,CAAC;IACL,8FAA8F;IAC9F,8DAA8D;IAC9D,MAAM,IAAI,CAAC,KAAK,CAAC;;;KAGd,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;KAed,CAAC,CAAC;IACL,MAAM,IAAI,CAAC,KAAK,CAAC
|
|
1
|
+
{"version":3,"file":"postgres-schema.js","sourceRoot":"","sources":["../../src/store/postgres-schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@noodleseed/one",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.36.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Noodle CLI by Noodle Seed — author, run, and deploy declarative MCP servers. Embedding the assistant in your own web app is @noodleseed/assistant.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { PolicyAssignmentStore, PolicyDocument } from './policy.js';
|
|
2
|
-
/**
|
|
3
|
-
* Free-tier enforcement for the free-only public beta (plan M2).
|
|
4
|
-
*
|
|
5
|
-
* The free-only launch posture ([pricing-strategy.md](../../../docs/references/pricing-strategy.md) §11) ships
|
|
6
|
-
* with no billing: a generous, enforced free tier plus abuse controls is the only commercial gate, and it must
|
|
7
|
-
* be live before public signup opens. Rather than attach a plan to each auto-provisioned personal org, we seed
|
|
8
|
-
* one **platform-scoped** default policy: the existing admission gate already applies a `platform` assignment to
|
|
9
|
-
* every org/app/env, so a single seed bounds every tenant (including personal orgs) without per-org wiring.
|
|
10
|
-
*
|
|
11
|
-
* Scope of enforcement: the execute quota is a per-deployment-route monthly ceiling (the marketed free-tier
|
|
12
|
-
* number) and the per-subject token buckets are the burst/enumeration brake. Precise per-org monthly metering
|
|
13
|
-
* for billing is a later milestone; this is cost and abuse protection, not a billing meter.
|
|
14
|
-
*/
|
|
15
|
-
/** Stable id for the platform-scoped free-tier default policy. */
|
|
16
|
-
export declare const FREE_TIER_POLICY_ID = "free-tier-default";
|
|
17
|
-
/**
|
|
18
|
-
* The free-only public beta envelope. Built only from the existing quota/rate primitives. Values are generous
|
|
19
|
-
* enough not to bother a legitimate developer; they exist to cap runaway usage and bursts before billing
|
|
20
|
-
* exists. Operators can override the seeded plan via {@link ensureFreeTierDefault}.
|
|
21
|
-
*/
|
|
22
|
-
export declare const FREE_TIER_PLAN: PolicyDocument;
|
|
23
|
-
export interface EnsureFreeTierDefaultOptions {
|
|
24
|
-
/** Override the seeded plan (operators/tests). Defaults to {@link FREE_TIER_PLAN}. */
|
|
25
|
-
readonly plan?: PolicyDocument;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Idempotently seed the platform-scoped free-tier default policy. Safe to call on every boot: the idempotency
|
|
29
|
-
* key is derived from the plan contents, so repeated boots with the same plan return the existing assignment
|
|
30
|
-
* without churning policy versions, while a changed plan seeds a new version.
|
|
31
|
-
*/
|
|
32
|
-
export declare function ensureFreeTierDefault(policyStore: PolicyAssignmentStore, options?: EnsureFreeTierDefaultOptions): Promise<void>;
|
|
33
|
-
//# sourceMappingURL=free-tier.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"free-tier.d.ts","sourceRoot":"","sources":["../src/free-tier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEzE;;;;;;;;;;;;GAYG;AAEH,kEAAkE;AAClE,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,cAoC5B,CAAC;AAEF,MAAM,WAAW,4BAA4B;IAC3C,sFAAsF;IACtF,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,qBAAqB,EAClC,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,IAAI,CAAC,CAYf"}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { createHash } from 'node:crypto';
|
|
2
|
-
/**
|
|
3
|
-
* Free-tier enforcement for the free-only public beta (plan M2).
|
|
4
|
-
*
|
|
5
|
-
* The free-only launch posture ([pricing-strategy.md](../../../docs/references/pricing-strategy.md) §11) ships
|
|
6
|
-
* with no billing: a generous, enforced free tier plus abuse controls is the only commercial gate, and it must
|
|
7
|
-
* be live before public signup opens. Rather than attach a plan to each auto-provisioned personal org, we seed
|
|
8
|
-
* one **platform-scoped** default policy: the existing admission gate already applies a `platform` assignment to
|
|
9
|
-
* every org/app/env, so a single seed bounds every tenant (including personal orgs) without per-org wiring.
|
|
10
|
-
*
|
|
11
|
-
* Scope of enforcement: the execute quota is a per-deployment-route monthly ceiling (the marketed free-tier
|
|
12
|
-
* number) and the per-subject token buckets are the burst/enumeration brake. Precise per-org monthly metering
|
|
13
|
-
* for billing is a later milestone; this is cost and abuse protection, not a billing meter.
|
|
14
|
-
*/
|
|
15
|
-
/** Stable id for the platform-scoped free-tier default policy. */
|
|
16
|
-
export const FREE_TIER_POLICY_ID = 'free-tier-default';
|
|
17
|
-
/**
|
|
18
|
-
* The free-only public beta envelope. Built only from the existing quota/rate primitives. Values are generous
|
|
19
|
-
* enough not to bother a legitimate developer; they exist to cap runaway usage and bursts before billing
|
|
20
|
-
* exists. Operators can override the seeded plan via {@link ensureFreeTierDefault}.
|
|
21
|
-
*/
|
|
22
|
-
export const FREE_TIER_PLAN = {
|
|
23
|
-
schemaVersion: 1,
|
|
24
|
-
categories: {
|
|
25
|
-
execute: {
|
|
26
|
-
reason: 'free_tier_quota',
|
|
27
|
-
// ~1M governed tool calls per deployment route over a 30-day window (the marketed free ceiling).
|
|
28
|
-
quota: { limit: 1_000_000, windowSeconds: 2_592_000 },
|
|
29
|
-
// Per-developer burst brake so a single subject cannot hammer the shared runtime.
|
|
30
|
-
rate: {
|
|
31
|
-
algorithm: 'token-bucket',
|
|
32
|
-
limit: 60,
|
|
33
|
-
refillSeconds: 60,
|
|
34
|
-
burst: 120,
|
|
35
|
-
partitionBy: 'subject',
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
discovery: {
|
|
39
|
-
// Enumeration brake on tools/resources/prompts listing.
|
|
40
|
-
rate: {
|
|
41
|
-
algorithm: 'token-bucket',
|
|
42
|
-
limit: 120,
|
|
43
|
-
refillSeconds: 60,
|
|
44
|
-
burst: 240,
|
|
45
|
-
partitionBy: 'subject',
|
|
46
|
-
},
|
|
47
|
-
},
|
|
48
|
-
read: {
|
|
49
|
-
rate: {
|
|
50
|
-
algorithm: 'token-bucket',
|
|
51
|
-
limit: 120,
|
|
52
|
-
refillSeconds: 60,
|
|
53
|
-
burst: 240,
|
|
54
|
-
partitionBy: 'subject',
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
};
|
|
59
|
-
/**
|
|
60
|
-
* Idempotently seed the platform-scoped free-tier default policy. Safe to call on every boot: the idempotency
|
|
61
|
-
* key is derived from the plan contents, so repeated boots with the same plan return the existing assignment
|
|
62
|
-
* without churning policy versions, while a changed plan seeds a new version.
|
|
63
|
-
*/
|
|
64
|
-
export async function ensureFreeTierDefault(policyStore, options = {}) {
|
|
65
|
-
const plan = options.plan ?? FREE_TIER_PLAN;
|
|
66
|
-
const fingerprint = createHash('sha256').update(JSON.stringify(plan)).digest('hex').slice(0, 16);
|
|
67
|
-
await policyStore.putPolicyAssignment({
|
|
68
|
-
id: FREE_TIER_POLICY_ID,
|
|
69
|
-
scope: { level: 'platform' },
|
|
70
|
-
policy: plan,
|
|
71
|
-
createdBySubject: 'system:free-tier',
|
|
72
|
-
reason: 'free-tier default (free-only public beta)',
|
|
73
|
-
source: 'system',
|
|
74
|
-
idempotencyKey: `${FREE_TIER_POLICY_ID}:${fingerprint}`,
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=free-tier.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"free-tier.js","sourceRoot":"","sources":["../src/free-tier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;;;;;;;;;;GAYG;AAEH,kEAAkE;AAClE,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAmB;IAC5C,aAAa,EAAE,CAAC;IAChB,UAAU,EAAE;QACV,OAAO,EAAE;YACP,MAAM,EAAE,iBAAiB;YACzB,iGAAiG;YACjG,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE;YACrD,kFAAkF;YAClF,IAAI,EAAE;gBACJ,SAAS,EAAE,cAAc;gBACzB,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,EAAE;gBACjB,KAAK,EAAE,GAAG;gBACV,WAAW,EAAE,SAAS;aACvB;SACF;QACD,SAAS,EAAE;YACT,wDAAwD;YACxD,IAAI,EAAE;gBACJ,SAAS,EAAE,cAAc;gBACzB,KAAK,EAAE,GAAG;gBACV,aAAa,EAAE,EAAE;gBACjB,KAAK,EAAE,GAAG;gBACV,WAAW,EAAE,SAAS;aACvB;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,SAAS,EAAE,cAAc;gBACzB,KAAK,EAAE,GAAG;gBACV,aAAa,EAAE,EAAE;gBACjB,KAAK,EAAE,GAAG;gBACV,WAAW,EAAE,SAAS;aACvB;SACF;KACF;CACF,CAAC;AAOF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,WAAkC,EAClC,UAAwC,EAAE;IAE1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,cAAc,CAAC;IAC5C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjG,MAAM,WAAW,CAAC,mBAAmB,CAAC;QACpC,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAC5B,MAAM,EAAE,IAAI;QACZ,gBAAgB,EAAE,kBAAkB;QACpC,MAAM,EAAE,2CAA2C;QACnD,MAAM,EAAE,QAAQ;QAChB,cAAc,EAAE,GAAG,mBAAmB,IAAI,WAAW,EAAE;KACxD,CAAC,CAAC;AACL,CAAC"}
|