feat: add canvas marketplace distribution and sharing (#3603)
This commit is contained in:
@@ -1206,8 +1206,12 @@ async function loadCoverageContents({ client, changedFiles, headSha }) {
|
||||
continue;
|
||||
}
|
||||
let system;
|
||||
let designRequirements = [];
|
||||
try {
|
||||
parseFrontmatter(designContent);
|
||||
const design = parseFrontmatter(designContent);
|
||||
designRequirements = Array.isArray(design.data.requirements)
|
||||
? design.data.requirements
|
||||
: [];
|
||||
const match = /^docs\/specs\/([^/]+)\/system-design\/[^/]+\.md$/.exec(designPath);
|
||||
if (!match) {
|
||||
continue;
|
||||
@@ -1225,8 +1229,12 @@ async function loadCoverageContents({ client, changedFiles, headSha }) {
|
||||
}
|
||||
}
|
||||
const unresolvedRequirementIds = [];
|
||||
const workOrderRequirements = new Set(workOrder.requirements ?? []);
|
||||
const referencedRequirementIds = designRequirements.filter(requirementId =>
|
||||
workOrderRequirements.has(requirementId)
|
||||
);
|
||||
if (typeof client.searchCode === 'function') {
|
||||
for (const requirementId of workOrder.requirements ?? []) {
|
||||
for (const requirementId of referencedRequirementIds) {
|
||||
const searchKey = JSON.stringify([requirementDirectory, requirementId]);
|
||||
if (!requirementSearches.has(searchKey)) {
|
||||
requirementSearches.set(
|
||||
@@ -1243,7 +1251,7 @@ async function loadCoverageContents({ client, changedFiles, headSha }) {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
unresolvedRequirementIds.push(...(workOrder.requirements ?? []));
|
||||
unresolvedRequirementIds.push(...referencedRequirementIds);
|
||||
}
|
||||
if (unresolvedRequirementIds.length > 0 && typeof client.listDirectory === 'function') {
|
||||
if (!requirementDirectories.has(requirementDirectory)) {
|
||||
|
||||
Reference in New Issue
Block a user