Skip to main content

Function: createFieldProposalRecord()

createFieldProposalRecord(agent, data): Promise<CreateRecordResult>

Defined in: web/lib/atproto/record-creator.ts:346

Create a field proposal record in the user's PDS.

Parameters

agent

Agent

Authenticated ATProto Agent

data

Omit<{ alternateNames: string[]; createdAt: string; description: string; discussionUri: string; evidence: object[]; existingFieldUri: string; externalMappings: object[]; fieldName: string; fieldType: "topic" | "field" | "root" | "subfield"; mergeTargetUri: string; parentFieldUri: string; proposalType: "create" | "merge" | "modify" | "deprecate"; rationale: string; references: object[]; }, "createdAt">

Proposal data

Returns

Promise<CreateRecordResult>

Created record result

Remarks

Creates a governance proposal for knowledge graph changes. The proposal is stored in the user's PDS and will be indexed by Chive. Community members can then vote on the proposal.

Throws

Error if agent is not authenticated

Throws

Error if record creation fails

Example

const result = await createFieldProposalRecord(agent, {
fieldName: 'Quantum Machine Learning',
description: 'Intersection of quantum computing and ML...',
proposalType: 'create',
rationale: 'This field has grown significantly...',
});