proposal-hints-create-context.test.mjs
31 lines 1.3 KB
Raw
sha256:65ccb454656ea5acdea0a10e559b78bcde1eb6ff753ecc2911bc99d1c3d7cadd feat(calendar): enforce agent context tiers in retrieval AP… Human minor ⚠ breaking 2 days ago
1 import test from 'node:test';
2 import assert from 'node:assert/strict';
3 import { proposalDataForHostedReviewHintsFromCreate } from '../hub/gateway/proposal-hints-create-context.mjs';
4
5 test('returns null when no proposal_id', () => {
6 assert.equal(proposalDataForHostedReviewHintsFromCreate({ path: 'a.md' }, { body: 'x' }), null);
7 });
8
9 test('uses canister body when present', () => {
10 const out = proposalDataForHostedReviewHintsFromCreate(
11 { proposal_id: 'p1', path: 'n.md', body: 'from-canister' },
12 { path: 'n.md', body: 'from-client' },
13 );
14 assert.deepEqual(out, { path: 'n.md', body: 'from-canister' });
15 });
16
17 test('falls back to client body when canister omits body', () => {
18 const out = proposalDataForHostedReviewHintsFromCreate(
19 { proposal_id: 'p1', path: 'projects/x.md', status: 'proposed' },
20 { path: 'projects/x.md', body: 'client markdown', source: 'hub_ui' },
21 );
22 assert.deepEqual(out, { path: 'projects/x.md', body: 'client markdown' });
23 });
24
25 test('falls back to client body when canister returns empty string', () => {
26 const out = proposalDataForHostedReviewHintsFromCreate(
27 { proposal_id: 'p1', path: 'p.md', body: '' },
28 { path: 'p.md', body: 'filled from client' },
29 );
30 assert.deepEqual(out, { path: 'p.md', body: 'filled from client' });
31 });
File History 2 commits
sha256:65ccb454656ea5acdea0a10e559b78bcde1eb6ff753ecc2911bc99d1c3d7cadd feat(calendar): enforce agent context tiers in retrieval AP… Human minor 2 days ago
sha256:9103f98c89257ed2b01c237cea895dabb3e85ea337dccb1161c175e4422355b6 docs: accept Calendar Events v0 spec with Phase 0 security … Human 2 days ago