@geoprotocol/geo-sdk 0.18.0 → 0.18.2

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.
Files changed (39) hide show
  1. package/README.md +13 -9
  2. package/dist/src/dao-space/index.d.ts +3 -1
  3. package/dist/src/dao-space/index.d.ts.map +1 -1
  4. package/dist/src/dao-space/index.js +2 -0
  5. package/dist/src/dao-space/index.js.map +1 -1
  6. package/dist/src/dao-space/propose-add-editor.d.ts +27 -0
  7. package/dist/src/dao-space/propose-add-editor.d.ts.map +1 -0
  8. package/dist/src/dao-space/propose-add-editor.js +97 -0
  9. package/dist/src/dao-space/propose-add-editor.js.map +1 -0
  10. package/dist/src/dao-space/propose-add-editor.test.d.ts +2 -0
  11. package/dist/src/dao-space/propose-add-editor.test.d.ts.map +1 -0
  12. package/dist/src/dao-space/propose-add-editor.test.js +105 -0
  13. package/dist/src/dao-space/propose-add-editor.test.js.map +1 -0
  14. package/dist/src/dao-space/propose-remove-editor.d.ts +29 -0
  15. package/dist/src/dao-space/propose-remove-editor.d.ts.map +1 -0
  16. package/dist/src/dao-space/propose-remove-editor.js +104 -0
  17. package/dist/src/dao-space/propose-remove-editor.js.map +1 -0
  18. package/dist/src/dao-space/propose-remove-editor.test.d.ts +2 -0
  19. package/dist/src/dao-space/propose-remove-editor.test.d.ts.map +1 -0
  20. package/dist/src/dao-space/propose-remove-editor.test.js +167 -0
  21. package/dist/src/dao-space/propose-remove-editor.test.js.map +1 -0
  22. package/dist/src/dao-space/types.d.ts +72 -0
  23. package/dist/src/dao-space/types.d.ts.map +1 -1
  24. package/dist/src/graph/create-proposal-review.d.ts +4 -2
  25. package/dist/src/graph/create-proposal-review.d.ts.map +1 -1
  26. package/dist/src/graph/create-proposal-review.js +12 -3
  27. package/dist/src/graph/create-proposal-review.js.map +1 -1
  28. package/dist/src/graph/create-proposal-review.test.js +51 -1
  29. package/dist/src/graph/create-proposal-review.test.js.map +1 -1
  30. package/dist/src/graph/update-proposal-review.d.ts +4 -2
  31. package/dist/src/graph/update-proposal-review.d.ts.map +1 -1
  32. package/dist/src/graph/update-proposal-review.js +12 -3
  33. package/dist/src/graph/update-proposal-review.js.map +1 -1
  34. package/dist/src/graph/update-proposal-review.test.js +51 -1
  35. package/dist/src/graph/update-proposal-review.test.js.map +1 -1
  36. package/dist/src/types.d.ts +4 -0
  37. package/dist/src/types.d.ts.map +1 -1
  38. package/dist/src/types.js.map +1 -1
  39. package/package.json +1 -1
@@ -0,0 +1,167 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { TESTNET } from '../../contracts.js';
3
+ import { BYTES16_HEX_REGEX } from './constants.js';
4
+ import { proposeRemoveEditor } from './propose-remove-editor.js';
5
+ describe('proposeRemoveEditor', () => {
6
+ // Valid test values
7
+ const validAuthorSpaceId = '0x0eed5491b917cf58b33ac81255fe7ae9';
8
+ const validSpaceId = '0xabcdef12345678901234567890abcdef';
9
+ const validEditorToRemove = '0x11111111111111111111111111111111';
10
+ it('should return correct structure', () => {
11
+ const result = proposeRemoveEditor({
12
+ authorSpaceId: validAuthorSpaceId,
13
+ spaceId: validSpaceId,
14
+ editorToRemoveSpaceId: validEditorToRemove,
15
+ });
16
+ expect(result).toHaveProperty('to');
17
+ expect(result).toHaveProperty('calldata');
18
+ expect(result).toHaveProperty('proposalId');
19
+ });
20
+ it('should return the correct contract address (Space Registry)', () => {
21
+ const { to } = proposeRemoveEditor({
22
+ authorSpaceId: validAuthorSpaceId,
23
+ spaceId: validSpaceId,
24
+ editorToRemoveSpaceId: validEditorToRemove,
25
+ });
26
+ expect(to).toBe(TESTNET.SPACE_REGISTRY_ADDRESS);
27
+ });
28
+ it('should return valid calldata', () => {
29
+ const { calldata } = proposeRemoveEditor({
30
+ authorSpaceId: validAuthorSpaceId,
31
+ spaceId: validSpaceId,
32
+ editorToRemoveSpaceId: validEditorToRemove,
33
+ });
34
+ expect(calldata).toBeTypeOf('string');
35
+ expect(calldata.startsWith('0x')).toBe(true);
36
+ });
37
+ it('should return valid proposalId (bytes16 hex)', () => {
38
+ const { proposalId } = proposeRemoveEditor({
39
+ authorSpaceId: validAuthorSpaceId,
40
+ spaceId: validSpaceId,
41
+ editorToRemoveSpaceId: validEditorToRemove,
42
+ });
43
+ expect(proposalId).toMatch(BYTES16_HEX_REGEX);
44
+ });
45
+ it('should accept custom proposalId', () => {
46
+ const customProposalId = '0x22222222222222222222222222222222';
47
+ const { proposalId } = proposeRemoveEditor({
48
+ authorSpaceId: validAuthorSpaceId,
49
+ spaceId: validSpaceId,
50
+ editorToRemoveSpaceId: validEditorToRemove,
51
+ proposalId: customProposalId,
52
+ });
53
+ expect(proposalId).toBe(customProposalId);
54
+ });
55
+ it('should default to SLOW voting mode', () => {
56
+ const result = proposeRemoveEditor({
57
+ authorSpaceId: validAuthorSpaceId,
58
+ spaceId: validSpaceId,
59
+ editorToRemoveSpaceId: validEditorToRemove,
60
+ });
61
+ expect(result.calldata).toBeTruthy();
62
+ });
63
+ it('should accept FAST voting mode', () => {
64
+ const result = proposeRemoveEditor({
65
+ authorSpaceId: validAuthorSpaceId,
66
+ spaceId: validSpaceId,
67
+ editorToRemoveSpaceId: validEditorToRemove,
68
+ votingMode: 'FAST',
69
+ });
70
+ expect(result.calldata).toBeTruthy();
71
+ });
72
+ it('should produce different calldata for different voting modes', () => {
73
+ const params = {
74
+ authorSpaceId: validAuthorSpaceId,
75
+ spaceId: validSpaceId,
76
+ editorToRemoveSpaceId: validEditorToRemove,
77
+ };
78
+ const slowResult = proposeRemoveEditor({ ...params, votingMode: 'SLOW' });
79
+ const fastResult = proposeRemoveEditor({
80
+ ...params,
81
+ votingMode: 'FAST',
82
+ proposalId: slowResult.proposalId,
83
+ });
84
+ expect(slowResult.calldata).not.toBe(fastResult.calldata);
85
+ });
86
+ it('should produce different calldata for different editors', () => {
87
+ const otherEditor = '0x33333333333333333333333333333333';
88
+ const sharedProposalId = '0x44444444444444444444444444444444';
89
+ const result1 = proposeRemoveEditor({
90
+ authorSpaceId: validAuthorSpaceId,
91
+ spaceId: validSpaceId,
92
+ editorToRemoveSpaceId: validEditorToRemove,
93
+ proposalId: sharedProposalId,
94
+ });
95
+ const result2 = proposeRemoveEditor({
96
+ authorSpaceId: validAuthorSpaceId,
97
+ spaceId: validSpaceId,
98
+ editorToRemoveSpaceId: otherEditor,
99
+ proposalId: sharedProposalId,
100
+ });
101
+ expect(result1.calldata).not.toBe(result2.calldata);
102
+ });
103
+ it('should accept IDs without 0x prefix', () => {
104
+ const result = proposeRemoveEditor({
105
+ authorSpaceId: '0eed5491b917cf58b33ac81255fe7ae9',
106
+ spaceId: 'abcdef12345678901234567890abcdef',
107
+ editorToRemoveSpaceId: '11111111111111111111111111111111',
108
+ });
109
+ expect(result.calldata).toBeTruthy();
110
+ });
111
+ it('should produce same calldata with or without 0x prefix', () => {
112
+ const proposalId = '0x55555555555555555555555555555555';
113
+ const withPrefix = proposeRemoveEditor({
114
+ authorSpaceId: '0x0eed5491b917cf58b33ac81255fe7ae9',
115
+ spaceId: '0xabcdef12345678901234567890abcdef',
116
+ editorToRemoveSpaceId: '0x11111111111111111111111111111111',
117
+ proposalId,
118
+ });
119
+ const withoutPrefix = proposeRemoveEditor({
120
+ authorSpaceId: '0eed5491b917cf58b33ac81255fe7ae9',
121
+ spaceId: 'abcdef12345678901234567890abcdef',
122
+ editorToRemoveSpaceId: '11111111111111111111111111111111',
123
+ proposalId,
124
+ });
125
+ expect(withPrefix.calldata).toBe(withoutPrefix.calldata);
126
+ });
127
+ it('should generate unique proposalIds', () => {
128
+ const params = {
129
+ authorSpaceId: validAuthorSpaceId,
130
+ spaceId: validSpaceId,
131
+ editorToRemoveSpaceId: validEditorToRemove,
132
+ };
133
+ const result1 = proposeRemoveEditor(params);
134
+ const result2 = proposeRemoveEditor(params);
135
+ expect(result1.proposalId).not.toBe(result2.proposalId);
136
+ });
137
+ it('should throw for invalid authorSpaceId format', () => {
138
+ expect(() => proposeRemoveEditor({
139
+ authorSpaceId: 'invalid',
140
+ spaceId: validSpaceId,
141
+ editorToRemoveSpaceId: validEditorToRemove,
142
+ })).toThrow('authorSpaceId must be bytes16 hex');
143
+ });
144
+ it('should throw for invalid spaceId format', () => {
145
+ expect(() => proposeRemoveEditor({
146
+ authorSpaceId: validAuthorSpaceId,
147
+ spaceId: 'tooshort',
148
+ editorToRemoveSpaceId: validEditorToRemove,
149
+ })).toThrow('spaceId must be bytes16 hex');
150
+ });
151
+ it('should throw for invalid editorToRemoveSpaceId format', () => {
152
+ expect(() => proposeRemoveEditor({
153
+ authorSpaceId: validAuthorSpaceId,
154
+ spaceId: validSpaceId,
155
+ editorToRemoveSpaceId: 'badid',
156
+ })).toThrow('editorToRemoveSpaceId must be bytes16 hex');
157
+ });
158
+ it('should throw for invalid proposalId format', () => {
159
+ expect(() => proposeRemoveEditor({
160
+ authorSpaceId: validAuthorSpaceId,
161
+ spaceId: validSpaceId,
162
+ editorToRemoveSpaceId: validEditorToRemove,
163
+ proposalId: 'badproposalid',
164
+ })).toThrow('proposalId must be bytes16 hex');
165
+ });
166
+ });
167
+ //# sourceMappingURL=propose-remove-editor.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"propose-remove-editor.test.js","sourceRoot":"","sources":["../../../src/dao-space/propose-remove-editor.test.ts"],"names":[],"mappings":"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"}
@@ -240,4 +240,76 @@ export type ProposeAddMemberResult = {
240
240
  /** The proposal ID (bytes16 hex) */
241
241
  proposalId: `0x${string}`;
242
242
  };
243
+ export type ProposeRemoveEditorParams = {
244
+ /**
245
+ * The proposer's space ID (bytes16 hex, with or without 0x prefix).
246
+ * This is the fromSpaceId in the enter() call.
247
+ */
248
+ authorSpaceId: string;
249
+ /**
250
+ * The DAO space ID (bytes16 hex, with or without 0x prefix).
251
+ * This is the toSpaceId in the enter() call.
252
+ */
253
+ spaceId: string;
254
+ /**
255
+ * The space ID of the editor to remove (bytes16 hex, with or without 0x prefix).
256
+ */
257
+ editorToRemoveSpaceId: string;
258
+ /**
259
+ * Voting mode for the proposal.
260
+ * Defaults to 'SLOW' since removeEditor is not a fast-path action.
261
+ */
262
+ votingMode?: VotingMode;
263
+ /**
264
+ * Optional bytes16 proposalId (0x + 32 hex chars, with or without 0x prefix).
265
+ * If omitted, a unique id is generated.
266
+ */
267
+ proposalId?: string;
268
+ /** Network to use (defaults to TESTNET) */
269
+ network?: Network;
270
+ };
271
+ export type ProposeRemoveEditorResult = {
272
+ /** The contract address to send the transaction to (Space Registry) */
273
+ to: `0x${string}`;
274
+ /** The calldata for the enter() function call */
275
+ calldata: `0x${string}`;
276
+ /** The proposal ID (bytes16 hex) */
277
+ proposalId: `0x${string}`;
278
+ };
279
+ export type ProposeAddEditorParams = {
280
+ /**
281
+ * The proposer's space ID (bytes16 hex).
282
+ * This is the fromSpaceId in the enter() call.
283
+ */
284
+ authorSpaceId: string;
285
+ /**
286
+ * The DAO space ID (bytes16 hex).
287
+ * This is the toSpaceId in the enter() call.
288
+ */
289
+ spaceId: string;
290
+ /**
291
+ * The space ID of the new editor to add (bytes16 hex).
292
+ */
293
+ newEditorSpaceId: string;
294
+ /**
295
+ * Voting mode for the proposal.
296
+ * Defaults to 'SLOW' since addEditor() is a governance action.
297
+ */
298
+ votingMode?: VotingMode;
299
+ /**
300
+ * Optional bytes16 proposalId (0x + 32 hex chars).
301
+ * If omitted, a unique id is generated.
302
+ */
303
+ proposalId?: string;
304
+ /** Network to use (defaults to TESTNET) */
305
+ network?: Network;
306
+ };
307
+ export type ProposeAddEditorResult = {
308
+ /** The contract address to send the transaction to (Space Registry) */
309
+ to: `0x${string}`;
310
+ /** The calldata for the enter() function call */
311
+ calldata: `0x${string}`;
312
+ /** The proposal ID (bytes16 hex) */
313
+ proposalId: `0x${string}`;
314
+ };
243
315
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dao-space/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,cAAc,EAAE,mBAAmB,CAAC;IACpC,yFAAyF;IACzF,qBAAqB,EAAE,KAAK,MAAM,EAAE,EAAE,CAAC;IACvC,gFAAgF;IAChF,qBAAqB,CAAC,EAAE,KAAK,MAAM,EAAE,EAAE,CAAC;IACxC,sCAAsC;IACtC,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC;IACpB,+DAA+D;IAC/D,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;IACX,6FAA6F;IAC7F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,GAAG,EAAE,EAAE,EAAE,CAAC;IACV,sCAAsC;IACtC,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC;IACpB;;;OAGG;IACH,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B;;;OAGG;IACH,aAAa,EAAE,KAAK,MAAM,EAAE,CAAC;IAC7B;;;OAGG;IACH,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,4BAA4B;IAC5B,MAAM,EAAE,EAAE,CAAC;IACX,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,uEAAuE;IACvE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,iDAAiD;IACjD,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,oCAAoC;IACpC,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,IAAI,EAAE,UAAU,CAAC;IACjB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,uEAAuE;IACvE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,iDAAiD;IACjD,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,uEAAuE;IACvE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,iDAAiD;IACjD,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,uEAAuE;IACvE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,iDAAiD;IACjD,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,oCAAoC;IACpC,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,uEAAuE;IACvE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,iDAAiD;IACjD,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,oCAAoC;IACpC,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,uEAAuE;IACvE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,iDAAiD;IACjD,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,oCAAoC;IACpC,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dao-space/types.ts"],"names":[],"mappings":"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"}
@@ -8,16 +8,18 @@ import type { CreateProposalReviewParams, CreateResult } from '../types.js';
8
8
  * ```ts
9
9
  * import { Graph } from '@geoprotocol/geo-sdk';
10
10
  *
11
- * // Low-difficulty bounty review (pass only)
11
+ * // Low-difficulty bounty review (pass + optional content)
12
12
  * const { id, ops } = Graph.createProposalReview({
13
13
  * proposal: { id: proposalId, name: 'Proposal name' },
14
14
  * pass: true,
15
+ * content: 'Review notes', // optional, plain text or markdown
15
16
  * });
16
17
  *
17
- * // Medium/hard bounty review (with ratings)
18
+ * // Medium/hard bounty review (with ratings + optional content)
18
19
  * const { id, ops } = Graph.createProposalReview({
19
20
  * proposal: { id: proposalId, name: 'Proposal name' },
20
21
  * pass: true,
22
+ * content: 'Review notes', // optional, plain text or markdown
21
23
  * completeness: 0.8,
22
24
  * accuracy: 1,
23
25
  * skill: 0.6,
@@ -1 +1 @@
1
- {"version":3,"file":"create-proposal-review.d.ts","sourceRoot":"","sources":["../../../src/graph/create-proposal-review.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,0BAA0B,EAAE,YAAY,EAAmB,MAAM,aAAa,CAAC;AAG7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,0BAA0B,KAAG,YAoCzE,CAAC"}
1
+ {"version":3,"file":"create-proposal-review.d.ts","sourceRoot":"","sources":["../../../src/graph/create-proposal-review.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,0BAA0B,EAAE,YAAY,EAAmB,MAAM,aAAa,CAAC;AAG7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,0BAA0B,KAAG,YA4CzE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ACCURACY_RATING_PROPERTY, BOUNTY_REVIEW_TYPE, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, PASS_PROPERTY, PROPOSALS_PROPERTY, SKILL_RATING_PROPERTY, } from '../core/ids/system.js';
1
+ import { ACCURACY_RATING_PROPERTY, BOUNTY_REVIEW_TYPE, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, MARKDOWN_CONTENT, PASS_PROPERTY, PROPOSALS_PROPERTY, SKILL_RATING_PROPERTY, } from '../core/ids/system.js';
2
2
  import { Id } from '../id.js';
3
3
  import { assertValid, generate } from '../id-utils.js';
4
4
  import { createEntity } from './create-entity.js';
@@ -11,16 +11,18 @@ import { createEntity } from './create-entity.js';
11
11
  * ```ts
12
12
  * import { Graph } from '@geoprotocol/geo-sdk';
13
13
  *
14
- * // Low-difficulty bounty review (pass only)
14
+ * // Low-difficulty bounty review (pass + optional content)
15
15
  * const { id, ops } = Graph.createProposalReview({
16
16
  * proposal: { id: proposalId, name: 'Proposal name' },
17
17
  * pass: true,
18
+ * content: 'Review notes', // optional, plain text or markdown
18
19
  * });
19
20
  *
20
- * // Medium/hard bounty review (with ratings)
21
+ * // Medium/hard bounty review (with ratings + optional content)
21
22
  * const { id, ops } = Graph.createProposalReview({
22
23
  * proposal: { id: proposalId, name: 'Proposal name' },
23
24
  * pass: true,
25
+ * content: 'Review notes', // optional, plain text or markdown
24
26
  * completeness: 0.8,
25
27
  * accuracy: 1,
26
28
  * skill: 0.6,
@@ -43,6 +45,13 @@ export const createProposalReview = (params) => {
43
45
  value: params.pass,
44
46
  },
45
47
  ];
48
+ if (params.content) {
49
+ values.push({
50
+ property: MARKDOWN_CONTENT,
51
+ type: 'text',
52
+ value: params.content,
53
+ });
54
+ }
46
55
  if ('completeness' in params) {
47
56
  values.push({ property: COMPLETENESS_RATING_PROPERTY, type: 'float', value: params.completeness }, { property: ACCURACY_RATING_PROPERTY, type: 'float', value: params.accuracy }, { property: SKILL_RATING_PROPERTY, type: 'float', value: params.skill }, { property: EFFORT_RATING_PROPERTY, type: 'float', value: params.effort });
48
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create-proposal-review.js","sourceRoot":"","sources":["../../../src/graph/create-proposal-review.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,4BAA4B,EAC5B,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAkC,EAAgB,EAAE;IACvF,IAAI,MAAM,CAAC,EAAE;QAAE,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,gCAAgC,CAAC,CAAC;IACxE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,yCAAyC,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,QAAQ,EAAE,CAAC;IAEnC,MAAM,MAAM,GAAoB;QAC9B;YACE,QAAQ,EAAE,aAAa;YACvB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB;KACF,CAAC;IAEF,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CACT,EAAE,QAAQ,EAAE,4BAA4B,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,EACrF,EAAE,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,EAC7E,EAAE,QAAQ,EAAE,qBAAqB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EACvE,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1E,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC;QAC3B,EAAE;QACF,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC1B,KAAK,EAAE,CAAC,kBAAkB,CAAC;QAC3B,MAAM;QACN,SAAS,EAAE;YACT,CAAC,kBAAkB,CAAC,EAAE;gBACpB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;aAC7B;SACF;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;AAC7B,CAAC,CAAC"}
1
+ {"version":3,"file":"create-proposal-review.js","sourceRoot":"","sources":["../../../src/graph/create-proposal-review.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAkC,EAAgB,EAAE;IACvF,IAAI,MAAM,CAAC,EAAE;QAAE,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,gCAAgC,CAAC,CAAC;IACxE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,yCAAyC,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,QAAQ,EAAE,CAAC;IAEnC,MAAM,MAAM,GAAoB;QAC9B;YACE,QAAQ,EAAE,aAAa;YACvB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB;KACF,CAAC;IAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,gBAAgB;YAC1B,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,MAAM,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CACT,EAAE,QAAQ,EAAE,4BAA4B,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,EACrF,EAAE,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,EAC7E,EAAE,QAAQ,EAAE,qBAAqB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EACvE,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1E,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC;QAC3B,EAAE;QACF,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC1B,KAAK,EAAE,CAAC,kBAAkB,CAAC;QAC3B,MAAM;QACN,SAAS,EAAE;YACT,CAAC,kBAAkB,CAAC,EAAE;gBACpB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;aAC7B;SACF;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;AAC7B,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it } from 'vitest';
2
- import { ACCURACY_RATING_PROPERTY, BOUNTY_REVIEW_TYPE, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, NAME_PROPERTY, PASS_PROPERTY, PROPOSALS_PROPERTY, SKILL_RATING_PROPERTY, TYPES_PROPERTY, } from '../core/ids/system.js';
2
+ import { ACCURACY_RATING_PROPERTY, BOUNTY_REVIEW_TYPE, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, MARKDOWN_CONTENT, NAME_PROPERTY, PASS_PROPERTY, PROPOSALS_PROPERTY, SKILL_RATING_PROPERTY, TYPES_PROPERTY, } from '../core/ids/system.js';
3
3
  import { Id } from '../id.js';
4
4
  import { toGrcId } from '../id-utils.js';
5
5
  import { createProposalReview } from './create-proposal-review.js';
@@ -134,6 +134,56 @@ describe('createProposalReview', () => {
134
134
  expect(completenessValue?.value.value).toBe(0);
135
135
  }
136
136
  });
137
+ it('includes content value when content is provided', () => {
138
+ const { ops } = createProposalReview({
139
+ proposal: { id: proposalId, name: proposalName },
140
+ pass: true,
141
+ content: 'Detailed review notes',
142
+ });
143
+ const entityOp = ops[0];
144
+ const contentValue = entityOp.values.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
145
+ expect(contentValue).toBeDefined();
146
+ expect(contentValue?.value.type).toBe('text');
147
+ if (contentValue?.value.type === 'text') {
148
+ expect(contentValue?.value.value).toBe('Detailed review notes');
149
+ }
150
+ });
151
+ it('does not include content value when content is omitted', () => {
152
+ const { ops } = createProposalReview({
153
+ proposal: { id: proposalId, name: proposalName },
154
+ pass: true,
155
+ });
156
+ const entityOp = ops[0];
157
+ const contentValue = entityOp.values.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
158
+ expect(contentValue).toBeUndefined();
159
+ });
160
+ it('does not include content value when content is an empty string', () => {
161
+ const { ops } = createProposalReview({
162
+ proposal: { id: proposalId, name: proposalName },
163
+ pass: true,
164
+ content: '',
165
+ });
166
+ const entityOp = ops[0];
167
+ const contentValue = entityOp.values.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
168
+ expect(contentValue).toBeUndefined();
169
+ });
170
+ it('includes content value alongside ratings', () => {
171
+ const { ops } = createProposalReview({
172
+ proposal: { id: proposalId, name: proposalName },
173
+ pass: false,
174
+ content: 'Notes with ratings',
175
+ completeness: 0.8,
176
+ accuracy: 1,
177
+ skill: 0.6,
178
+ effort: 0.4,
179
+ });
180
+ const entityOp = ops[0];
181
+ const contentValue = entityOp.values.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
182
+ expect(contentValue).toBeDefined();
183
+ if (contentValue?.value.type === 'text') {
184
+ expect(contentValue?.value.value).toBe('Notes with ratings');
185
+ }
186
+ });
137
187
  it('throws for invalid proposal id', () => {
138
188
  expect(() => createProposalReview({
139
189
  proposal: { id: 'invalid', name: proposalName },
@@ -1 +1 @@
1
- {"version":3,"file":"create-proposal-review.test.js","sourceRoot":"","sources":["../../../src/graph/create-proposal-review.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-proposal-review.test.js","sourceRoot":"","sources":["../../../src/graph/create-proposal-review.test.ts"],"names":[],"mappings":"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"}
@@ -7,16 +7,18 @@ import type { CreateResult, UpdateProposalReviewParams } from '../types.js';
7
7
  * ```ts
8
8
  * import { Graph } from '@geoprotocol/geo-sdk';
9
9
  *
10
- * // Update pass only (low difficulty)
10
+ * // Update pass + optional content (low difficulty)
11
11
  * const { id, ops } = Graph.updateProposalReview({
12
12
  * proposalReviewId: reviewId,
13
13
  * pass: false,
14
+ * content: 'Updated review notes', // optional, plain text or markdown
14
15
  * });
15
16
  *
16
- * // Update with ratings (medium/hard difficulty)
17
+ * // Update with ratings + optional content (medium/hard difficulty)
17
18
  * const { id, ops } = Graph.updateProposalReview({
18
19
  * proposalReviewId: reviewId,
19
20
  * pass: true,
21
+ * content: 'Updated review notes', // optional, plain text or markdown
20
22
  * completeness: 0.8,
21
23
  * accuracy: 1,
22
24
  * skill: 0.6,
@@ -1 +1 @@
1
- {"version":3,"file":"update-proposal-review.d.ts","sourceRoot":"","sources":["../../../src/graph/update-proposal-review.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAmB,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG7F;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,0BAA0B,KAAG,YAwBzE,CAAC"}
1
+ {"version":3,"file":"update-proposal-review.d.ts","sourceRoot":"","sources":["../../../src/graph/update-proposal-review.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAmB,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,0BAA0B,KAAG,YAgCzE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ACCURACY_RATING_PROPERTY, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, PASS_PROPERTY, SKILL_RATING_PROPERTY, } from '../core/ids/system.js';
1
+ import { ACCURACY_RATING_PROPERTY, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, MARKDOWN_CONTENT, PASS_PROPERTY, SKILL_RATING_PROPERTY, } from '../core/ids/system.js';
2
2
  import { assertValid } from '../id-utils.js';
3
3
  import { updateEntity } from './update-entity.js';
4
4
  /**
@@ -9,16 +9,18 @@ import { updateEntity } from './update-entity.js';
9
9
  * ```ts
10
10
  * import { Graph } from '@geoprotocol/geo-sdk';
11
11
  *
12
- * // Update pass only (low difficulty)
12
+ * // Update pass + optional content (low difficulty)
13
13
  * const { id, ops } = Graph.updateProposalReview({
14
14
  * proposalReviewId: reviewId,
15
15
  * pass: false,
16
+ * content: 'Updated review notes', // optional, plain text or markdown
16
17
  * });
17
18
  *
18
- * // Update with ratings (medium/hard difficulty)
19
+ * // Update with ratings + optional content (medium/hard difficulty)
19
20
  * const { id, ops } = Graph.updateProposalReview({
20
21
  * proposalReviewId: reviewId,
21
22
  * pass: true,
23
+ * content: 'Updated review notes', // optional, plain text or markdown
22
24
  * completeness: 0.8,
23
25
  * accuracy: 1,
24
26
  * skill: 0.6,
@@ -38,6 +40,13 @@ export const updateProposalReview = (params) => {
38
40
  value: params.pass,
39
41
  },
40
42
  ];
43
+ if (params.content) {
44
+ values.push({
45
+ property: MARKDOWN_CONTENT,
46
+ type: 'text',
47
+ value: params.content,
48
+ });
49
+ }
41
50
  if ('completeness' in params) {
42
51
  values.push({ property: COMPLETENESS_RATING_PROPERTY, type: 'float', value: params.completeness }, { property: ACCURACY_RATING_PROPERTY, type: 'float', value: params.accuracy }, { property: SKILL_RATING_PROPERTY, type: 'float', value: params.skill }, { property: EFFORT_RATING_PROPERTY, type: 'float', value: params.effort });
43
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"update-proposal-review.js","sourceRoot":"","sources":["../../../src/graph/update-proposal-review.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,aAAa,EACb,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAkC,EAAgB,EAAE;IACvF,WAAW,CAAC,MAAM,CAAC,gBAAgB,EAAE,8CAA8C,CAAC,CAAC;IAErF,MAAM,MAAM,GAAoB;QAC9B;YACE,QAAQ,EAAE,aAAa;YACvB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB;KACF,CAAC;IAEF,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CACT,EAAE,QAAQ,EAAE,4BAA4B,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,EACrF,EAAE,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,EAC7E,EAAE,QAAQ,EAAE,qBAAqB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EACvE,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1E,CAAC;IACJ,CAAC;IAED,OAAO,YAAY,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC,gBAAgB;QAC3B,MAAM;KACP,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"update-proposal-review.js","sourceRoot":"","sources":["../../../src/graph/update-proposal-review.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAkC,EAAgB,EAAE;IACvF,WAAW,CAAC,MAAM,CAAC,gBAAgB,EAAE,8CAA8C,CAAC,CAAC;IAErF,MAAM,MAAM,GAAoB;QAC9B;YACE,QAAQ,EAAE,aAAa;YACvB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB;KACF,CAAC;IAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,gBAAgB;YAC1B,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,MAAM,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CACT,EAAE,QAAQ,EAAE,4BAA4B,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,EACrF,EAAE,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,EAC7E,EAAE,QAAQ,EAAE,qBAAqB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EACvE,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1E,CAAC;IACJ,CAAC;IAED,OAAO,YAAY,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC,gBAAgB;QAC3B,MAAM;KACP,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it } from 'vitest';
2
- import { ACCURACY_RATING_PROPERTY, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, NAME_PROPERTY, PASS_PROPERTY, SKILL_RATING_PROPERTY, } from '../core/ids/system.js';
2
+ import { ACCURACY_RATING_PROPERTY, COMPLETENESS_RATING_PROPERTY, EFFORT_RATING_PROPERTY, MARKDOWN_CONTENT, NAME_PROPERTY, PASS_PROPERTY, SKILL_RATING_PROPERTY, } from '../core/ids/system.js';
3
3
  import { Id } from '../id.js';
4
4
  import { toGrcId } from '../id-utils.js';
5
5
  import { updateProposalReview } from './update-proposal-review.js';
@@ -85,6 +85,56 @@ describe('updateProposalReview', () => {
85
85
  expect(effortValue?.value.value).toBe(0.4);
86
86
  }
87
87
  });
88
+ it('includes content value when content is provided', () => {
89
+ const { ops } = updateProposalReview({
90
+ proposalReviewId: reviewId,
91
+ pass: true,
92
+ content: 'Updated notes',
93
+ });
94
+ const op = ops[0];
95
+ const contentValue = op.set.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
96
+ expect(contentValue).toBeDefined();
97
+ expect(contentValue?.value.type).toBe('text');
98
+ if (contentValue?.value.type === 'text') {
99
+ expect(contentValue?.value.value).toBe('Updated notes');
100
+ }
101
+ });
102
+ it('does not include content value when content is omitted', () => {
103
+ const { ops } = updateProposalReview({
104
+ proposalReviewId: reviewId,
105
+ pass: true,
106
+ });
107
+ const op = ops[0];
108
+ const contentValue = op.set.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
109
+ expect(contentValue).toBeUndefined();
110
+ });
111
+ it('does not include content value when content is an empty string', () => {
112
+ const { ops } = updateProposalReview({
113
+ proposalReviewId: reviewId,
114
+ pass: true,
115
+ content: '',
116
+ });
117
+ const op = ops[0];
118
+ const contentValue = op.set.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
119
+ expect(contentValue).toBeUndefined();
120
+ });
121
+ it('includes content value alongside ratings', () => {
122
+ const { ops } = updateProposalReview({
123
+ proposalReviewId: reviewId,
124
+ pass: false,
125
+ content: 'Notes with ratings',
126
+ completeness: 0.8,
127
+ accuracy: 1,
128
+ skill: 0.6,
129
+ effort: 0.4,
130
+ });
131
+ const op = ops[0];
132
+ const contentValue = op.set.find(v => v.property.every((b, i) => b === toGrcId(MARKDOWN_CONTENT)[i]));
133
+ expect(contentValue).toBeDefined();
134
+ if (contentValue?.value.type === 'text') {
135
+ expect(contentValue?.value.value).toBe('Notes with ratings');
136
+ }
137
+ });
88
138
  it('throws for invalid proposalReviewId', () => {
89
139
  expect(() => updateProposalReview({
90
140
  proposalReviewId: 'invalid',