@codedrifters/configulator 0.0.256 → 0.0.258

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.ts CHANGED
@@ -1169,6 +1169,302 @@ interface FocusConfig {
1169
1169
  */
1170
1170
  readonly agentExpansionRules?: AgentExpansionRules;
1171
1171
  }
1172
+ /*******************************************************************************
1173
+ *
1174
+ * Meetings Config
1175
+ *
1176
+ ******************************************************************************/
1177
+ /**
1178
+ * Scope classifier for a meeting type. Used by the `meeting-analysis`
1179
+ * bundle to reason about where a given meeting belongs (internal vs
1180
+ * external) and, for external meetings, the nature of the other party.
1181
+ *
1182
+ * - `internal-recurring` — recurring internal meeting (weekly standup,
1183
+ * team sync, planning cadence).
1184
+ * - `internal-oneoff` — one-off internal meeting (brainstorm, kickoff,
1185
+ * retro).
1186
+ * - `external-customer` — meeting with an existing paying customer.
1187
+ * - `external-prospect` — meeting with a sales prospect not yet under
1188
+ * contract.
1189
+ * - `external-partner` — meeting with a partner (integration, vendor,
1190
+ * channel).
1191
+ * - `external-other` — any external meeting that does not fit the
1192
+ * customer / prospect / partner buckets.
1193
+ */
1194
+ type MeetingScope = "internal-recurring" | "internal-oneoff" | "external-customer" | "external-prospect" | "external-partner" | "external-other";
1195
+ /**
1196
+ * A single meeting-type taxonomy entry declared by the consuming repo.
1197
+ * Each entry names a kind of meeting the project recognizes
1198
+ * (`founders-weekly`, `customer-discovery`, etc.) and supplies the
1199
+ * per-type metadata agents need to route, default, and template that
1200
+ * meeting.
1201
+ *
1202
+ * When `AgentConfigOptions.meetings.meetingTypes` is non-empty, the
1203
+ * `meeting-analysis` bundle renders a "Recognized meeting types"
1204
+ * subsection listing every declared type so agents pick from the
1205
+ * project's vocabulary rather than guessing.
1206
+ *
1207
+ * @see MeetingsConfig
1208
+ * @see ./bundles/meeting-types.ts#renderMeetingTypesSection
1209
+ */
1210
+ interface MeetingType {
1211
+ /**
1212
+ * Stable machine identifier for the meeting type. Used as the
1213
+ * `meeting_type` frontmatter value on meeting notes and as the key
1214
+ * that the future `agenda` bundle will look up when selecting a
1215
+ * pre-meeting template.
1216
+ * @example 'founders-weekly', 'customer-discovery', 'sprint-review'
1217
+ */
1218
+ readonly id: string;
1219
+ /** Human-readable label shown in generated rule content. */
1220
+ readonly label: string;
1221
+ /**
1222
+ * Scope classification — whether the meeting is internal (recurring
1223
+ * or one-off) or external (customer / prospect / partner / other).
1224
+ */
1225
+ readonly scope: MeetingScope;
1226
+ /**
1227
+ * Default scheduled duration in minutes. Optional; agents may use
1228
+ * this when proposing calendar holds or when validating a
1229
+ * transcript's recorded duration against the type's expected
1230
+ * duration.
1231
+ */
1232
+ readonly defaultDurationMinutes?: number;
1233
+ /**
1234
+ * Path to a pre-meeting agenda skeleton for this type, resolved
1235
+ * relative to `MeetingsConfig.agendaTemplateRoot`. Optional — a
1236
+ * type without a template simply has no canned agenda.
1237
+ * @example 'founders-weekly.md', 'customer-discovery/v2.md'
1238
+ */
1239
+ readonly agendaTemplatePath?: string;
1240
+ /**
1241
+ * Human-readable cadence descriptor. Free-form text — agents
1242
+ * surface the string verbatim rather than parsing it.
1243
+ * @example 'weekly', 'every 2 weeks', 'one-off'
1244
+ */
1245
+ readonly cadence?: string;
1246
+ }
1247
+ /**
1248
+ * A single meeting-area entry. Meeting areas provide a coarse
1249
+ * routing map from an `area` frontmatter value on a meeting note to
1250
+ * the sub-tree of the docs root where phase-4 direct edits should
1251
+ * land.
1252
+ *
1253
+ * Example: declaring `{ id: 'product-engineering', label: 'Product &
1254
+ * Engineering', docRoot: 'product' }` tells the `meeting-analysis`
1255
+ * bundle that a meeting whose frontmatter carries
1256
+ * `area: product-engineering` should have its direct edits routed
1257
+ * under `<docsRoot>/product/`.
1258
+ *
1259
+ * When `AgentConfigOptions.meetings.meetingAreas` is non-empty, the
1260
+ * `meeting-analysis` bundle renders an "Area → doc-root mapping"
1261
+ * subsection documenting every declared area and its resolved
1262
+ * destination.
1263
+ *
1264
+ * @see MeetingsConfig
1265
+ * @see ./bundles/meeting-types.ts#renderMeetingTypesSection
1266
+ */
1267
+ interface MeetingArea {
1268
+ /**
1269
+ * Stable machine identifier for the area. Matches the `area`
1270
+ * frontmatter value on meeting notes.
1271
+ * @example 'product-engineering', 'go-to-market', 'operations'
1272
+ */
1273
+ readonly id: string;
1274
+ /** Human-readable label shown in generated rule content. */
1275
+ readonly label: string;
1276
+ /**
1277
+ * Destination folder for phase-4 direct edits on meeting notes
1278
+ * carrying this area. Interpreted **relative to the resolved
1279
+ * docs root** (`AgentPathsConfig.docsRoot`, default
1280
+ * `docs/src/content/docs`). Do not include a leading slash.
1281
+ * @example 'product', 'gtm', 'operations'
1282
+ */
1283
+ readonly docRoot: string;
1284
+ }
1285
+ /**
1286
+ * Meeting-analysis injection points — the set of typed
1287
+ * configurations agents consult when classifying, routing, and
1288
+ * templating a meeting. Every field is optional.
1289
+ *
1290
+ * - `meetingTypes` — the set of meeting types the repo recognizes.
1291
+ * - `meetingAreas` — maps `area` frontmatter to doc-root sub-trees.
1292
+ * - `agendaTemplateRoot` — where pre-meeting agenda skeletons live.
1293
+ *
1294
+ * When supplied, the `meeting-analysis` bundle conditionally renders
1295
+ * two new subsections into the `meeting-processing-workflow` rule —
1296
+ * "Recognized meeting types" (when `meetingTypes` is non-empty) and
1297
+ * "Area → doc-root mapping" (when `meetingAreas` is non-empty).
1298
+ *
1299
+ * @see MeetingType
1300
+ * @see MeetingArea
1301
+ * @see ./bundles/meeting-types.ts#renderMeetingTypesSection
1302
+ */
1303
+ interface MeetingsConfig {
1304
+ /**
1305
+ * Meeting-type taxonomy. An empty or missing list means the
1306
+ * consuming repo does not classify meetings by type; the
1307
+ * `meeting-analysis` bundle falls back to its generic 4-phase
1308
+ * behaviour.
1309
+ */
1310
+ readonly meetingTypes?: ReadonlyArray<MeetingType>;
1311
+ /**
1312
+ * Meeting-area map. An empty or missing list means the consuming
1313
+ * repo does not route meetings by area; phase-4 direct edits
1314
+ * continue to land under the default meetings root.
1315
+ */
1316
+ readonly meetingAreas?: ReadonlyArray<MeetingArea>;
1317
+ /**
1318
+ * Root folder containing pre-meeting agenda-template skeletons.
1319
+ * Resolved at issue-creation time by the (future) `agenda` bundle
1320
+ * when selecting a template for a given `meeting_type`.
1321
+ *
1322
+ * When unset, the `meeting-analysis` bundle documents the default
1323
+ * of `<meetingsRoot>/_agenda-templates` — consumers that wire a
1324
+ * custom `AgentPathsConfig.meetingsRoot` inherit the override
1325
+ * automatically.
1326
+ * @default "<meetingsRoot>/_agenda-templates"
1327
+ */
1328
+ readonly agendaTemplateRoot?: string;
1329
+ }
1330
+ /*******************************************************************************
1331
+ *
1332
+ * Agent Features Config
1333
+ *
1334
+ ******************************************************************************/
1335
+ /**
1336
+ * Per-tier lists of domain-specific source examples injected into the
1337
+ * base bundle's "Source Quality & Verification" rule under each of the
1338
+ * T1 / T2 / T3 / T4 headings.
1339
+ *
1340
+ * Every field is optional. When a field is set, the `base` bundle
1341
+ * renders a bullet list of the supplied examples beneath the
1342
+ * corresponding tier heading; when a field is unset, the tier heading
1343
+ * renders with its generic examples only.
1344
+ *
1345
+ * The examples are emitted verbatim — supply fully-formed descriptive
1346
+ * strings ("FHIR R4 capability statements", "SEC EDGAR filings").
1347
+ *
1348
+ * @see AgentFeaturesConfig
1349
+ * @see ./bundles/features.ts#renderSourceTierExamples
1350
+ */
1351
+ interface SourceTierExamples {
1352
+ /**
1353
+ * Primary living sources — T1. Examples that update when reality
1354
+ * changes (official product docs, company about/leadership pages,
1355
+ * live government registries).
1356
+ */
1357
+ readonly t1?: ReadonlyArray<string>;
1358
+ /**
1359
+ * Primary snapshot sources — T2. Examples that capture a moment in
1360
+ * time from the authoritative party (press releases, earnings
1361
+ * transcripts, regulatory filings, conference presentations).
1362
+ */
1363
+ readonly t2?: ReadonlyArray<string>;
1364
+ /**
1365
+ * Secondary sources — T3. Examples that interpret primary material
1366
+ * (news articles, trade press, analyst reports, industry databases).
1367
+ */
1368
+ readonly t3?: ReadonlyArray<string>;
1369
+ /**
1370
+ * Self-reported or marketing sources — T4. Examples that require
1371
+ * corroboration before any factual claim rides on them (vendor
1372
+ * comparison pages, testimonials, social posts, job listings,
1373
+ * Wikipedia).
1374
+ */
1375
+ readonly t4?: ReadonlyArray<string>;
1376
+ }
1377
+ /**
1378
+ * A single consumer-supplied doc-section template injected into a
1379
+ * bundle's rule content at rule-generation time.
1380
+ *
1381
+ * The configulator framework is deliberately generic here — it
1382
+ * matches by `bundleName` and appends `body` verbatim under a new
1383
+ * `## <sectionTitle>` heading after the first rule in the target
1384
+ * bundle whose content contains `## <afterSection>`. Named feature
1385
+ * toggles (stealth-mode, consortium-model, etc.) belong in downstream
1386
+ * consumer repos that compose the primitive this interface exposes.
1387
+ *
1388
+ * Placeholder substitution (`{{foo}}`) is **not** performed at
1389
+ * rule-generation time — the `body` string is emitted verbatim.
1390
+ * Any templating is the agent's responsibility at document-authoring
1391
+ * time, not configulator's.
1392
+ *
1393
+ * @see AgentFeaturesConfig
1394
+ * @see ./bundles/features.ts#renderCustomDocSection
1395
+ */
1396
+ interface CustomDocSection {
1397
+ /**
1398
+ * Target bundle id. Must match an `AgentRuleBundle.name` that is
1399
+ * active in the project. If no active bundle has this name, the
1400
+ * section is silently dropped.
1401
+ * @example 'company-profile', 'meeting-analysis', 'bcm-writer'
1402
+ */
1403
+ readonly bundleName: string;
1404
+ /**
1405
+ * Heading text (without any leading `#` characters) of the existing
1406
+ * section this custom section is inserted after. The framework
1407
+ * searches every rule in the target bundle for a heading line at
1408
+ * any level (`#` through `######`) whose text equals `afterSection`;
1409
+ * the first rule that contains such a heading is the insertion site.
1410
+ * Matching any level lets consumers hook into single-`#` bundle-rule
1411
+ * titles (e.g. `# Company Profile Workflow`) as well as nested `##` /
1412
+ * `###` subsections. If no rule contains a matching heading, the
1413
+ * section is silently dropped.
1414
+ *
1415
+ * Multiple entries targeting the same heading render in supplied
1416
+ * order — the first entry lands directly beneath the target heading
1417
+ * block, the second below it, and so on.
1418
+ * @example 'Company Profile Workflow', 'Company Type Taxonomy', 'Output Boundaries'
1419
+ */
1420
+ readonly afterSection: string;
1421
+ /**
1422
+ * Heading text for the injected section, rendered as
1423
+ * `## <sectionTitle>`.
1424
+ * @example 'Consortium Membership', 'Vortex Relevance'
1425
+ */
1426
+ readonly sectionTitle: string;
1427
+ /**
1428
+ * Markdown body emitted verbatim beneath the `## <sectionTitle>`
1429
+ * heading. Trailing newlines are trimmed before rendering.
1430
+ */
1431
+ readonly body: string;
1432
+ }
1433
+ /**
1434
+ * Framework injection points for source-tier customization and
1435
+ * custom doc sections. Supplied via `AgentConfigOptions.features`.
1436
+ *
1437
+ * - `sourceTierExamples` — per-tier domain-specific examples that get
1438
+ * listed under each tier in the base bundle's "Source Quality &
1439
+ * Verification" rule.
1440
+ * - `customDocSections` — per-bundle section templates that render
1441
+ * verbatim after an existing section heading in the target bundle's
1442
+ * rule content.
1443
+ *
1444
+ * Named feature toggles (`consortium-model`, `stealth-mode`, etc.)
1445
+ * are deliberately **not** part of this config surface. They belong
1446
+ * in downstream consumer repos built on top of the generic
1447
+ * `customDocSections` primitive.
1448
+ *
1449
+ * @see SourceTierExamples
1450
+ * @see CustomDocSection
1451
+ * @see ./bundles/features.ts
1452
+ */
1453
+ interface AgentFeaturesConfig {
1454
+ /**
1455
+ * Per-tier lists of domain-specific source examples injected under
1456
+ * T1 / T2 / T3 / T4 in the base bundle's "Source Quality &
1457
+ * Verification" rule.
1458
+ */
1459
+ readonly sourceTierExamples?: SourceTierExamples;
1460
+ /**
1461
+ * Custom doc-section templates to inject into active bundles at
1462
+ * rule-generation time. Each entry names the target bundle, the
1463
+ * section heading to insert after, the injected section's title,
1464
+ * and the body to emit verbatim.
1465
+ */
1466
+ readonly customDocSections?: ReadonlyArray<CustomDocSection>;
1467
+ }
1172
1468
  /*******************************************************************************
1173
1469
  *
1174
1470
  * AgentConfig Options
@@ -1301,6 +1597,47 @@ interface AgentConfigOptions {
1301
1597
  * @see ./bundles/focus.ts#renderFocusSection
1302
1598
  */
1303
1599
  readonly focus?: FocusConfig;
1600
+ /**
1601
+ * Meeting-analysis injection points — typed configs the
1602
+ * `meeting-analysis` bundle consults when classifying, routing, and
1603
+ * templating meetings. Supplies the meeting-type taxonomy, the
1604
+ * area → doc-root routing map, and the agenda-template root used
1605
+ * by the (future) `agenda` bundle.
1606
+ *
1607
+ * When `meetingTypes` is non-empty, the `meeting-analysis` bundle
1608
+ * appends a "Recognized meeting types" subsection to the
1609
+ * `meeting-processing-workflow` rule. When `meetingAreas` is
1610
+ * non-empty, it appends an "Area → doc-root mapping" subsection.
1611
+ * When both are empty or unset, the generated rule content is
1612
+ * unchanged from the no-config baseline.
1613
+ *
1614
+ * @see MeetingsConfig
1615
+ * @see MeetingType
1616
+ * @see MeetingArea
1617
+ * @see ./bundles/meeting-types.ts#renderMeetingTypesSection
1618
+ */
1619
+ readonly meetings?: MeetingsConfig;
1620
+ /**
1621
+ * Framework injection points for source-tier customization and
1622
+ * custom doc sections.
1623
+ *
1624
+ * - `sourceTierExamples` — domain-specific examples injected under
1625
+ * T1 / T2 / T3 / T4 in the base bundle's "Source Quality &
1626
+ * Verification" rule.
1627
+ * - `customDocSections` — consumer-supplied section templates that
1628
+ * render verbatim after an existing section heading in a target
1629
+ * bundle's rule content.
1630
+ *
1631
+ * Named feature toggles (`consortium-model`, `stealth-mode`, etc.)
1632
+ * are intentionally out of scope here — build those on top of
1633
+ * `customDocSections` inside the consuming repo's projen config.
1634
+ *
1635
+ * @see AgentFeaturesConfig
1636
+ * @see SourceTierExamples
1637
+ * @see CustomDocSection
1638
+ * @see ./bundles/features.ts
1639
+ */
1640
+ readonly features?: AgentFeaturesConfig;
1304
1641
  }
1305
1642
 
1306
1643
  /**
@@ -1330,6 +1667,14 @@ declare class AgentConfig extends Component {
1330
1667
  * Find the AgentConfig component on a project.
1331
1668
  */
1332
1669
  static of(project: Project): AgentConfig | undefined;
1670
+ /**
1671
+ * Returns `true` when at least one tier array on the supplied
1672
+ * `SourceTierExamples` is non-empty, signalling that the consuming
1673
+ * repo has opted into rendering the base bundle's
1674
+ * `source-quality-verification` rule. Returns `false` for
1675
+ * `undefined`, `{}`, or a fully-empty `{ t1: [], t2: [], t3: [], t4: [] }`.
1676
+ */
1677
+ private static hasActiveTierExamples;
1333
1678
  /**
1334
1679
  * Merges default Claude permissions with bundle and user-supplied settings.
1335
1680
  *
@@ -1354,8 +1699,11 @@ declare class AgentConfig extends Component {
1354
1699
  /**
1355
1700
  * Return a bundle's rules with `filePatterns` narrowed to the projects
1356
1701
  * that actually matched the bundle's detection predicate (when the bundle
1357
- * provides `findApplicableProjects`). Rules with `ALWAYS` scope and rules
1358
- * on bundles that don't implement the hook are returned unchanged.
1702
+ * provides `findApplicableProjects`) and any project-specified
1703
+ * `features.customDocSections` entries injected into the matching rule
1704
+ * content. Rules with `ALWAYS` scope and rules on bundles that don't
1705
+ * implement the hook are returned with only the custom-section
1706
+ * transformation (if any) applied.
1359
1707
  */
1360
1708
  private bundleRulesFor;
1361
1709
  private resolveSkills;
@@ -1573,6 +1921,51 @@ declare const prReviewBundle: AgentRuleBundle;
1573
1921
  */
1574
1922
  declare const projenBundle: AgentRuleBundle;
1575
1923
 
1924
+ /**
1925
+ * Inject domain-specific source-tier examples into the content of the
1926
+ * base bundle's "Source Quality & Verification" rule.
1927
+ *
1928
+ * For every tier whose examples array is non-empty, a
1929
+ * `**Project-specific examples:**` line followed by a bullet list of
1930
+ * the supplied strings is appended immediately beneath the tier's
1931
+ * `### T<n> — ...` heading paragraph block. Tiers whose examples array
1932
+ * is missing or empty are left untouched.
1933
+ *
1934
+ * Returns the original `content` verbatim when the supplied config is
1935
+ * undefined or has no non-empty tier arrays, so callers can
1936
+ * unconditionally pipe content through this function.
1937
+ */
1938
+ declare function renderSourceTierExamples(content: string, examples: SourceTierExamples | undefined): string;
1939
+ /**
1940
+ * Apply every {@link CustomDocSection} that targets `bundle.name` to
1941
+ * the bundle's rules, returning a new bundle whose matched rules have
1942
+ * the section bodies appended after the configured `afterSection`
1943
+ * heading. Entries that reference a bundle name other than
1944
+ * `bundle.name`, or whose `afterSection` cannot be located in any
1945
+ * rule in the bundle, are silently dropped.
1946
+ *
1947
+ * Entries that target the same `afterSection` heading render in
1948
+ * supplied order — the first supplied entry appears immediately
1949
+ * beneath the target heading block, the second below that, and so on.
1950
+ * This is achieved by advancing the insertion anchor to each
1951
+ * just-injected section's `## <sectionTitle>` heading; the next
1952
+ * same-target entry then lands at the end of that newly-opened
1953
+ * section, which places it immediately after the previous entry
1954
+ * regardless of the original heading's level.
1955
+ *
1956
+ * Returns `bundle` unchanged when `sections` is empty or no entries
1957
+ * match, so callers can unconditionally pipe bundles through this
1958
+ * function without penalty.
1959
+ */
1960
+ declare function renderCustomDocSections(bundle: AgentRuleBundle, sections: ReadonlyArray<CustomDocSection>): AgentRuleBundle;
1961
+ /**
1962
+ * Render a {@link CustomDocSection} into the markdown block that
1963
+ * `renderCustomDocSections` splices after the target heading block.
1964
+ * Exposed for tests that exercise the renderer directly without
1965
+ * touching a full bundle.
1966
+ */
1967
+ declare function renderCustomDocSectionBlock(section: CustomDocSection): string;
1968
+
1576
1969
  /**
1577
1970
  * Render the markdown subsection appended to the
1578
1971
  * `issue-label-conventions` rule when `AgentConfigOptions.focus` is
@@ -1591,6 +1984,29 @@ declare const projenBundle: AgentRuleBundle;
1591
1984
  */
1592
1985
  declare function renderFocusSection(focus: FocusConfig | undefined): string;
1593
1986
 
1987
+ /**
1988
+ * Render the markdown subsections appended to the
1989
+ * `meeting-processing-workflow` rule when `AgentConfigOptions.meetings`
1990
+ * is supplied. Returns an empty string when the supplied config has
1991
+ * nothing to render (no meeting types and no meeting areas) so callers
1992
+ * can unconditionally concatenate the result.
1993
+ *
1994
+ * Two subsections are rendered, each gated on its own input array:
1995
+ *
1996
+ * 1. **Recognized meeting types** — rendered when `meetingTypes` is
1997
+ * non-empty. Lists every declared type with its scope, optional
1998
+ * cadence, default duration, and agenda template path. Also
1999
+ * documents the resolved `agendaTemplateRoot`.
2000
+ * 2. **Area → doc-root mapping** — rendered when `meetingAreas` is
2001
+ * non-empty. Lists every declared area with its `id`, label, and
2002
+ * docs-root-relative destination folder.
2003
+ *
2004
+ * Bundles consume the rendered string by appending it to their own
2005
+ * rule content. A caller that has no meeting types and no meeting
2006
+ * areas receives an empty string and can safely concatenate.
2007
+ */
2008
+ declare function renderMeetingTypesSection(meetings: MeetingsConfig | undefined): string;
2009
+
1594
2010
  /**
1595
2011
  * Render the markdown subsection appended to the
1596
2012
  * `issue-label-conventions` rule when `AgentConfigOptions.priorityRules`
@@ -4325,5 +4741,5 @@ declare const COMPLETE_JOB_ID = "complete";
4325
4741
  */
4326
4742
  declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
4327
4743
 
4328
- export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AgentConfig, AstroConfig, AstroOutput, AstroProject, AwsCdkProject, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, AwsTeardownWorkflow, BUILT_IN_BUNDLES, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, DEFAULT_AGENT_PATHS, DEFAULT_PRIORITY_LABELS, DEFAULT_STATUS_LABELS, DEFAULT_TEARDOWN_BRANCH_PATTERNS, DEFAULT_TYPE_LABELS, JsiiFaker, LAYOUT_ENFORCEMENT, LAYOUT_ROOT_BY_PROJECT_TYPE, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MINIMUM_RELEASE_AGE, MONOREPO_LAYOUT, MonorepoProject, PROD_DEPLOY_NAME, PnpmWorkspace, ProjectMetadata, REQUIREMENTS_WRITER_PATHS, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, ResetTask, STARLIGHT_ROLE, StarlightProject, TestRunner, TurboRepo, TurboRepoTask, TypeScriptConfig, TypeScriptProject, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, Vitest, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, addSyncLabelsWorkflow, awsCdkBundle, baseBundle, bcmWriterBundle, companyProfileBundle, formatLayoutViolation, formatStarlightSingletonViolation, getLatestEligibleVersion, githubWorkflowBundle, industryDiscoveryBundle, jestBundle, maintenanceAuditBundle, meetingAnalysisBundle, orchestratorBundle, peopleProfileBundle, pnpmBundle, prReviewBundle, projenBundle, renderFocusSection, renderPriorityRulesSection, requirementsAnalystBundle, requirementsReviewerBundle, requirementsWriterBundle, researchPipelineBundle, resolveAgentPaths, resolveAstroProjectOutdir, resolveAwsCdkProjectOutdir, resolveModelAlias, resolveOutdirFromPackageName, resolveTemplateVariables, resolveTypeScriptProjectOutdir, slackBundle, softwareProfileBundle, turborepoBundle, typescriptBundle, validateMonorepoLayout, validateStarlightSingleton, vitestBundle };
4329
- export type { AgentConfigOptions, AgentExpansionRules, AgentModel, AgentPathsConfig, AgentPlatform, AgentPlatformOverrides, AgentProcedure, AgentRule, AgentRuleBundle, AgentRuleScope, AgentSkill, AgentSubAgent, AgentSubAgentPlatformOverrides, ApproveMergeUpgradeOptions, AstroConfigOptions, AstroIntegrationSpec, AstroProjectOptions, AwsAccount, AwsCdkProjectOptions, AwsDeploymentTargetOptions, AwsLocalDeploymentConfig, AwsOrganization, AwsRegion, AwsTeardownWorkflowOptions, CiDeploymentConfig, ClassTypeOptions, ClaudeAutoModeConfig, ClaudeHookAction, ClaudeHookEntry, ClaudeHooksConfig, ClaudePermissionsConfig, ClaudeRuleTarget, ClaudeSandboxConfig, ClaudeSettingsConfig, CopilotHandoff, CursorHookAction, CursorHooksConfig, CursorSettingsConfig, DeployWorkflowOptions, DeploymentMetadata, FocusArea, FocusAreaMatch, FocusConfig, GitBranch, GitHubBoardMetadata, GitHubProjectMetadata, GitHubSprintMetadata, IDependencyResolver, LabelDefinition, LayoutEnforcement, LayoutViolation, McpServerConfig, McpTransport, MergeMethod, MonorepoLayoutRoot, MonorepoProjectOptions, OrganizationMetadata, PnpmWorkspaceOptions, PriorityRule, ProjectMetadataOptions, RemoteCacheOptions, RepositoryMetadata, ResetTaskOptions, ResolvedAgentPaths, ResolvedProjectMetadata, SlackMetadata, StarlightEditLink, StarlightLogo, StarlightProjectOptions, StarlightRole, StarlightSidebarItem, StarlightSingletonViolation, StarlightSocialLink, SyncLabelsOptions, TemplateResolveResult, TurboRepoOptions, TurboRepoTaskOptions, TypeScriptProjectOptions, VersionKey, VitestConfigOptions, VitestOptions };
4744
+ export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AgentConfig, AstroConfig, AstroOutput, AstroProject, AwsCdkProject, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, AwsTeardownWorkflow, BUILT_IN_BUNDLES, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, DEFAULT_AGENT_PATHS, DEFAULT_PRIORITY_LABELS, DEFAULT_STATUS_LABELS, DEFAULT_TEARDOWN_BRANCH_PATTERNS, DEFAULT_TYPE_LABELS, JsiiFaker, LAYOUT_ENFORCEMENT, LAYOUT_ROOT_BY_PROJECT_TYPE, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MINIMUM_RELEASE_AGE, MONOREPO_LAYOUT, MonorepoProject, PROD_DEPLOY_NAME, PnpmWorkspace, ProjectMetadata, REQUIREMENTS_WRITER_PATHS, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, ResetTask, STARLIGHT_ROLE, StarlightProject, TestRunner, TurboRepo, TurboRepoTask, TypeScriptConfig, TypeScriptProject, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, Vitest, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, addSyncLabelsWorkflow, awsCdkBundle, baseBundle, bcmWriterBundle, companyProfileBundle, formatLayoutViolation, formatStarlightSingletonViolation, getLatestEligibleVersion, githubWorkflowBundle, industryDiscoveryBundle, jestBundle, maintenanceAuditBundle, meetingAnalysisBundle, orchestratorBundle, peopleProfileBundle, pnpmBundle, prReviewBundle, projenBundle, renderCustomDocSectionBlock, renderCustomDocSections, renderFocusSection, renderMeetingTypesSection, renderPriorityRulesSection, renderSourceTierExamples, requirementsAnalystBundle, requirementsReviewerBundle, requirementsWriterBundle, researchPipelineBundle, resolveAgentPaths, resolveAstroProjectOutdir, resolveAwsCdkProjectOutdir, resolveModelAlias, resolveOutdirFromPackageName, resolveTemplateVariables, resolveTypeScriptProjectOutdir, slackBundle, softwareProfileBundle, turborepoBundle, typescriptBundle, validateMonorepoLayout, validateStarlightSingleton, vitestBundle };
4745
+ export type { AgentConfigOptions, AgentExpansionRules, AgentFeaturesConfig, AgentModel, AgentPathsConfig, AgentPlatform, AgentPlatformOverrides, AgentProcedure, AgentRule, AgentRuleBundle, AgentRuleScope, AgentSkill, AgentSubAgent, AgentSubAgentPlatformOverrides, ApproveMergeUpgradeOptions, AstroConfigOptions, AstroIntegrationSpec, AstroProjectOptions, AwsAccount, AwsCdkProjectOptions, AwsDeploymentTargetOptions, AwsLocalDeploymentConfig, AwsOrganization, AwsRegion, AwsTeardownWorkflowOptions, CiDeploymentConfig, ClassTypeOptions, ClaudeAutoModeConfig, ClaudeHookAction, ClaudeHookEntry, ClaudeHooksConfig, ClaudePermissionsConfig, ClaudeRuleTarget, ClaudeSandboxConfig, ClaudeSettingsConfig, CopilotHandoff, CursorHookAction, CursorHooksConfig, CursorSettingsConfig, CustomDocSection, DeployWorkflowOptions, DeploymentMetadata, FocusArea, FocusAreaMatch, FocusConfig, GitBranch, GitHubBoardMetadata, GitHubProjectMetadata, GitHubSprintMetadata, IDependencyResolver, LabelDefinition, LayoutEnforcement, LayoutViolation, McpServerConfig, McpTransport, MeetingArea, MeetingScope, MeetingType, MeetingsConfig, MergeMethod, MonorepoLayoutRoot, MonorepoProjectOptions, OrganizationMetadata, PnpmWorkspaceOptions, PriorityRule, ProjectMetadataOptions, RemoteCacheOptions, RepositoryMetadata, ResetTaskOptions, ResolvedAgentPaths, ResolvedProjectMetadata, SlackMetadata, SourceTierExamples, StarlightEditLink, StarlightLogo, StarlightProjectOptions, StarlightRole, StarlightSidebarItem, StarlightSingletonViolation, StarlightSocialLink, SyncLabelsOptions, TemplateResolveResult, TurboRepoOptions, TurboRepoTaskOptions, TypeScriptProjectOptions, VersionKey, VitestConfigOptions, VitestOptions };