@codedrifters/configulator 0.0.296 → 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.mts +164 -3
- package/lib/index.d.ts +164 -3
- package/lib/index.js +226 -39
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +206 -22
- package/lib/index.mjs.map +1 -1
- package/package.json +2 -2
package/lib/index.d.mts
CHANGED
|
@@ -7834,11 +7834,11 @@ declare const VERSION: {
|
|
|
7834
7834
|
* Version of `pnpm/action-setup` to use in GitHub workflows.
|
|
7835
7835
|
* Tracks the version projen currently emits (see node_modules/projen/lib/javascript/node-project.js).
|
|
7836
7836
|
*/
|
|
7837
|
-
readonly PNPM_ACTION_SETUP_VERSION: "
|
|
7837
|
+
readonly PNPM_ACTION_SETUP_VERSION: "v6.0.5";
|
|
7838
7838
|
/**
|
|
7839
7839
|
* Version of PNPM to use in workflows at github actions.
|
|
7840
7840
|
*/
|
|
7841
|
-
readonly PNPM_VERSION: "
|
|
7841
|
+
readonly PNPM_VERSION: "11.0.8";
|
|
7842
7842
|
/**
|
|
7843
7843
|
* Version of Projen to use.
|
|
7844
7844
|
*/
|
|
@@ -7993,6 +7993,33 @@ interface PnpmWorkspaceOptions {
|
|
|
7993
7993
|
* See: https://pnpm.io/settings#minimumreleaseageexclude
|
|
7994
7994
|
*/
|
|
7995
7995
|
readonly minimumReleaseAgeExclude?: Array<string>;
|
|
7996
|
+
/**
|
|
7997
|
+
* A map of package names to booleans controlling whether each package may
|
|
7998
|
+
* execute "preinstall", "install", and/or "postinstall" scripts during
|
|
7999
|
+
* installation. Set a package's value to `true` to allow lifecycle scripts;
|
|
8000
|
+
* set it to `false` to silently block them without a warning.
|
|
8001
|
+
*
|
|
8002
|
+
* pnpm 11 replaced the legacy `onlyBuiltDependencies` (allow-list) and
|
|
8003
|
+
* `ignoredBuiltDependencies` (deny-list) settings with this single
|
|
8004
|
+
* `allowBuilds` map. Configulator translates the deprecated input fields
|
|
8005
|
+
* automatically: entries from `onlyBuiltDependencies` map to `true` and
|
|
8006
|
+
* entries from `ignoredBuiltDependencies` map to `false`. When a key
|
|
8007
|
+
* appears in both `allowBuilds` and one of the deprecated fields, the
|
|
8008
|
+
* explicit `allowBuilds` value wins.
|
|
8009
|
+
*
|
|
8010
|
+
* For cross-version compatibility, configulator emits BOTH the new
|
|
8011
|
+
* `allowBuilds` map AND the legacy `onlyBuiltDependencies` /
|
|
8012
|
+
* `ignoredBuiltDependencies` arrays in the generated YAML so consumers
|
|
8013
|
+
* on either pnpm 10 or pnpm 11 see correct lifecycle-script behavior
|
|
8014
|
+
* without changing their input.
|
|
8015
|
+
*
|
|
8016
|
+
* See: https://pnpm.io/settings#allowbuilds
|
|
8017
|
+
*
|
|
8018
|
+
* @default none (empty object)
|
|
8019
|
+
*/
|
|
8020
|
+
readonly allowBuilds?: {
|
|
8021
|
+
[packageName: string]: boolean;
|
|
8022
|
+
};
|
|
7996
8023
|
/**
|
|
7997
8024
|
* A list of package names that are allowed to execute "preinstall",
|
|
7998
8025
|
* "install", and/or "postinstall" scripts during installation. Only the
|
|
@@ -8006,6 +8033,12 @@ interface PnpmWorkspaceOptions {
|
|
|
8006
8033
|
*
|
|
8007
8034
|
* See: https://pnpm.io/settings#onlybuiltdependencies
|
|
8008
8035
|
*
|
|
8036
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8037
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8038
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8039
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8040
|
+
* supplied here translate to `allowBuilds[<package>] = true`.
|
|
8041
|
+
*
|
|
8009
8042
|
* @default none (empty array)
|
|
8010
8043
|
*/
|
|
8011
8044
|
readonly onlyBuiltDependencies?: Array<string>;
|
|
@@ -8019,6 +8052,12 @@ interface PnpmWorkspaceOptions {
|
|
|
8019
8052
|
*
|
|
8020
8053
|
* https://pnpm.io/settings#ignoredbuiltdependencies
|
|
8021
8054
|
*
|
|
8055
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8056
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8057
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8058
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8059
|
+
* supplied here translate to `allowBuilds[<package>] = false`.
|
|
8060
|
+
*
|
|
8022
8061
|
* @default none (empty array)
|
|
8023
8062
|
*/
|
|
8024
8063
|
readonly ignoredBuiltDependencies?: Array<string>;
|
|
@@ -8129,6 +8168,21 @@ declare class PnpmWorkspace extends Component {
|
|
|
8129
8168
|
* See: https://pnpm.io/settings#minimumreleaseageexclude
|
|
8130
8169
|
*/
|
|
8131
8170
|
minimumReleaseAgeExclude: Array<string>;
|
|
8171
|
+
/**
|
|
8172
|
+
* A map of package names to booleans controlling whether each package may
|
|
8173
|
+
* execute lifecycle scripts during install. `true` allows the scripts;
|
|
8174
|
+
* `false` silently blocks them.
|
|
8175
|
+
*
|
|
8176
|
+
* pnpm 11+ replaced `onlyBuiltDependencies` and `ignoredBuiltDependencies`
|
|
8177
|
+
* with this single map. Configulator translates the deprecated input
|
|
8178
|
+
* fields into `allowBuilds` automatically and emits both legacy and new
|
|
8179
|
+
* keys in the generated YAML for pnpm 10/11 cross-version compatibility.
|
|
8180
|
+
*
|
|
8181
|
+
* See: https://pnpm.io/settings#allowbuilds
|
|
8182
|
+
*/
|
|
8183
|
+
allowBuilds: {
|
|
8184
|
+
[packageName: string]: boolean;
|
|
8185
|
+
};
|
|
8132
8186
|
/**
|
|
8133
8187
|
* A list of package names that are allowed to execute "preinstall",
|
|
8134
8188
|
* "install", and/or "postinstall" scripts during installation. Only the
|
|
@@ -8141,6 +8195,12 @@ declare class PnpmWorkspace extends Component {
|
|
|
8141
8195
|
* versions of the package may run lifecycle scripts:
|
|
8142
8196
|
*
|
|
8143
8197
|
* See: https://pnpm.io/settings#onlybuiltdependencies
|
|
8198
|
+
*
|
|
8199
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8200
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8201
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8202
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8203
|
+
* supplied here translate to `allowBuilds[<package>] = true`.
|
|
8144
8204
|
*/
|
|
8145
8205
|
onlyBuiltDependencies: Array<string>;
|
|
8146
8206
|
/**
|
|
@@ -8152,6 +8212,12 @@ declare class PnpmWorkspace extends Component {
|
|
|
8152
8212
|
* lifecycle scripts are not needed.
|
|
8153
8213
|
*
|
|
8154
8214
|
* https://pnpm.io/settings#ignoredbuiltdependencies
|
|
8215
|
+
*
|
|
8216
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8217
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8218
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8219
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8220
|
+
* supplied here translate to `allowBuilds[<package>] = false`.
|
|
8155
8221
|
*/
|
|
8156
8222
|
ignoredBuiltDependencies: Array<string>;
|
|
8157
8223
|
/**
|
|
@@ -9418,6 +9484,25 @@ declare class AwsCdkProject extends awscdk.AwsCdkTypeScriptApp {
|
|
|
9418
9484
|
addDeploymentTarget(options: AwsDeploymentTargetOptions): AwsDeploymentTarget;
|
|
9419
9485
|
}
|
|
9420
9486
|
|
|
9487
|
+
/**
|
|
9488
|
+
* Emits a `.nvmrc` file at the project root containing the Node.js
|
|
9489
|
+
* version pinned in {@link VERSION.NODE_WORKFLOWS}.
|
|
9490
|
+
*
|
|
9491
|
+
* The file gives `nvm`, `fnm`, `volta`, and IDE plugins a single
|
|
9492
|
+
* source of truth for the Node version local development should use,
|
|
9493
|
+
* matching the version every CI workflow installs via
|
|
9494
|
+
* `actions/setup-node`. Without it, devs on hosts whose default Node
|
|
9495
|
+
* is older than the floor required by tooling (Astro 6, Starlight,
|
|
9496
|
+
* pnpm 11) silently break after a regen.
|
|
9497
|
+
*
|
|
9498
|
+
* Projen has no built-in `.nvmrc` knob — the closest input is
|
|
9499
|
+
* `workflowNodeVersion`, which only drives CI. This component closes
|
|
9500
|
+
* the local-dev gap.
|
|
9501
|
+
*/
|
|
9502
|
+
declare class Nvmrc extends Component {
|
|
9503
|
+
constructor(project: Project$1);
|
|
9504
|
+
}
|
|
9505
|
+
|
|
9421
9506
|
/**
|
|
9422
9507
|
* Provides structured project metadata consumed by AgentConfig, skills,
|
|
9423
9508
|
* and other configulator features at synthesis time.
|
|
@@ -9679,4 +9764,80 @@ declare const COMPLETE_JOB_ID = "complete";
|
|
|
9679
9764
|
*/
|
|
9680
9765
|
declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
|
|
9681
9766
|
|
|
9682
|
-
export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AGENT_TIER_ROLES, AGENT_TIER_VALUES, AUDIT_CATEGORY_ORDER, AgentConfig, type AgentConfigOptions, type AgentExpansionRules, type AgentFeaturesConfig, type AgentModel, type AgentPathsConfig, type AgentPlatform, type AgentPlatformOverrides, type AgentProcedure, type AgentRule, type AgentRuleBundle, type AgentRuleScope, type AgentSkill, type AgentSubAgent, type AgentSubAgentPlatformOverrides, type AgentTier, type AgentTierConfig, type AgentTierEntry, type AnalyzeTsDocCoverageOptions, type ApiDiffCheckOptions, type ApiDiffFinding, type ApiDiffResult, ApiExtractor, type ApiExtractorOptions, type ApiExtractorReportOptions, type ApiSurfaceEntry, type ApproveMergeUpgradeOptions, AstroConfig, type AstroConfigOptions, type AstroIntegrationSpec, AstroOutput, AstroProject, type AstroProjectOptions, AuditCategory, type AuditCheckRunner, type AuditCheckRunnerContext, type AuditFinding, type AuditFindingBase, type AuditLocation, AuditMode, type AuditReport, AuditSeverity, type AwsAccount, AwsCdkProject, type AwsCdkProjectOptions, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, type AwsDeploymentTargetOptions, type AwsLocalDeploymentConfig, type AwsOrganization, type AwsRegion, AwsTeardownWorkflow, type AwsTeardownWorkflowOptions, BUILT_IN_BUNDLES, BUNDLE_OWNERSHIP, type BundleOwnership, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, type CiDeploymentConfig, type ClassTypeOptions, type ClaudeAutoModeConfig, type ClaudeHookAction, type ClaudeHookEntry, type ClaudeHooksConfig, type ClaudePermissionsConfig, type ClaudeRuleTarget, type ClaudeSandboxConfig, type ClaudeSettingsConfig, type CompileFencedSamplesOptions, type CopilotHandoff, type CursorHookAction, type CursorHooksConfig, type CursorSettingsConfig, type CustomDocSection, 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, type DeployWorkflowOptions, type DeploymentMetadata, type DocReferenceRecord, type EffectiveScopeThresholds, type ExtractDocReferencesOptions, type ExtractFencedSamplesOptions, type FencedSampleRecord, type FocusArea, type FocusAreaMatch, type FocusConfig, type GitBranch, type GitHubBoardMetadata, type GitHubProjectMetadata, type GitHubSprintMetadata, type IDependencyResolver, type IssueDefaultsConfig, type IssueDefaultsOverride, type IssueDefaultsPriority, type IssueDefaultsStatus, type IssueTemplatesConfig, JsiiFaker, LAYOUT_ENFORCEMENT, LAYOUT_ROOT_BY_PROJECT_TYPE, type LabelDefinition, type LayoutEnforcement, type LayoutViolation, type LinkFailureFinding, MAX_LABEL_DESCRIPTION_LENGTH, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MINIMUM_RELEASE_AGE, MONOREPO_LAYOUT, type McpServerConfig, type McpTransport, type MeetingArea, type MeetingScope, type MeetingType, type MeetingTypeKind, type MeetingsConfig, type MergeMethod, type MonorepoLayoutRoot, MonorepoProject, type MonorepoProjectOptions, type OrganizationMetadata, PROD_DEPLOY_NAME, PROGRESS_FILES_FORMAT_VALUES, PnpmWorkspace, type PnpmWorkspaceOptions, type PriorityRule, type ProgressFilesConfig, ProjectMetadata, type ProjectMetadataOptions, REQUIREMENTS_WRITER_PATHS, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, type ReferenceMismatchCheckOptions, type ReferenceMismatchFinding, type RemoteCacheOptions, type RepositoryMetadata, ResetTask, type ResetTaskOptions, type ResolvedAgentPaths, type ResolvedAgentTier, type ResolvedIssueDefaults, type ResolvedIssueDefaultsEntry, type ResolvedIssueTemplates, type ResolvedProgressFiles, type ResolvedProjectMetadata, type ResolvedRunRatio, type ResolvedScheduledTask, type ResolvedScheduledTasks, type ResolvedScopeGate, type ResolvedScopeGateBundleOverride, type ResolvedSharedEditing, type ResolvedSkillEvals, type ResolvedUnblockDependents, type RunRatioConfig, type RunScanOptions, type RunScanResult, SCHEDULED_TASK_MODEL_VALUES, SCOPE_CLASS_VALUES, SHARED_EDITING_CONFLICT_STRATEGY_VALUES, STARLIGHT_ROLE, type SampleCompilationFailure, type SampleFailureFinding, SampleLang, type ScheduledTaskEntry, type ScheduledTaskModel, type ScheduledTaskOverride, type ScheduledTasksConfig, type ScopeClass, type ScopeGateBundleOverride, type ScopeGateConfig, type ScopeGateThresholds, type SharedEditingConfig, type SkillEvalsConfig, type SlackMetadata, type SourceTierExamples, type StarlightEditLink, type StarlightLogo, StarlightProject, type StarlightProjectOptions, type StarlightRole, type StarlightSidebarItem, type StarlightSingletonViolation, type StarlightSocialLink, type SyncLabelsOptions, type TemplateResolveResult, TestRunner, TsDocCoverageKind, type TsDocCoverageRecord, type TsdocCoverageCheckOptions, type TsdocCoverageFinding, TurboRepo, type TurboRepoOptions, TurboRepoTask, type TurboRepoTaskOptions, TypeScriptConfig, TypeScriptProject, type TypeScriptProjectOptions, UNKNOWN_TYPE_FALLBACK_TIER, type UnblockDependentsConfig, type UpstreamConfigulatorConfig, VALID_PRIORITY_VALUES, VALID_STATUS_VALUES, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, type VersionKey, Vitest, type VitestConfigOptions, type VitestOptions, 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, 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 };
|
|
9767
|
+
/**
|
|
9768
|
+
* Rewrites every `pnpm/action-setup@vX` step `uses` field reachable from
|
|
9769
|
+
* a project's GitHub component (and its sub-projects) to the version
|
|
9770
|
+
* pinned in {@link VERSION.PNPM_ACTION_SETUP_VERSION}.
|
|
9771
|
+
*
|
|
9772
|
+
* Projen's NodeProject and JsiiProject both hardcode a `pnpm/action-setup`
|
|
9773
|
+
* pin in their generated build / release / upgrade workflows. When that
|
|
9774
|
+
* pin lags behind the version required by the pnpm release we run in CI
|
|
9775
|
+
* (e.g. v5 cannot install pnpm 11), the action installs the wrong pnpm
|
|
9776
|
+
* version and CI breaks. This helper post-patches every workflow owned
|
|
9777
|
+
* by `project.github` so the pin tracks our centralised constant.
|
|
9778
|
+
*
|
|
9779
|
+
* Two passes run in sequence:
|
|
9780
|
+
*
|
|
9781
|
+
* 1. **Eager step arrays.** Walks every {@link Component} on the
|
|
9782
|
+
* project (and on its sub-projects) for the well-known fields
|
|
9783
|
+
* enumerated in {@link STEP_ARRAY_FIELDS}. Projen's BuildWorkflow
|
|
9784
|
+
* and Release components hold their pnpm-setup steps in these
|
|
9785
|
+
* arrays before the workflow's lazy step closures resolve them.
|
|
9786
|
+
* 2. **Direct workflow jobs.** Walks every job step on every
|
|
9787
|
+
* `GithubWorkflow` for jobs whose steps are eagerly populated
|
|
9788
|
+
* (e.g. the upgrade workflow). Steps held inside lazy closures
|
|
9789
|
+
* are skipped — those are reached via pass 1.
|
|
9790
|
+
*
|
|
9791
|
+
* @param project The project whose GitHub workflows should be patched.
|
|
9792
|
+
*/
|
|
9793
|
+
declare function pinPnpmActionSetup(project: Project$1): void;
|
|
9794
|
+
|
|
9795
|
+
/**
|
|
9796
|
+
* Rewrites every Node-version source reachable from a project's
|
|
9797
|
+
* GitHub component (and its sub-projects) to the version pinned in
|
|
9798
|
+
* {@link VERSION.NODE_WORKFLOWS}.
|
|
9799
|
+
*
|
|
9800
|
+
* Projen hardcodes `node-version: "lts/*"` in its release workflow
|
|
9801
|
+
* generator (via {@code Publisher.workflowNodeVersion}); configulator-
|
|
9802
|
+
* owned workflows already pass through {@link VERSION.NODE_WORKFLOWS}.
|
|
9803
|
+
* Without this patch, the two sources disagree (release workflows
|
|
9804
|
+
* install whatever Node lts/* resolves to; build / upgrade workflows
|
|
9805
|
+
* install Node 24). This helper post-patches every Node-version
|
|
9806
|
+
* source so a single source of truth — the centralised
|
|
9807
|
+
* {@link VERSION.NODE_WORKFLOWS} constant — drives every workflow
|
|
9808
|
+
* this repo and its consumers generate.
|
|
9809
|
+
*
|
|
9810
|
+
* Three passes run in sequence:
|
|
9811
|
+
*
|
|
9812
|
+
* 1. **Component Node-version fields.** Walks every {@link Component}
|
|
9813
|
+
* on the project (and on its sub-projects) and rewrites the
|
|
9814
|
+
* well-known fields enumerated in {@link NODE_VERSION_FIELDS} —
|
|
9815
|
+
* notably {@code Publisher.workflowNodeVersion}, which projen
|
|
9816
|
+
* renders into {@code tools.node.version} on the publish job
|
|
9817
|
+
* (and ultimately into the synthesized
|
|
9818
|
+
* `actions/setup-node` step).
|
|
9819
|
+
* 2. **Component step arrays.** Walks every {@link Component} on the
|
|
9820
|
+
* project (and on its sub-projects) for the well-known step-array
|
|
9821
|
+
* fields enumerated in {@link STEP_ARRAY_FIELDS}. Projen's
|
|
9822
|
+
* BuildWorkflow and Release components hold their pre/post-build
|
|
9823
|
+
* steps in these arrays before the workflow's lazy step closures
|
|
9824
|
+
* resolve them.
|
|
9825
|
+
* 3. **Direct workflow jobs.** Walks every job on every
|
|
9826
|
+
* `GithubWorkflow`. For each job:
|
|
9827
|
+
* - If `tools.node.version` is set (the lazy `setupTools` path
|
|
9828
|
+
* that synthesises the setup-node step at render time),
|
|
9829
|
+
* rewrite it.
|
|
9830
|
+
* - If `steps` is already an array (i.e. not a lazy closure),
|
|
9831
|
+
* patch any `actions/setup-node` step in place.
|
|
9832
|
+
*
|
|
9833
|
+
* The step-level patch only mutates `with["node-version"]`. Other
|
|
9834
|
+
* fields on `with` (`cache`, `cache-dependency-path`,
|
|
9835
|
+
* `registry-url`, `package-manager-cache`, etc.) are preserved
|
|
9836
|
+
* untouched. The step's `uses` field is also left alone — this
|
|
9837
|
+
* helper pins the input, not the action version pin.
|
|
9838
|
+
*
|
|
9839
|
+
* @param project The project whose GitHub workflows should be patched.
|
|
9840
|
+
*/
|
|
9841
|
+
declare function pinSetupNodeVersion(project: Project$1): void;
|
|
9842
|
+
|
|
9843
|
+
export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AGENT_TIER_ROLES, AGENT_TIER_VALUES, AUDIT_CATEGORY_ORDER, AgentConfig, type AgentConfigOptions, type AgentExpansionRules, type AgentFeaturesConfig, type AgentModel, type AgentPathsConfig, type AgentPlatform, type AgentPlatformOverrides, type AgentProcedure, type AgentRule, type AgentRuleBundle, type AgentRuleScope, type AgentSkill, type AgentSubAgent, type AgentSubAgentPlatformOverrides, type AgentTier, type AgentTierConfig, type AgentTierEntry, type AnalyzeTsDocCoverageOptions, type ApiDiffCheckOptions, type ApiDiffFinding, type ApiDiffResult, ApiExtractor, type ApiExtractorOptions, type ApiExtractorReportOptions, type ApiSurfaceEntry, type ApproveMergeUpgradeOptions, AstroConfig, type AstroConfigOptions, type AstroIntegrationSpec, AstroOutput, AstroProject, type AstroProjectOptions, AuditCategory, type AuditCheckRunner, type AuditCheckRunnerContext, type AuditFinding, type AuditFindingBase, type AuditLocation, AuditMode, type AuditReport, AuditSeverity, type AwsAccount, AwsCdkProject, type AwsCdkProjectOptions, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, type AwsDeploymentTargetOptions, type AwsLocalDeploymentConfig, type AwsOrganization, type AwsRegion, AwsTeardownWorkflow, type AwsTeardownWorkflowOptions, BUILT_IN_BUNDLES, BUNDLE_OWNERSHIP, type BundleOwnership, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, type CiDeploymentConfig, type ClassTypeOptions, type ClaudeAutoModeConfig, type ClaudeHookAction, type ClaudeHookEntry, type ClaudeHooksConfig, type ClaudePermissionsConfig, type ClaudeRuleTarget, type ClaudeSandboxConfig, type ClaudeSettingsConfig, type CompileFencedSamplesOptions, type CopilotHandoff, type CursorHookAction, type CursorHooksConfig, type CursorSettingsConfig, type CustomDocSection, 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, type DeployWorkflowOptions, type DeploymentMetadata, type DocReferenceRecord, type EffectiveScopeThresholds, type ExtractDocReferencesOptions, type ExtractFencedSamplesOptions, type FencedSampleRecord, type FocusArea, type FocusAreaMatch, type FocusConfig, type GitBranch, type GitHubBoardMetadata, type GitHubProjectMetadata, type GitHubSprintMetadata, type IDependencyResolver, type IssueDefaultsConfig, type IssueDefaultsOverride, type IssueDefaultsPriority, type IssueDefaultsStatus, type IssueTemplatesConfig, JsiiFaker, LAYOUT_ENFORCEMENT, LAYOUT_ROOT_BY_PROJECT_TYPE, type LabelDefinition, type LayoutEnforcement, type LayoutViolation, type LinkFailureFinding, MAX_LABEL_DESCRIPTION_LENGTH, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MINIMUM_RELEASE_AGE, MONOREPO_LAYOUT, type McpServerConfig, type McpTransport, type MeetingArea, type MeetingScope, type MeetingType, type MeetingTypeKind, type MeetingsConfig, type MergeMethod, type MonorepoLayoutRoot, MonorepoProject, type MonorepoProjectOptions, Nvmrc, type OrganizationMetadata, PROD_DEPLOY_NAME, PROGRESS_FILES_FORMAT_VALUES, PnpmWorkspace, type PnpmWorkspaceOptions, type PriorityRule, type ProgressFilesConfig, ProjectMetadata, type ProjectMetadataOptions, REQUIREMENTS_WRITER_PATHS, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, type ReferenceMismatchCheckOptions, type ReferenceMismatchFinding, type RemoteCacheOptions, type RepositoryMetadata, ResetTask, type ResetTaskOptions, type ResolvedAgentPaths, type ResolvedAgentTier, type ResolvedIssueDefaults, type ResolvedIssueDefaultsEntry, type ResolvedIssueTemplates, type ResolvedProgressFiles, type ResolvedProjectMetadata, type ResolvedRunRatio, type ResolvedScheduledTask, type ResolvedScheduledTasks, type ResolvedScopeGate, type ResolvedScopeGateBundleOverride, type ResolvedSharedEditing, type ResolvedSkillEvals, type ResolvedUnblockDependents, type RunRatioConfig, type RunScanOptions, type RunScanResult, SCHEDULED_TASK_MODEL_VALUES, SCOPE_CLASS_VALUES, SHARED_EDITING_CONFLICT_STRATEGY_VALUES, STARLIGHT_ROLE, type SampleCompilationFailure, type SampleFailureFinding, SampleLang, type ScheduledTaskEntry, type ScheduledTaskModel, type ScheduledTaskOverride, type ScheduledTasksConfig, type ScopeClass, type ScopeGateBundleOverride, type ScopeGateConfig, type ScopeGateThresholds, type SharedEditingConfig, type SkillEvalsConfig, type SlackMetadata, type SourceTierExamples, type StarlightEditLink, type StarlightLogo, StarlightProject, type StarlightProjectOptions, type StarlightRole, type StarlightSidebarItem, type StarlightSingletonViolation, type StarlightSocialLink, type SyncLabelsOptions, type TemplateResolveResult, TestRunner, TsDocCoverageKind, type TsDocCoverageRecord, type TsdocCoverageCheckOptions, type TsdocCoverageFinding, TurboRepo, type TurboRepoOptions, TurboRepoTask, type TurboRepoTaskOptions, TypeScriptConfig, TypeScriptProject, type TypeScriptProjectOptions, UNKNOWN_TYPE_FALLBACK_TIER, type UnblockDependentsConfig, type UpstreamConfigulatorConfig, VALID_PRIORITY_VALUES, VALID_STATUS_VALUES, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, type VersionKey, Vitest, type VitestConfigOptions, type VitestOptions, 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 };
|
package/lib/index.d.ts
CHANGED
|
@@ -7883,11 +7883,11 @@ declare const VERSION: {
|
|
|
7883
7883
|
* Version of `pnpm/action-setup` to use in GitHub workflows.
|
|
7884
7884
|
* Tracks the version projen currently emits (see node_modules/projen/lib/javascript/node-project.js).
|
|
7885
7885
|
*/
|
|
7886
|
-
readonly PNPM_ACTION_SETUP_VERSION: "
|
|
7886
|
+
readonly PNPM_ACTION_SETUP_VERSION: "v6.0.5";
|
|
7887
7887
|
/**
|
|
7888
7888
|
* Version of PNPM to use in workflows at github actions.
|
|
7889
7889
|
*/
|
|
7890
|
-
readonly PNPM_VERSION: "
|
|
7890
|
+
readonly PNPM_VERSION: "11.0.8";
|
|
7891
7891
|
/**
|
|
7892
7892
|
* Version of Projen to use.
|
|
7893
7893
|
*/
|
|
@@ -8042,6 +8042,33 @@ interface PnpmWorkspaceOptions {
|
|
|
8042
8042
|
* See: https://pnpm.io/settings#minimumreleaseageexclude
|
|
8043
8043
|
*/
|
|
8044
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
|
+
};
|
|
8045
8072
|
/**
|
|
8046
8073
|
* A list of package names that are allowed to execute "preinstall",
|
|
8047
8074
|
* "install", and/or "postinstall" scripts during installation. Only the
|
|
@@ -8055,6 +8082,12 @@ interface PnpmWorkspaceOptions {
|
|
|
8055
8082
|
*
|
|
8056
8083
|
* See: https://pnpm.io/settings#onlybuiltdependencies
|
|
8057
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
|
+
*
|
|
8058
8091
|
* @default none (empty array)
|
|
8059
8092
|
*/
|
|
8060
8093
|
readonly onlyBuiltDependencies?: Array<string>;
|
|
@@ -8068,6 +8101,12 @@ interface PnpmWorkspaceOptions {
|
|
|
8068
8101
|
*
|
|
8069
8102
|
* https://pnpm.io/settings#ignoredbuiltdependencies
|
|
8070
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
|
+
*
|
|
8071
8110
|
* @default none (empty array)
|
|
8072
8111
|
*/
|
|
8073
8112
|
readonly ignoredBuiltDependencies?: Array<string>;
|
|
@@ -8178,6 +8217,21 @@ declare class PnpmWorkspace extends Component {
|
|
|
8178
8217
|
* See: https://pnpm.io/settings#minimumreleaseageexclude
|
|
8179
8218
|
*/
|
|
8180
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
|
+
};
|
|
8181
8235
|
/**
|
|
8182
8236
|
* A list of package names that are allowed to execute "preinstall",
|
|
8183
8237
|
* "install", and/or "postinstall" scripts during installation. Only the
|
|
@@ -8190,6 +8244,12 @@ declare class PnpmWorkspace extends Component {
|
|
|
8190
8244
|
* versions of the package may run lifecycle scripts:
|
|
8191
8245
|
*
|
|
8192
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`.
|
|
8193
8253
|
*/
|
|
8194
8254
|
onlyBuiltDependencies: Array<string>;
|
|
8195
8255
|
/**
|
|
@@ -8201,6 +8261,12 @@ declare class PnpmWorkspace extends Component {
|
|
|
8201
8261
|
* lifecycle scripts are not needed.
|
|
8202
8262
|
*
|
|
8203
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`.
|
|
8204
8270
|
*/
|
|
8205
8271
|
ignoredBuiltDependencies: Array<string>;
|
|
8206
8272
|
/**
|
|
@@ -9467,6 +9533,25 @@ declare class AwsCdkProject extends awscdk.AwsCdkTypeScriptApp {
|
|
|
9467
9533
|
addDeploymentTarget(options: AwsDeploymentTargetOptions): AwsDeploymentTarget;
|
|
9468
9534
|
}
|
|
9469
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
|
+
|
|
9470
9555
|
/**
|
|
9471
9556
|
* Provides structured project metadata consumed by AgentConfig, skills,
|
|
9472
9557
|
* and other configulator features at synthesis time.
|
|
@@ -9728,5 +9813,81 @@ declare const COMPLETE_JOB_ID = "complete";
|
|
|
9728
9813
|
*/
|
|
9729
9814
|
declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
|
|
9730
9815
|
|
|
9731
|
-
|
|
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 };
|
|
9732
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 };
|