@codedrifters/configulator 0.0.295 → 0.0.297

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
@@ -3477,6 +3477,111 @@ declare function buildBaseBundle(paths?: ResolvedAgentPaths): AgentRuleBundle;
3477
3477
  */
3478
3478
  declare const baseBundle: AgentRuleBundle;
3479
3479
 
3480
+ /**
3481
+ * Hand-maintained registry mapping every bundle name to the cross-bundle
3482
+ * surface it owns: GitHub `type:*` labels, phase-label prefixes,
3483
+ * scheduled-task IDs, whether it emits Starlight docs, and whether it
3484
+ * declares any downstream issue kinds (i.e. files `gh issue create`
3485
+ * recipes via the issue-templates convention).
3486
+ *
3487
+ * The registry is consulted by renderers in other bundles whenever
3488
+ * `AgentConfigOptions.excludeBundles` is non-empty so cross-bundle
3489
+ * references to an excluded bundle's agents, type labels, phase labels,
3490
+ * or scheduled tasks disappear from the generated output.
3491
+ *
3492
+ * The map is **hand-maintained** rather than derived from each bundle's
3493
+ * runtime shape. The defining surfaces (the funnel-tier table in
3494
+ * `tiers.ts`, the per-phase scope-gate overrides in `scope-gate.ts`, and
3495
+ * the scheduled-tasks registry in `scheduled-tasks.ts`) live as flat
3496
+ * data tables that already get walked by their renderers — declaring the
3497
+ * ownership map alongside them keeps the relationship explicit and
3498
+ * readable without forcing every bundle to grow an "ownership"
3499
+ * descriptor.
3500
+ *
3501
+ * Bundles that ship no cross-bundle surface (e.g. `slack`, `typescript`,
3502
+ * `pnpm`, `vitest`, `jest`, `aws-cdk`, `projen`, `turborepo`,
3503
+ * `upstream-configulator-docs`) deliberately do not appear here —
3504
+ * excluding them is already a no-op since they own nothing other
3505
+ * bundles reference.
3506
+ */
3507
+ interface BundleOwnership {
3508
+ /**
3509
+ * GitHub `type:*` label values (without the `type:` prefix) the
3510
+ * bundle owns. The funnel-tier table in `tiers.ts` and any rendered
3511
+ * tables that group agents by `type:*` label consult this list.
3512
+ */
3513
+ readonly typeLabels: ReadonlyArray<string>;
3514
+ /**
3515
+ * Phase-label prefixes (with trailing colon, e.g. `"company:"`) the
3516
+ * bundle owns. Used by the scope-gate per-phase override table and
3517
+ * any other renderer that groups by phase label. An entry without a
3518
+ * trailing colon (e.g. `"req:write"`) is treated as an exact
3519
+ * phase-label match instead of a prefix.
3520
+ */
3521
+ readonly phaseLabelPrefixes: ReadonlyArray<string>;
3522
+ /**
3523
+ * `taskId` values from `DEFAULT_SCHEDULED_TASK_ENTRIES` that target
3524
+ * this bundle's sub-agent. The scheduled-tasks registry filter in
3525
+ * `agent-config.ts` consults this list when pruning default entries
3526
+ * for an excluded bundle.
3527
+ */
3528
+ readonly scheduledTaskIds: ReadonlyArray<string>;
3529
+ /**
3530
+ * Whether this bundle emits Starlight content roots — i.e. whether
3531
+ * any of its workflows write files under `docs/src/content/docs/`
3532
+ * (or the configured docs root). Drives the auto-suppression of the
3533
+ * `section-index-pages` rule when no docs-emitting bundle is active.
3534
+ */
3535
+ readonly emitsDocs: boolean;
3536
+ /**
3537
+ * Whether this bundle dispatches downstream issues (i.e. its
3538
+ * workflows file `gh issue create` recipes). Drives the
3539
+ * auto-suppression of the `issue-templates-convention` rule when no
3540
+ * such bundle is active.
3541
+ */
3542
+ readonly downstreamIssueKinds: boolean;
3543
+ }
3544
+ /**
3545
+ * Canonical ownership map. Only bundles that own at least one
3546
+ * cross-bundle surface appear here.
3547
+ */
3548
+ declare const BUNDLE_OWNERSHIP: Readonly<Record<string, BundleOwnership>>;
3549
+ /**
3550
+ * Return `true` when `typeLabel` (without the leading `type:` prefix)
3551
+ * is owned by any bundle in `excludedBundles`. Used by tier-table and
3552
+ * scheduled-task renderers to drop rows whose owning bundle has been
3553
+ * excluded.
3554
+ */
3555
+ declare function isTypeLabelOwnedByExcluded(typeLabel: string, excludedBundles: ReadonlyArray<string>): boolean;
3556
+ /**
3557
+ * Return `true` when `phaseLabel` is owned by any bundle in
3558
+ * `excludedBundles`. Matches against both prefix entries (with
3559
+ * trailing colon, e.g. `"company:"`) and exact-match entries (without
3560
+ * trailing colon, e.g. `"req:write"`). Used by the scope-gate
3561
+ * per-phase-override table renderer.
3562
+ */
3563
+ declare function isPhaseLabelOwnedByExcluded(phaseLabel: string, excludedBundles: ReadonlyArray<string>): boolean;
3564
+ /**
3565
+ * Return `true` when the scheduled-task `taskId` is owned by any
3566
+ * bundle in `excludedBundles`. Used by the scheduled-tasks registry
3567
+ * filter to drop default entries pointing at an excluded bundle.
3568
+ */
3569
+ declare function isScheduledTaskOwnedByExcluded(taskId: string, excludedBundles: ReadonlyArray<string>): boolean;
3570
+ /**
3571
+ * Return `true` when at least one docs-emitting bundle is **not**
3572
+ * excluded. Used by the `section-index-pages` rule auto-suppression
3573
+ * gate — when this returns `false`, the rule is dropped from the
3574
+ * rendered rule map entirely.
3575
+ */
3576
+ declare function hasAnyDocsEmittingBundle(excludedBundles: ReadonlyArray<string>): boolean;
3577
+ /**
3578
+ * Return `true` when at least one downstream-issue-kind bundle is
3579
+ * **not** excluded. Used by the `issue-templates-convention`
3580
+ * auto-suppression gate — when this returns `false`, the rule body
3581
+ * renders the disabled-stub variant.
3582
+ */
3583
+ declare function hasAnyDownstreamIssueKindBundle(excludedBundles: ReadonlyArray<string>): boolean;
3584
+
3480
3585
  /**
3481
3586
  * Build the bcm-writer bundle with the supplied resolved paths.
3482
3587
  *
@@ -4026,7 +4131,7 @@ interface ResolvedScheduledTasks {
4026
4131
  * duplicate taskIds in a single supplied list) throw a descriptive
4027
4132
  * `Error` — callers should not need to guard against it at runtime.
4028
4133
  */
4029
- declare function resolveScheduledTasks(config?: ScheduledTasksConfig): ResolvedScheduledTasks;
4134
+ declare function resolveScheduledTasks(config?: ScheduledTasksConfig, excludeBundles?: ReadonlyArray<string>): ResolvedScheduledTasks;
4030
4135
  /**
4031
4136
  * Synth-time validation hook. Throws a descriptive `Error` when the
4032
4137
  * supplied `ScheduledTasksConfig` is malformed. Called by
@@ -4045,7 +4150,7 @@ declare function resolveScheduledTasks(config?: ScheduledTasksConfig): ResolvedS
4045
4150
  * plain string.
4046
4151
  * - Duplicate `taskId` values within the supplied `tasks` list.
4047
4152
  */
4048
- declare function validateScheduledTasksConfig(config?: ScheduledTasksConfig): ResolvedScheduledTasks;
4153
+ declare function validateScheduledTasksConfig(config?: ScheduledTasksConfig, excludeBundles?: ReadonlyArray<string>): ResolvedScheduledTasks;
4049
4154
  /**
4050
4155
  * Render the markdown subsection appended to the
4051
4156
  * `orchestrator-conventions` rule. Always returns a non-empty string —
@@ -4284,8 +4389,13 @@ declare function classifyIssueScope(body: string, gate: ResolvedScopeGate, label
4284
4389
  * `orchestrator-conventions` rule. Always returns a non-empty string
4285
4390
  * so the orchestrator rule documents the scope gate even when the
4286
4391
  * consumer relies on the defaults.
4392
+ *
4393
+ * When `excludeBundles` is non-empty, per-phase override rows whose
4394
+ * phase label is owned by an excluded bundle are dropped from the
4395
+ * **Per-phase-label thresholds** sub-table. The sub-section as a
4396
+ * whole is hidden when no rows survive.
4287
4397
  */
4288
- declare function renderScopeGateSection(gate: ResolvedScopeGate): string;
4398
+ declare function renderScopeGateSection(gate: ResolvedScopeGate, excludeBundles?: ReadonlyArray<string>): string;
4289
4399
  /**
4290
4400
  * Render a shell-script snippet embedded in `check-blocked.sh`. The
4291
4401
  * snippet declares a `scope_of()` function that reads an issue body
@@ -4402,8 +4512,15 @@ declare function validateAgentTierConfig(config?: AgentTierConfig): ReadonlyArra
4402
4512
  * `orchestrator-conventions` rule. Always returns a non-empty string
4403
4513
  * because the default tier list is non-empty — the orchestrator
4404
4514
  * always documents its sort order.
4515
+ *
4516
+ * When `excludeBundles` is non-empty, rows whose `type:*` label is
4517
+ * owned by an excluded bundle are dropped before rendering. Tiers
4518
+ * that end up with no surviving rows render an empty `_(none
4519
+ * registered)_` cell for consistency with the existing render — the
4520
+ * tier itself stays in the table so the dispatch ordering is still
4521
+ * documented end-to-end.
4405
4522
  */
4406
- declare function renderAgentTierSection(tiers: ReadonlyArray<ResolvedAgentTier>): string;
4523
+ declare function renderAgentTierSection(tiers: ReadonlyArray<ResolvedAgentTier>, excludeBundles?: ReadonlyArray<string>): string;
4407
4524
  /**
4408
4525
  * Render a shell-script snippet that the `check-blocked.sh` procedure
4409
4526
  * uses to look up a tier for a given `type:*` label. Emitted as a
@@ -4545,7 +4662,7 @@ declare function buildUnblockDependentsProcedure(unblockDependents?: ResolvedUnb
4545
4662
  * Every optional parameter defaults to the bundle's built-in default
4546
4663
  * when the caller omits it.
4547
4664
  */
4548
- declare function buildOrchestratorConventionsContent(tiers: ReadonlyArray<ResolvedAgentTier>, scopeGate?: ResolvedScopeGate, runRatio?: ResolvedRunRatio, scheduledTasks?: ResolvedScheduledTasks, unblockDependents?: ResolvedUnblockDependents): string;
4665
+ declare function buildOrchestratorConventionsContent(tiers: ReadonlyArray<ResolvedAgentTier>, scopeGate?: ResolvedScopeGate, runRatio?: ResolvedRunRatio, scheduledTasks?: ResolvedScheduledTasks, unblockDependents?: ResolvedUnblockDependents, excludeBundles?: ReadonlyArray<string>): string;
4549
4666
  /**
4550
4667
  * Resolve the orchestrator-conventions rule content and the
4551
4668
  * check-blocked.sh procedure content for a given (possibly absent)
@@ -4557,7 +4674,7 @@ declare function buildOrchestratorConventionsContent(tiers: ReadonlyArray<Resolv
4557
4674
  * can splice them into their rule map and procedure map in a single
4558
4675
  * pass.
4559
4676
  */
4560
- declare function resolveOrchestratorAssets(tierConfig?: AgentTierConfig, scopeGateConfig?: ScopeGateConfig, runRatioConfig?: RunRatioConfig, scheduledTasksConfig?: ScheduledTasksConfig, unblockDependentsConfig?: UnblockDependentsConfig): {
4677
+ declare function resolveOrchestratorAssets(tierConfig?: AgentTierConfig, scopeGateConfig?: ScopeGateConfig, runRatioConfig?: RunRatioConfig, scheduledTasksConfig?: ScheduledTasksConfig, unblockDependentsConfig?: UnblockDependentsConfig, excludeBundles?: ReadonlyArray<string>): {
4561
4678
  readonly tiers: ReadonlyArray<ResolvedAgentTier>;
4562
4679
  readonly scopeGate: ResolvedScopeGate;
4563
4680
  readonly runRatio: ResolvedRunRatio;
@@ -4745,7 +4862,7 @@ declare function validateIssueTemplatesConfig(config?: IssueTemplatesConfig): Re
4745
4862
  *
4746
4863
  * When the convention is disabled, the rule renders a short stub.
4747
4864
  */
4748
- declare function renderIssueTemplatesRuleContent(it: ResolvedIssueTemplates): string;
4865
+ declare function renderIssueTemplatesRuleContent(it: ResolvedIssueTemplates, hasDownstreamBundles?: boolean): string;
4749
4866
  /**
4750
4867
  * Render the short issue-templates hook section injected into a
4751
4868
  * phased-agent bundle's workflow rule. The section cites the full
@@ -7766,11 +7883,11 @@ declare const VERSION: {
7766
7883
  * Version of `pnpm/action-setup` to use in GitHub workflows.
7767
7884
  * Tracks the version projen currently emits (see node_modules/projen/lib/javascript/node-project.js).
7768
7885
  */
7769
- readonly PNPM_ACTION_SETUP_VERSION: "v5";
7886
+ readonly PNPM_ACTION_SETUP_VERSION: "v6.0.5";
7770
7887
  /**
7771
7888
  * Version of PNPM to use in workflows at github actions.
7772
7889
  */
7773
- readonly PNPM_VERSION: "10.33.3";
7890
+ readonly PNPM_VERSION: "11.0.8";
7774
7891
  /**
7775
7892
  * Version of Projen to use.
7776
7893
  */
@@ -7925,6 +8042,33 @@ interface PnpmWorkspaceOptions {
7925
8042
  * See: https://pnpm.io/settings#minimumreleaseageexclude
7926
8043
  */
7927
8044
  readonly minimumReleaseAgeExclude?: Array<string>;
8045
+ /**
8046
+ * A map of package names to booleans controlling whether each package may
8047
+ * execute "preinstall", "install", and/or "postinstall" scripts during
8048
+ * installation. Set a package's value to `true` to allow lifecycle scripts;
8049
+ * set it to `false` to silently block them without a warning.
8050
+ *
8051
+ * pnpm 11 replaced the legacy `onlyBuiltDependencies` (allow-list) and
8052
+ * `ignoredBuiltDependencies` (deny-list) settings with this single
8053
+ * `allowBuilds` map. Configulator translates the deprecated input fields
8054
+ * automatically: entries from `onlyBuiltDependencies` map to `true` and
8055
+ * entries from `ignoredBuiltDependencies` map to `false`. When a key
8056
+ * appears in both `allowBuilds` and one of the deprecated fields, the
8057
+ * explicit `allowBuilds` value wins.
8058
+ *
8059
+ * For cross-version compatibility, configulator emits BOTH the new
8060
+ * `allowBuilds` map AND the legacy `onlyBuiltDependencies` /
8061
+ * `ignoredBuiltDependencies` arrays in the generated YAML so consumers
8062
+ * on either pnpm 10 or pnpm 11 see correct lifecycle-script behavior
8063
+ * without changing their input.
8064
+ *
8065
+ * See: https://pnpm.io/settings#allowbuilds
8066
+ *
8067
+ * @default none (empty object)
8068
+ */
8069
+ readonly allowBuilds?: {
8070
+ [packageName: string]: boolean;
8071
+ };
7928
8072
  /**
7929
8073
  * A list of package names that are allowed to execute "preinstall",
7930
8074
  * "install", and/or "postinstall" scripts during installation. Only the
@@ -7938,6 +8082,12 @@ interface PnpmWorkspaceOptions {
7938
8082
  *
7939
8083
  * See: https://pnpm.io/settings#onlybuiltdependencies
7940
8084
  *
8085
+ * @deprecated Deprecated in pnpm 11; configulator emits both legacy and
8086
+ * new keys for cross-version compatibility — pnpm 10 honors
8087
+ * the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
8088
+ * `allowBuilds` as the input field going forward; entries
8089
+ * supplied here translate to `allowBuilds[<package>] = true`.
8090
+ *
7941
8091
  * @default none (empty array)
7942
8092
  */
7943
8093
  readonly onlyBuiltDependencies?: Array<string>;
@@ -7951,6 +8101,12 @@ interface PnpmWorkspaceOptions {
7951
8101
  *
7952
8102
  * https://pnpm.io/settings#ignoredbuiltdependencies
7953
8103
  *
8104
+ * @deprecated Deprecated in pnpm 11; configulator emits both legacy and
8105
+ * new keys for cross-version compatibility — pnpm 10 honors
8106
+ * the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
8107
+ * `allowBuilds` as the input field going forward; entries
8108
+ * supplied here translate to `allowBuilds[<package>] = false`.
8109
+ *
7954
8110
  * @default none (empty array)
7955
8111
  */
7956
8112
  readonly ignoredBuiltDependencies?: Array<string>;
@@ -8061,6 +8217,21 @@ declare class PnpmWorkspace extends Component {
8061
8217
  * See: https://pnpm.io/settings#minimumreleaseageexclude
8062
8218
  */
8063
8219
  minimumReleaseAgeExclude: Array<string>;
8220
+ /**
8221
+ * A map of package names to booleans controlling whether each package may
8222
+ * execute lifecycle scripts during install. `true` allows the scripts;
8223
+ * `false` silently blocks them.
8224
+ *
8225
+ * pnpm 11+ replaced `onlyBuiltDependencies` and `ignoredBuiltDependencies`
8226
+ * with this single map. Configulator translates the deprecated input
8227
+ * fields into `allowBuilds` automatically and emits both legacy and new
8228
+ * keys in the generated YAML for pnpm 10/11 cross-version compatibility.
8229
+ *
8230
+ * See: https://pnpm.io/settings#allowbuilds
8231
+ */
8232
+ allowBuilds: {
8233
+ [packageName: string]: boolean;
8234
+ };
8064
8235
  /**
8065
8236
  * A list of package names that are allowed to execute "preinstall",
8066
8237
  * "install", and/or "postinstall" scripts during installation. Only the
@@ -8073,6 +8244,12 @@ declare class PnpmWorkspace extends Component {
8073
8244
  * versions of the package may run lifecycle scripts:
8074
8245
  *
8075
8246
  * See: https://pnpm.io/settings#onlybuiltdependencies
8247
+ *
8248
+ * @deprecated Deprecated in pnpm 11; configulator emits both legacy and
8249
+ * new keys for cross-version compatibility — pnpm 10 honors
8250
+ * the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
8251
+ * `allowBuilds` as the input field going forward; entries
8252
+ * supplied here translate to `allowBuilds[<package>] = true`.
8076
8253
  */
8077
8254
  onlyBuiltDependencies: Array<string>;
8078
8255
  /**
@@ -8084,6 +8261,12 @@ declare class PnpmWorkspace extends Component {
8084
8261
  * lifecycle scripts are not needed.
8085
8262
  *
8086
8263
  * https://pnpm.io/settings#ignoredbuiltdependencies
8264
+ *
8265
+ * @deprecated Deprecated in pnpm 11; configulator emits both legacy and
8266
+ * new keys for cross-version compatibility — pnpm 10 honors
8267
+ * the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
8268
+ * `allowBuilds` as the input field going forward; entries
8269
+ * supplied here translate to `allowBuilds[<package>] = false`.
8087
8270
  */
8088
8271
  ignoredBuiltDependencies: Array<string>;
8089
8272
  /**
@@ -9350,6 +9533,25 @@ declare class AwsCdkProject extends awscdk.AwsCdkTypeScriptApp {
9350
9533
  addDeploymentTarget(options: AwsDeploymentTargetOptions): AwsDeploymentTarget;
9351
9534
  }
9352
9535
 
9536
+ /**
9537
+ * Emits a `.nvmrc` file at the project root containing the Node.js
9538
+ * version pinned in {@link VERSION.NODE_WORKFLOWS}.
9539
+ *
9540
+ * The file gives `nvm`, `fnm`, `volta`, and IDE plugins a single
9541
+ * source of truth for the Node version local development should use,
9542
+ * matching the version every CI workflow installs via
9543
+ * `actions/setup-node`. Without it, devs on hosts whose default Node
9544
+ * is older than the floor required by tooling (Astro 6, Starlight,
9545
+ * pnpm 11) silently break after a regen.
9546
+ *
9547
+ * Projen has no built-in `.nvmrc` knob — the closest input is
9548
+ * `workflowNodeVersion`, which only drives CI. This component closes
9549
+ * the local-dev gap.
9550
+ */
9551
+ declare class Nvmrc extends Component {
9552
+ constructor(project: Project);
9553
+ }
9554
+
9353
9555
  /**
9354
9556
  * Provides structured project metadata consumed by AgentConfig, skills,
9355
9557
  * and other configulator features at synthesis time.
@@ -9611,5 +9813,81 @@ declare const COMPLETE_JOB_ID = "complete";
9611
9813
  */
9612
9814
  declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
9613
9815
 
9614
- export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AGENT_TIER_ROLES, AGENT_TIER_VALUES, AUDIT_CATEGORY_ORDER, AgentConfig, ApiExtractor, AstroConfig, AstroOutput, AstroProject, AuditCategory, AuditMode, AuditSeverity, AwsCdkProject, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, AwsTeardownWorkflow, BUILT_IN_BUNDLES, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, DEFAULT_AC_THRESHOLDS, DEFAULT_AGENT_PATHS, DEFAULT_AGENT_TIERS, DEFAULT_API_EXTRACTOR_CONFIG_FILE, DEFAULT_API_EXTRACTOR_ENTRY_POINT, DEFAULT_API_EXTRACTOR_REPORT_FILENAME, DEFAULT_API_EXTRACTOR_REPORT_FOLDER, DEFAULT_AUDIT_REPORT_DIR, DEFAULT_BUNDLE_OVERRIDES, DEFAULT_DECOMPOSITION_TEMPLATE, DEFAULT_DISPATCH_MODEL, DEFAULT_DISPATCH_TO_HOUSEKEEPING_RATIO, DEFAULT_HOUSEKEEPING_MODEL, DEFAULT_ISSUE_PRIORITY, DEFAULT_ISSUE_STATUS, DEFAULT_ISSUE_TEMPLATES_BUNDLE_PATH_PATTERNS, DEFAULT_ISSUE_TEMPLATES_EMIT_CHECKER, DEFAULT_ISSUE_TEMPLATES_EMIT_STARTER, DEFAULT_ISSUE_TEMPLATES_ENABLED, DEFAULT_ISSUE_TEMPLATES_PATH, DEFAULT_ISSUE_TEMPLATES_REQUIRE_REFERENCE, DEFAULT_OFF_PEAK_CRON_EXAMPLE, DEFAULT_PARTIAL_UNBLOCK_COMMENT_TEMPLATE, DEFAULT_PRIORITY_LABELS, DEFAULT_PRODUCT_CONTEXT_PATH, DEFAULT_PROGRESS_FILES_ENABLED, DEFAULT_PROGRESS_FILES_FILENAME_PATTERN, DEFAULT_PROGRESS_FILES_FORMAT, DEFAULT_PROGRESS_FILES_STALE_AFTER_HOURS, DEFAULT_PROGRESS_FILES_STATE_DIR, DEFAULT_REQUIRE_PRODUCT_CONTEXT, DEFAULT_RESOLVED_ISSUE_DEFAULTS, DEFAULT_SAMPLE_COMPILER_OPTIONS, DEFAULT_SCHEDULED_TASKS_ROOT, DEFAULT_SCHEDULED_TASK_ENTRIES, DEFAULT_SHARED_EDITING_CONFLICT_STRATEGY, DEFAULT_SHARED_EDITING_EMIT_HELPER, DEFAULT_SHARED_EDITING_ENABLED, DEFAULT_SHARED_EDITING_VERIFY_COMMIT, DEFAULT_SHARED_INDEX_PATHS, DEFAULT_SKILL_EVALS_EMIT_RUNNER, DEFAULT_SKILL_EVALS_ENABLED, DEFAULT_SKILL_EVALS_SKILLS_ROOT, DEFAULT_SOURCES_THRESHOLDS, DEFAULT_STATE_FILE_PATH, DEFAULT_STATUS_LABELS, DEFAULT_TEARDOWN_BRANCH_PATTERNS, DEFAULT_TYPE_LABELS, DEFAULT_UNBLOCK_COMMENT_TEMPLATE, DEFAULT_UNBLOCK_DEPENDENTS_ENABLED, DEFAULT_UPSTREAM_CONFIGULATOR_ENABLED, DOCS_SYNC_AUDIT_SCHEMA_VERSION, JsiiFaker, LAYOUT_ENFORCEMENT, LAYOUT_ROOT_BY_PROJECT_TYPE, MAX_LABEL_DESCRIPTION_LENGTH, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MINIMUM_RELEASE_AGE, MONOREPO_LAYOUT, MonorepoProject, PROD_DEPLOY_NAME, PROGRESS_FILES_FORMAT_VALUES, PnpmWorkspace, ProjectMetadata, REQUIREMENTS_WRITER_PATHS, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, ResetTask, SCHEDULED_TASK_MODEL_VALUES, SCOPE_CLASS_VALUES, SHARED_EDITING_CONFLICT_STRATEGY_VALUES, STARLIGHT_ROLE, SampleLang, StarlightProject, TestRunner, TsDocCoverageKind, TurboRepo, TurboRepoTask, TypeScriptConfig, TypeScriptProject, UNKNOWN_TYPE_FALLBACK_TIER, VALID_PRIORITY_VALUES, VALID_STATUS_VALUES, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, Vitest, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, addSyncLabelsWorkflow, agendaBundle, analyzeTsDocCoverage, auditReportJsonSchema, awsCdkBundle, baseBundle, bcmWriterBundle, buildBaseBundle, buildBcmWriterBundle, buildBuiltInBundles, buildBusinessModelsBundle, buildCheckBlockedProcedure, buildCompanyProfileBundle, buildCustomerProfileBundle, buildDocsSyncBundle, buildIndustryDiscoveryBundle, buildMaintenanceAuditBundle, buildOrchestratorConventionsContent, buildPeopleProfileBundle, buildRegulatoryResearchBundle, buildReport, buildRequirementsAnalystBundle, buildRequirementsReviewerBundle, buildRequirementsWriterBundle, buildResearchPipelineBundle, buildSoftwareProfileBundle, buildStandardsResearchBundle, buildUnblockDependentsProcedure, businessModelsBundle, checkDocSamplesProcedure, checkLinksProcedure, classifyIssueScope, classifyRun, companyProfileBundle, compileFencedSamples, createApiDiffCheck, createReferenceMismatchCheck, createTsdocCoverageCheck, customerProfileBundle, diffApiRollups, docsSyncBundle, emptyCategoryBuckets, extractApiProcedure, extractDocReferences, extractFencedSamples, formatLayoutViolation, formatStarlightSingletonViolation, getLatestEligibleVersion, githubWorkflowBundle, industryDiscoveryBundle, jestBundle, labelsForPhase, maintenanceAuditBundle, meetingAnalysisBundle, orchestratorBundle, parseApiRollup, peopleProfileBundle, persistAuditReport, pnpmBundle, prReviewBundle, projenBundle, referenceRecordToFinding, regulatoryResearchBundle, renderAgentTierCaseStatement, renderAgentTierSection, renderCheckDocSamplesProcedure, renderCheckLinksProcedure, renderCustomDocSectionBlock, renderCustomDocSections, renderExtractApiProcedure, renderFocusSection, renderIssueTemplatesBundleHook, renderIssueTemplatesCheckerScript, renderIssueTemplatesRuleContent, renderIssueTemplatesStarterPage, renderMeetingTypesSection, renderPriorityRulesSection, renderProgressFileName, renderProgressFilePath, renderProgressFilesBundleHook, renderProgressFilesRuleContent, renderRunRatioSection, renderRunRatioShellHelpers, renderScheduledTaskSkillFile, renderScheduledTasksSection, renderScopeGateSection, renderScopeGateShellHelpers, renderSharedEditingBundleHook, renderSharedEditingHelperScript, renderSharedEditingRuleContent, renderSkillEvalsBundleHook, renderSkillEvalsRuleContent, renderSkillEvalsRunnerScript, renderSourceTierExamples, renderStubIndexConventionRuleContent, renderUnblockDependentsScript, renderUnblockDependentsSection, requirementsAnalystBundle, requirementsReviewerBundle, requirementsWriterBundle, researchPipelineBundle, resolveAgentPaths, resolveAgentTiers, resolveAstroProjectOutdir, resolveAwsCdkProjectOutdir, resolveIssueDefaults, resolveIssueTemplates, resolveModelAlias, resolveOrchestratorAssets, resolveOutdirFromPackageName, resolveOverrideForLabels, resolveProgressFiles, resolveRunRatio, resolveScheduledTasks, resolveScopeGate, resolveSharedEditing, resolveSkillEvals, resolveTemplateVariables, resolveTypeScriptProjectOutdir, resolveUnblockDependents, runScan, slackBundle, softwareProfileBundle, standardsResearchBundle, tsdocRecordToFindings, turborepoBundle, typescriptBundle, upstreamConfigulatorDocsBundle, validateAgentTierConfig, validateIssueDefaultsConfig, validateIssueTemplatesConfig, validateMonorepoLayout, validateProgressFilesConfig, validateRunRatioConfig, validateScheduledTasksConfig, validateScopeGateConfig, validateSharedEditingConfig, validateSkillEvalsConfig, validateStarlightSingleton, validateUnblockDependentsConfig, vitestBundle };
9615
- export type { AgentConfigOptions, AgentExpansionRules, AgentFeaturesConfig, AgentModel, AgentPathsConfig, AgentPlatform, AgentPlatformOverrides, AgentProcedure, AgentRule, AgentRuleBundle, AgentRuleScope, AgentSkill, AgentSubAgent, AgentSubAgentPlatformOverrides, AgentTier, AgentTierConfig, AgentTierEntry, AnalyzeTsDocCoverageOptions, ApiDiffCheckOptions, ApiDiffFinding, ApiDiffResult, ApiExtractorOptions, ApiExtractorReportOptions, ApiSurfaceEntry, ApproveMergeUpgradeOptions, AstroConfigOptions, AstroIntegrationSpec, AstroProjectOptions, AuditCheckRunner, AuditCheckRunnerContext, AuditFinding, AuditFindingBase, AuditLocation, AuditReport, AwsAccount, AwsCdkProjectOptions, AwsDeploymentTargetOptions, AwsLocalDeploymentConfig, AwsOrganization, AwsRegion, AwsTeardownWorkflowOptions, CiDeploymentConfig, ClassTypeOptions, ClaudeAutoModeConfig, ClaudeHookAction, ClaudeHookEntry, ClaudeHooksConfig, ClaudePermissionsConfig, ClaudeRuleTarget, ClaudeSandboxConfig, ClaudeSettingsConfig, CompileFencedSamplesOptions, CopilotHandoff, CursorHookAction, CursorHooksConfig, CursorSettingsConfig, CustomDocSection, DeployWorkflowOptions, DeploymentMetadata, DocReferenceRecord, EffectiveScopeThresholds, ExtractDocReferencesOptions, ExtractFencedSamplesOptions, FencedSampleRecord, FocusArea, FocusAreaMatch, FocusConfig, GitBranch, GitHubBoardMetadata, GitHubProjectMetadata, GitHubSprintMetadata, IDependencyResolver, IssueDefaultsConfig, IssueDefaultsOverride, IssueDefaultsPriority, IssueDefaultsStatus, IssueTemplatesConfig, LabelDefinition, LayoutEnforcement, LayoutViolation, LinkFailureFinding, McpServerConfig, McpTransport, MeetingArea, MeetingScope, MeetingType, MeetingTypeKind, MeetingsConfig, MergeMethod, MonorepoLayoutRoot, MonorepoProjectOptions, OrganizationMetadata, PnpmWorkspaceOptions, PriorityRule, ProgressFilesConfig, ProjectMetadataOptions, ReferenceMismatchCheckOptions, ReferenceMismatchFinding, RemoteCacheOptions, RepositoryMetadata, ResetTaskOptions, ResolvedAgentPaths, ResolvedAgentTier, ResolvedIssueDefaults, ResolvedIssueDefaultsEntry, ResolvedIssueTemplates, ResolvedProgressFiles, ResolvedProjectMetadata, ResolvedRunRatio, ResolvedScheduledTask, ResolvedScheduledTasks, ResolvedScopeGate, ResolvedScopeGateBundleOverride, ResolvedSharedEditing, ResolvedSkillEvals, ResolvedUnblockDependents, RunRatioConfig, RunScanOptions, RunScanResult, SampleCompilationFailure, SampleFailureFinding, ScheduledTaskEntry, ScheduledTaskModel, ScheduledTaskOverride, ScheduledTasksConfig, ScopeClass, ScopeGateBundleOverride, ScopeGateConfig, ScopeGateThresholds, SharedEditingConfig, SkillEvalsConfig, SlackMetadata, SourceTierExamples, StarlightEditLink, StarlightLogo, StarlightProjectOptions, StarlightRole, StarlightSidebarItem, StarlightSingletonViolation, StarlightSocialLink, SyncLabelsOptions, TemplateResolveResult, TsDocCoverageRecord, TsdocCoverageCheckOptions, TsdocCoverageFinding, TurboRepoOptions, TurboRepoTaskOptions, TypeScriptProjectOptions, UnblockDependentsConfig, UpstreamConfigulatorConfig, VersionKey, VitestConfigOptions, VitestOptions };
9816
+ /**
9817
+ * Rewrites every `pnpm/action-setup@vX` step `uses` field reachable from
9818
+ * a project's GitHub component (and its sub-projects) to the version
9819
+ * pinned in {@link VERSION.PNPM_ACTION_SETUP_VERSION}.
9820
+ *
9821
+ * Projen's NodeProject and JsiiProject both hardcode a `pnpm/action-setup`
9822
+ * pin in their generated build / release / upgrade workflows. When that
9823
+ * pin lags behind the version required by the pnpm release we run in CI
9824
+ * (e.g. v5 cannot install pnpm 11), the action installs the wrong pnpm
9825
+ * version and CI breaks. This helper post-patches every workflow owned
9826
+ * by `project.github` so the pin tracks our centralised constant.
9827
+ *
9828
+ * Two passes run in sequence:
9829
+ *
9830
+ * 1. **Eager step arrays.** Walks every {@link Component} on the
9831
+ * project (and on its sub-projects) for the well-known fields
9832
+ * enumerated in {@link STEP_ARRAY_FIELDS}. Projen's BuildWorkflow
9833
+ * and Release components hold their pnpm-setup steps in these
9834
+ * arrays before the workflow's lazy step closures resolve them.
9835
+ * 2. **Direct workflow jobs.** Walks every job step on every
9836
+ * `GithubWorkflow` for jobs whose steps are eagerly populated
9837
+ * (e.g. the upgrade workflow). Steps held inside lazy closures
9838
+ * are skipped — those are reached via pass 1.
9839
+ *
9840
+ * @param project The project whose GitHub workflows should be patched.
9841
+ */
9842
+ declare function pinPnpmActionSetup(project: Project): void;
9843
+
9844
+ /**
9845
+ * Rewrites every Node-version source reachable from a project's
9846
+ * GitHub component (and its sub-projects) to the version pinned in
9847
+ * {@link VERSION.NODE_WORKFLOWS}.
9848
+ *
9849
+ * Projen hardcodes `node-version: "lts/*"` in its release workflow
9850
+ * generator (via {@code Publisher.workflowNodeVersion}); configulator-
9851
+ * owned workflows already pass through {@link VERSION.NODE_WORKFLOWS}.
9852
+ * Without this patch, the two sources disagree (release workflows
9853
+ * install whatever Node lts/* resolves to; build / upgrade workflows
9854
+ * install Node 24). This helper post-patches every Node-version
9855
+ * source so a single source of truth — the centralised
9856
+ * {@link VERSION.NODE_WORKFLOWS} constant — drives every workflow
9857
+ * this repo and its consumers generate.
9858
+ *
9859
+ * Three passes run in sequence:
9860
+ *
9861
+ * 1. **Component Node-version fields.** Walks every {@link Component}
9862
+ * on the project (and on its sub-projects) and rewrites the
9863
+ * well-known fields enumerated in {@link NODE_VERSION_FIELDS} —
9864
+ * notably {@code Publisher.workflowNodeVersion}, which projen
9865
+ * renders into {@code tools.node.version} on the publish job
9866
+ * (and ultimately into the synthesized
9867
+ * `actions/setup-node` step).
9868
+ * 2. **Component step arrays.** Walks every {@link Component} on the
9869
+ * project (and on its sub-projects) for the well-known step-array
9870
+ * fields enumerated in {@link STEP_ARRAY_FIELDS}. Projen's
9871
+ * BuildWorkflow and Release components hold their pre/post-build
9872
+ * steps in these arrays before the workflow's lazy step closures
9873
+ * resolve them.
9874
+ * 3. **Direct workflow jobs.** Walks every job on every
9875
+ * `GithubWorkflow`. For each job:
9876
+ * - If `tools.node.version` is set (the lazy `setupTools` path
9877
+ * that synthesises the setup-node step at render time),
9878
+ * rewrite it.
9879
+ * - If `steps` is already an array (i.e. not a lazy closure),
9880
+ * patch any `actions/setup-node` step in place.
9881
+ *
9882
+ * The step-level patch only mutates `with["node-version"]`. Other
9883
+ * fields on `with` (`cache`, `cache-dependency-path`,
9884
+ * `registry-url`, `package-manager-cache`, etc.) are preserved
9885
+ * untouched. The step's `uses` field is also left alone — this
9886
+ * helper pins the input, not the action version pin.
9887
+ *
9888
+ * @param project The project whose GitHub workflows should be patched.
9889
+ */
9890
+ declare function pinSetupNodeVersion(project: Project): void;
9891
+
9892
+ export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AGENT_TIER_ROLES, AGENT_TIER_VALUES, AUDIT_CATEGORY_ORDER, AgentConfig, ApiExtractor, AstroConfig, AstroOutput, AstroProject, AuditCategory, AuditMode, AuditSeverity, AwsCdkProject, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, AwsTeardownWorkflow, BUILT_IN_BUNDLES, BUNDLE_OWNERSHIP, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, DEFAULT_AC_THRESHOLDS, DEFAULT_AGENT_PATHS, DEFAULT_AGENT_TIERS, DEFAULT_API_EXTRACTOR_CONFIG_FILE, DEFAULT_API_EXTRACTOR_ENTRY_POINT, DEFAULT_API_EXTRACTOR_REPORT_FILENAME, DEFAULT_API_EXTRACTOR_REPORT_FOLDER, DEFAULT_AUDIT_REPORT_DIR, DEFAULT_BUNDLE_OVERRIDES, DEFAULT_DECOMPOSITION_TEMPLATE, DEFAULT_DISPATCH_MODEL, DEFAULT_DISPATCH_TO_HOUSEKEEPING_RATIO, DEFAULT_HOUSEKEEPING_MODEL, DEFAULT_ISSUE_PRIORITY, DEFAULT_ISSUE_STATUS, DEFAULT_ISSUE_TEMPLATES_BUNDLE_PATH_PATTERNS, DEFAULT_ISSUE_TEMPLATES_EMIT_CHECKER, DEFAULT_ISSUE_TEMPLATES_EMIT_STARTER, DEFAULT_ISSUE_TEMPLATES_ENABLED, DEFAULT_ISSUE_TEMPLATES_PATH, DEFAULT_ISSUE_TEMPLATES_REQUIRE_REFERENCE, DEFAULT_OFF_PEAK_CRON_EXAMPLE, DEFAULT_PARTIAL_UNBLOCK_COMMENT_TEMPLATE, DEFAULT_PRIORITY_LABELS, DEFAULT_PRODUCT_CONTEXT_PATH, DEFAULT_PROGRESS_FILES_ENABLED, DEFAULT_PROGRESS_FILES_FILENAME_PATTERN, DEFAULT_PROGRESS_FILES_FORMAT, DEFAULT_PROGRESS_FILES_STALE_AFTER_HOURS, DEFAULT_PROGRESS_FILES_STATE_DIR, DEFAULT_REQUIRE_PRODUCT_CONTEXT, DEFAULT_RESOLVED_ISSUE_DEFAULTS, DEFAULT_SAMPLE_COMPILER_OPTIONS, DEFAULT_SCHEDULED_TASKS_ROOT, DEFAULT_SCHEDULED_TASK_ENTRIES, DEFAULT_SHARED_EDITING_CONFLICT_STRATEGY, DEFAULT_SHARED_EDITING_EMIT_HELPER, DEFAULT_SHARED_EDITING_ENABLED, DEFAULT_SHARED_EDITING_VERIFY_COMMIT, DEFAULT_SHARED_INDEX_PATHS, DEFAULT_SKILL_EVALS_EMIT_RUNNER, DEFAULT_SKILL_EVALS_ENABLED, DEFAULT_SKILL_EVALS_SKILLS_ROOT, DEFAULT_SOURCES_THRESHOLDS, DEFAULT_STATE_FILE_PATH, DEFAULT_STATUS_LABELS, DEFAULT_TEARDOWN_BRANCH_PATTERNS, DEFAULT_TYPE_LABELS, DEFAULT_UNBLOCK_COMMENT_TEMPLATE, DEFAULT_UNBLOCK_DEPENDENTS_ENABLED, DEFAULT_UPSTREAM_CONFIGULATOR_ENABLED, DOCS_SYNC_AUDIT_SCHEMA_VERSION, JsiiFaker, LAYOUT_ENFORCEMENT, LAYOUT_ROOT_BY_PROJECT_TYPE, MAX_LABEL_DESCRIPTION_LENGTH, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MINIMUM_RELEASE_AGE, MONOREPO_LAYOUT, MonorepoProject, Nvmrc, PROD_DEPLOY_NAME, PROGRESS_FILES_FORMAT_VALUES, PnpmWorkspace, ProjectMetadata, REQUIREMENTS_WRITER_PATHS, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, ResetTask, SCHEDULED_TASK_MODEL_VALUES, SCOPE_CLASS_VALUES, SHARED_EDITING_CONFLICT_STRATEGY_VALUES, STARLIGHT_ROLE, SampleLang, StarlightProject, TestRunner, TsDocCoverageKind, TurboRepo, TurboRepoTask, TypeScriptConfig, TypeScriptProject, UNKNOWN_TYPE_FALLBACK_TIER, VALID_PRIORITY_VALUES, VALID_STATUS_VALUES, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, Vitest, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, addSyncLabelsWorkflow, agendaBundle, analyzeTsDocCoverage, auditReportJsonSchema, awsCdkBundle, baseBundle, bcmWriterBundle, buildBaseBundle, buildBcmWriterBundle, buildBuiltInBundles, buildBusinessModelsBundle, buildCheckBlockedProcedure, buildCompanyProfileBundle, buildCustomerProfileBundle, buildDocsSyncBundle, buildIndustryDiscoveryBundle, buildMaintenanceAuditBundle, buildOrchestratorConventionsContent, buildPeopleProfileBundle, buildRegulatoryResearchBundle, buildReport, buildRequirementsAnalystBundle, buildRequirementsReviewerBundle, buildRequirementsWriterBundle, buildResearchPipelineBundle, buildSoftwareProfileBundle, buildStandardsResearchBundle, buildUnblockDependentsProcedure, businessModelsBundle, checkDocSamplesProcedure, checkLinksProcedure, classifyIssueScope, classifyRun, companyProfileBundle, compileFencedSamples, createApiDiffCheck, createReferenceMismatchCheck, createTsdocCoverageCheck, customerProfileBundle, diffApiRollups, docsSyncBundle, emptyCategoryBuckets, extractApiProcedure, extractDocReferences, extractFencedSamples, formatLayoutViolation, formatStarlightSingletonViolation, getLatestEligibleVersion, githubWorkflowBundle, hasAnyDocsEmittingBundle, hasAnyDownstreamIssueKindBundle, industryDiscoveryBundle, isPhaseLabelOwnedByExcluded, isScheduledTaskOwnedByExcluded, isTypeLabelOwnedByExcluded, jestBundle, labelsForPhase, maintenanceAuditBundle, meetingAnalysisBundle, orchestratorBundle, parseApiRollup, peopleProfileBundle, persistAuditReport, pinPnpmActionSetup, pinSetupNodeVersion, pnpmBundle, prReviewBundle, projenBundle, referenceRecordToFinding, regulatoryResearchBundle, renderAgentTierCaseStatement, renderAgentTierSection, renderCheckDocSamplesProcedure, renderCheckLinksProcedure, renderCustomDocSectionBlock, renderCustomDocSections, renderExtractApiProcedure, renderFocusSection, renderIssueTemplatesBundleHook, renderIssueTemplatesCheckerScript, renderIssueTemplatesRuleContent, renderIssueTemplatesStarterPage, renderMeetingTypesSection, renderPriorityRulesSection, renderProgressFileName, renderProgressFilePath, renderProgressFilesBundleHook, renderProgressFilesRuleContent, renderRunRatioSection, renderRunRatioShellHelpers, renderScheduledTaskSkillFile, renderScheduledTasksSection, renderScopeGateSection, renderScopeGateShellHelpers, renderSharedEditingBundleHook, renderSharedEditingHelperScript, renderSharedEditingRuleContent, renderSkillEvalsBundleHook, renderSkillEvalsRuleContent, renderSkillEvalsRunnerScript, renderSourceTierExamples, renderStubIndexConventionRuleContent, renderUnblockDependentsScript, renderUnblockDependentsSection, requirementsAnalystBundle, requirementsReviewerBundle, requirementsWriterBundle, researchPipelineBundle, resolveAgentPaths, resolveAgentTiers, resolveAstroProjectOutdir, resolveAwsCdkProjectOutdir, resolveIssueDefaults, resolveIssueTemplates, resolveModelAlias, resolveOrchestratorAssets, resolveOutdirFromPackageName, resolveOverrideForLabels, resolveProgressFiles, resolveRunRatio, resolveScheduledTasks, resolveScopeGate, resolveSharedEditing, resolveSkillEvals, resolveTemplateVariables, resolveTypeScriptProjectOutdir, resolveUnblockDependents, runScan, slackBundle, softwareProfileBundle, standardsResearchBundle, tsdocRecordToFindings, turborepoBundle, typescriptBundle, upstreamConfigulatorDocsBundle, validateAgentTierConfig, validateIssueDefaultsConfig, validateIssueTemplatesConfig, validateMonorepoLayout, validateProgressFilesConfig, validateRunRatioConfig, validateScheduledTasksConfig, validateScopeGateConfig, validateSharedEditingConfig, validateSkillEvalsConfig, validateStarlightSingleton, validateUnblockDependentsConfig, vitestBundle };
9893
+ export type { AgentConfigOptions, AgentExpansionRules, AgentFeaturesConfig, AgentModel, AgentPathsConfig, AgentPlatform, AgentPlatformOverrides, AgentProcedure, AgentRule, AgentRuleBundle, AgentRuleScope, AgentSkill, AgentSubAgent, AgentSubAgentPlatformOverrides, AgentTier, AgentTierConfig, AgentTierEntry, AnalyzeTsDocCoverageOptions, ApiDiffCheckOptions, ApiDiffFinding, ApiDiffResult, ApiExtractorOptions, ApiExtractorReportOptions, ApiSurfaceEntry, ApproveMergeUpgradeOptions, AstroConfigOptions, AstroIntegrationSpec, AstroProjectOptions, AuditCheckRunner, AuditCheckRunnerContext, AuditFinding, AuditFindingBase, AuditLocation, AuditReport, AwsAccount, AwsCdkProjectOptions, AwsDeploymentTargetOptions, AwsLocalDeploymentConfig, AwsOrganization, AwsRegion, AwsTeardownWorkflowOptions, BundleOwnership, CiDeploymentConfig, ClassTypeOptions, ClaudeAutoModeConfig, ClaudeHookAction, ClaudeHookEntry, ClaudeHooksConfig, ClaudePermissionsConfig, ClaudeRuleTarget, ClaudeSandboxConfig, ClaudeSettingsConfig, CompileFencedSamplesOptions, CopilotHandoff, CursorHookAction, CursorHooksConfig, CursorSettingsConfig, CustomDocSection, DeployWorkflowOptions, DeploymentMetadata, DocReferenceRecord, EffectiveScopeThresholds, ExtractDocReferencesOptions, ExtractFencedSamplesOptions, FencedSampleRecord, FocusArea, FocusAreaMatch, FocusConfig, GitBranch, GitHubBoardMetadata, GitHubProjectMetadata, GitHubSprintMetadata, IDependencyResolver, IssueDefaultsConfig, IssueDefaultsOverride, IssueDefaultsPriority, IssueDefaultsStatus, IssueTemplatesConfig, LabelDefinition, LayoutEnforcement, LayoutViolation, LinkFailureFinding, McpServerConfig, McpTransport, MeetingArea, MeetingScope, MeetingType, MeetingTypeKind, MeetingsConfig, MergeMethod, MonorepoLayoutRoot, MonorepoProjectOptions, OrganizationMetadata, PnpmWorkspaceOptions, PriorityRule, ProgressFilesConfig, ProjectMetadataOptions, ReferenceMismatchCheckOptions, ReferenceMismatchFinding, RemoteCacheOptions, RepositoryMetadata, ResetTaskOptions, ResolvedAgentPaths, ResolvedAgentTier, ResolvedIssueDefaults, ResolvedIssueDefaultsEntry, ResolvedIssueTemplates, ResolvedProgressFiles, ResolvedProjectMetadata, ResolvedRunRatio, ResolvedScheduledTask, ResolvedScheduledTasks, ResolvedScopeGate, ResolvedScopeGateBundleOverride, ResolvedSharedEditing, ResolvedSkillEvals, ResolvedUnblockDependents, RunRatioConfig, RunScanOptions, RunScanResult, SampleCompilationFailure, SampleFailureFinding, ScheduledTaskEntry, ScheduledTaskModel, ScheduledTaskOverride, ScheduledTasksConfig, ScopeClass, ScopeGateBundleOverride, ScopeGateConfig, ScopeGateThresholds, SharedEditingConfig, SkillEvalsConfig, SlackMetadata, SourceTierExamples, StarlightEditLink, StarlightLogo, StarlightProjectOptions, StarlightRole, StarlightSidebarItem, StarlightSingletonViolation, StarlightSocialLink, SyncLabelsOptions, TemplateResolveResult, TsDocCoverageRecord, TsdocCoverageCheckOptions, TsdocCoverageFinding, TurboRepoOptions, TurboRepoTaskOptions, TypeScriptProjectOptions, UnblockDependentsConfig, UpstreamConfigulatorConfig, VersionKey, VitestConfigOptions, VitestOptions };