@codedrifters/configulator 0.0.256 → 0.0.257
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.
- package/lib/index.d.mts +202 -1
- package/lib/index.d.ts +203 -2
- package/lib/index.js +82 -0
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +81 -0
- package/lib/index.mjs.map +1 -1
- package/package.json +1 -1
package/lib/index.mjs
CHANGED
|
@@ -14608,6 +14608,70 @@ function renderFocusSection(focus) {
|
|
|
14608
14608
|
return lines.join("\n");
|
|
14609
14609
|
}
|
|
14610
14610
|
|
|
14611
|
+
// src/agent/bundles/meeting-types.ts
|
|
14612
|
+
var DEFAULT_AGENDA_TEMPLATE_ROOT = "<meetingsRoot>/_agenda-templates";
|
|
14613
|
+
function renderMeetingTypesSection(meetings) {
|
|
14614
|
+
if (!meetings) {
|
|
14615
|
+
return "";
|
|
14616
|
+
}
|
|
14617
|
+
const types = meetings.meetingTypes ?? [];
|
|
14618
|
+
const areas = meetings.meetingAreas ?? [];
|
|
14619
|
+
if (types.length === 0 && areas.length === 0) {
|
|
14620
|
+
return "";
|
|
14621
|
+
}
|
|
14622
|
+
const sections = [];
|
|
14623
|
+
if (types.length > 0) {
|
|
14624
|
+
sections.push(renderMeetingTypes(types, meetings.agendaTemplateRoot));
|
|
14625
|
+
}
|
|
14626
|
+
if (areas.length > 0) {
|
|
14627
|
+
sections.push(renderMeetingAreas(areas));
|
|
14628
|
+
}
|
|
14629
|
+
return sections.join("\n\n");
|
|
14630
|
+
}
|
|
14631
|
+
function renderMeetingTypes(types, agendaTemplateRoot) {
|
|
14632
|
+
const resolvedRoot = agendaTemplateRoot ?? DEFAULT_AGENDA_TEMPLATE_ROOT;
|
|
14633
|
+
const lines = [
|
|
14634
|
+
"## Recognized meeting types",
|
|
14635
|
+
"",
|
|
14636
|
+
"This project declares a meeting-type taxonomy through",
|
|
14637
|
+
"`AgentConfigOptions.meetings.meetingTypes`. When classifying a",
|
|
14638
|
+
"meeting transcript, pick the `id` from this list that best fits the",
|
|
14639
|
+
"meeting; do **not** invent new type identifiers. Agenda-template",
|
|
14640
|
+
`paths below are resolved relative to \`${resolvedRoot}\`.`,
|
|
14641
|
+
"",
|
|
14642
|
+
"| ID | Label | Scope | Cadence | Default duration | Agenda template |",
|
|
14643
|
+
"|----|-------|-------|---------|------------------|-----------------|"
|
|
14644
|
+
];
|
|
14645
|
+
for (const type of types) {
|
|
14646
|
+
const cadence = type.cadence ? `\`${type.cadence}\`` : "\u2014";
|
|
14647
|
+
const duration = type.defaultDurationMinutes !== void 0 ? `${type.defaultDurationMinutes} min` : "\u2014";
|
|
14648
|
+
const template = type.agendaTemplatePath ? `\`${type.agendaTemplatePath}\`` : "\u2014";
|
|
14649
|
+
lines.push(
|
|
14650
|
+
`| \`${type.id}\` | ${type.label} | \`${type.scope}\` | ${cadence} | ${duration} | ${template} |`
|
|
14651
|
+
);
|
|
14652
|
+
}
|
|
14653
|
+
return lines.join("\n");
|
|
14654
|
+
}
|
|
14655
|
+
function renderMeetingAreas(areas) {
|
|
14656
|
+
const lines = [
|
|
14657
|
+
"## Area \u2192 doc-root mapping",
|
|
14658
|
+
"",
|
|
14659
|
+
"This project declares a meeting-area routing map through",
|
|
14660
|
+
"`AgentConfigOptions.meetings.meetingAreas`. When a meeting note's",
|
|
14661
|
+
"frontmatter carries an `area:` value matching an `id` below, route",
|
|
14662
|
+
"phase-4 direct edits into the corresponding sub-tree of the docs",
|
|
14663
|
+
"root (`AgentPathsConfig.docsRoot`). Meetings whose `area` does not",
|
|
14664
|
+
"match any declared entry fall back to the default meetings root.",
|
|
14665
|
+
"",
|
|
14666
|
+
"| Area ID | Label | Doc-root sub-folder |",
|
|
14667
|
+
"|---------|-------|---------------------|"
|
|
14668
|
+
];
|
|
14669
|
+
for (const area of areas) {
|
|
14670
|
+
lines.push(`| \`${area.id}\` | ${area.label} | \`${area.docRoot}\` |`);
|
|
14671
|
+
}
|
|
14672
|
+
return lines.join("\n");
|
|
14673
|
+
}
|
|
14674
|
+
|
|
14611
14675
|
// src/agent/bundles/priority-rules.ts
|
|
14612
14676
|
function renderPriorityRulesSection(rules) {
|
|
14613
14677
|
if (rules.length === 0) {
|
|
@@ -15592,6 +15656,22 @@ ${section}`
|
|
|
15592
15656
|
|
|
15593
15657
|
---
|
|
15594
15658
|
|
|
15659
|
+
${section}`
|
|
15660
|
+
});
|
|
15661
|
+
}
|
|
15662
|
+
}
|
|
15663
|
+
}
|
|
15664
|
+
if (this.options.meetings) {
|
|
15665
|
+
const meetingRule = ruleMap.get("meeting-processing-workflow");
|
|
15666
|
+
if (meetingRule) {
|
|
15667
|
+
const section = renderMeetingTypesSection(this.options.meetings);
|
|
15668
|
+
if (section.length > 0) {
|
|
15669
|
+
ruleMap.set("meeting-processing-workflow", {
|
|
15670
|
+
...meetingRule,
|
|
15671
|
+
content: `${meetingRule.content}
|
|
15672
|
+
|
|
15673
|
+
---
|
|
15674
|
+
|
|
15595
15675
|
${section}`
|
|
15596
15676
|
});
|
|
15597
15677
|
}
|
|
@@ -18421,6 +18501,7 @@ export {
|
|
|
18421
18501
|
prReviewBundle,
|
|
18422
18502
|
projenBundle,
|
|
18423
18503
|
renderFocusSection,
|
|
18504
|
+
renderMeetingTypesSection,
|
|
18424
18505
|
renderPriorityRulesSection,
|
|
18425
18506
|
requirementsAnalystBundle,
|
|
18426
18507
|
requirementsReviewerBundle,
|