MCPcopy
hub / github.com/Fission-AI/OpenSpec / memberListProblem

Function memberListProblem

src/core/worksets.ts:104–127  ·  view source on GitHub ↗
(members: WorksetMember[])

Source from the content-addressed store, hash-verified

102 * compose flow (wrapping as workset_member_invalid).
103 */
104export function memberListProblem(members: WorksetMember[]): string | null {
105 if (members.length === 0) {
106 return 'members must not be empty';
107 }
108
109 const seen = new Set<string>();
110 for (const member of members) {
111 const labelProblem = memberLabelProblem(member.name);
112 if (labelProblem !== null) {
113 return labelProblem;
114 }
115
116 if (seen.has(member.name)) {
117 return `duplicate member name '${member.name}' (use the name=path form to label members distinctly)`;
118 }
119 seen.add(member.name);
120
121 if (!path.isAbsolute(member.path)) {
122 return `member path '${member.path}' must be absolute`;
123 }
124 }
125
126 return null;
127}
128
129export function memberLabelProblem(label: string): string | null {
130 return folderStyleNameProblem(label, 'member name');

Callers 3

worksets.test.tsFile · 0.85
finalizeWorksetFunction · 0.85
parseWorksetsStateFunction · 0.85

Calls 2

memberLabelProblemFunction · 0.85
hasMethod · 0.80

Tested by

no test coverage detected