@codedrifters/configulator 0.0.296 → 0.0.298
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 +450 -15
- package/lib/index.d.ts +451 -16
- package/lib/index.js +1277 -521
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +1250 -504
- package/lib/index.mjs.map +1 -1
- package/package.json +2 -2
package/lib/index.d.mts
CHANGED
|
@@ -367,6 +367,40 @@ interface AgentSubAgent {
|
|
|
367
367
|
/** Optional per-platform overrides for this sub-agent. */
|
|
368
368
|
readonly platforms?: AgentSubAgentPlatformOverrides;
|
|
369
369
|
}
|
|
370
|
+
/**
|
|
371
|
+
* A user-invokable slash command. Rendered to `.claude/commands/<name>.md`.
|
|
372
|
+
*
|
|
373
|
+
* Slash commands appear in the Claude Code command picker (typed as
|
|
374
|
+
* `/<name>`) and execute the body as the user prompt. The body may
|
|
375
|
+
* reference any rule, skill, sub-agent, or procedure registered via
|
|
376
|
+
* `AgentConfigOptions` — bundle-shipped commands typically delegate to
|
|
377
|
+
* an existing sub-agent or procedure rather than restating its content.
|
|
378
|
+
*
|
|
379
|
+
* @see https://docs.claude.com/en/docs/claude-code/slash-commands
|
|
380
|
+
*/
|
|
381
|
+
interface AgentCommand {
|
|
382
|
+
/**
|
|
383
|
+
* Slash-command name (no leading slash). Lowercase, kebab-case.
|
|
384
|
+
* Becomes the filename stem under `.claude/commands/`.
|
|
385
|
+
* @example 'orchestrate'
|
|
386
|
+
*/
|
|
387
|
+
readonly name: string;
|
|
388
|
+
/**
|
|
389
|
+
* One-sentence summary shown in the slash-command picker.
|
|
390
|
+
*/
|
|
391
|
+
readonly description: string;
|
|
392
|
+
/**
|
|
393
|
+
* Body content (markdown). Rendered as the command file body verbatim,
|
|
394
|
+
* after the generated YAML frontmatter.
|
|
395
|
+
*/
|
|
396
|
+
readonly content: string;
|
|
397
|
+
/**
|
|
398
|
+
* Optional model override for the command's invocation. Maps to a
|
|
399
|
+
* Claude Code model alias (e.g. `opus`, `sonnet`, `haiku`) via
|
|
400
|
+
* {@link resolveModelAlias}.
|
|
401
|
+
*/
|
|
402
|
+
readonly model?: AgentModel;
|
|
403
|
+
}
|
|
370
404
|
/**
|
|
371
405
|
* An executable procedure (shell script) that ships with a bundle.
|
|
372
406
|
* Rendered to .claude/procedures/{name} as an executable file.
|
|
@@ -521,6 +555,14 @@ interface AgentRuleBundle {
|
|
|
521
555
|
readonly subAgents?: ReadonlyArray<AgentSubAgent>;
|
|
522
556
|
/** Executable procedures (shell scripts) included in this bundle. */
|
|
523
557
|
readonly procedures?: ReadonlyArray<AgentProcedure>;
|
|
558
|
+
/**
|
|
559
|
+
* Slash commands included in this bundle. Rendered to
|
|
560
|
+
* `.claude/commands/<name>.md`. Bundle commands are merged with
|
|
561
|
+
* consumer-supplied commands; consumers can opt out of any default
|
|
562
|
+
* via `AgentConfigOptions.excludeCommands` or by excluding the
|
|
563
|
+
* whole bundle.
|
|
564
|
+
*/
|
|
565
|
+
readonly commands?: ReadonlyArray<AgentCommand>;
|
|
524
566
|
/**
|
|
525
567
|
* Claude Code permission entries contributed by this bundle.
|
|
526
568
|
* Allow and deny entries are merged with the default and user-supplied
|
|
@@ -849,6 +891,49 @@ interface ClaudeSettingsConfig {
|
|
|
849
891
|
*/
|
|
850
892
|
readonly respectGitignore?: boolean;
|
|
851
893
|
}
|
|
894
|
+
/*******************************************************************************
|
|
895
|
+
*
|
|
896
|
+
* CLAUDE.md Tuning
|
|
897
|
+
*
|
|
898
|
+
******************************************************************************/
|
|
899
|
+
/**
|
|
900
|
+
* Tuning knobs for the rendered `CLAUDE.md` file.
|
|
901
|
+
*
|
|
902
|
+
* Today this surface only carries one switch (`injectBundleHooks`),
|
|
903
|
+
* but it exists as its own interface so future CLAUDE.md-shaping
|
|
904
|
+
* options (size caps, section pruning, alternative table-of-contents
|
|
905
|
+
* formats) have an obvious home.
|
|
906
|
+
*/
|
|
907
|
+
interface ClaudeMdConfig {
|
|
908
|
+
/**
|
|
909
|
+
* Whether the CLAUDE.md renderer should append the four "see also"
|
|
910
|
+
* subsections to each phased-agent bundle's `<bundle>-workflow`
|
|
911
|
+
* rule.
|
|
912
|
+
*
|
|
913
|
+
* When `true` (the default), each affected `<bundle>-workflow`
|
|
914
|
+
* rule receives up to four short subsections — `## Progress File`,
|
|
915
|
+
* `## Shared Index Editing`, `## Issue Templates`, and
|
|
916
|
+
* `## Skill Evals` — that point readers at the matching
|
|
917
|
+
* convention rule (`progress-file-convention`, `shared-editing-safety`,
|
|
918
|
+
* `issue-templates-convention`, `skill-evals`). The convention
|
|
919
|
+
* rules themselves render unconditionally as standalone top-level
|
|
920
|
+
* CLAUDE.md sections regardless of this setting; these per-bundle
|
|
921
|
+
* subsections are an extra "see also" pointer for readers who land
|
|
922
|
+
* on a workflow rule directly.
|
|
923
|
+
*
|
|
924
|
+
* Set to `false` to drop the per-bundle pointers. The convention
|
|
925
|
+
* rules at the top of CLAUDE.md still convey the policy. This
|
|
926
|
+
* recovers roughly 600 lines (~6,500 tokens per turn) on a typical
|
|
927
|
+
* phased-agent-heavy consumer where the same handful of "see the
|
|
928
|
+
* X rule" stubs are duplicated across every workflow rule.
|
|
929
|
+
*
|
|
930
|
+
* The default is `true` to preserve back-compat for existing
|
|
931
|
+
* consumers that expect the per-agent stubs.
|
|
932
|
+
*
|
|
933
|
+
* @default true
|
|
934
|
+
*/
|
|
935
|
+
readonly injectBundleHooks?: boolean;
|
|
936
|
+
}
|
|
852
937
|
/*******************************************************************************
|
|
853
938
|
*
|
|
854
939
|
* Agent Paths Config
|
|
@@ -2615,6 +2700,17 @@ interface AgentConfigOptions {
|
|
|
2615
2700
|
* @default [AGENT_PLATFORM.CURSOR, AGENT_PLATFORM.CLAUDE]
|
|
2616
2701
|
*/
|
|
2617
2702
|
readonly platforms?: ReadonlyArray<AgentPlatform>;
|
|
2703
|
+
/**
|
|
2704
|
+
* Default model tier for analyst / writer / profile / research / regulatory /
|
|
2705
|
+
* standards / business-models / customer / industry / meeting / maintenance
|
|
2706
|
+
* sub-agents that don't pin a model explicitly. Defaults to 'balanced' (sonnet).
|
|
2707
|
+
* Override to 'powerful' (opus) to restore pre-2026-05-08 behaviour during a
|
|
2708
|
+
* migration window. The four reviewer/orchestrator agents (orchestrator,
|
|
2709
|
+
* issue-worker, pr-reviewer, requirements-reviewer) ignore this knob and
|
|
2710
|
+
* stay on POWERFUL because their workload requires it.
|
|
2711
|
+
* @default 'balanced'
|
|
2712
|
+
*/
|
|
2713
|
+
readonly defaultAgentTier?: "powerful" | "balanced" | "fast";
|
|
2618
2714
|
/**
|
|
2619
2715
|
* Additional agent rules to generate alongside auto-detected and bundled rules.
|
|
2620
2716
|
* Custom rules override bundled rules of the same name.
|
|
@@ -2632,6 +2728,23 @@ interface AgentConfigOptions {
|
|
|
2632
2728
|
* Custom procedure definitions (executable shell scripts).
|
|
2633
2729
|
*/
|
|
2634
2730
|
readonly procedures?: ReadonlyArray<AgentProcedure>;
|
|
2731
|
+
/**
|
|
2732
|
+
* Slash commands rendered to `.claude/commands/<name>.md`. Includes any
|
|
2733
|
+
* default commands shipped by an active bundle (e.g. the orchestrator
|
|
2734
|
+
* bundle's `/orchestrate`, `/check-blocked`, `/scan`) plus
|
|
2735
|
+
* consumer-supplied commands. A consumer command whose name collides
|
|
2736
|
+
* with a default wins (override semantics, mirroring `subAgents` /
|
|
2737
|
+
* `skills` / `rules`). Use `excludeCommands` to drop a specific
|
|
2738
|
+
* default by name.
|
|
2739
|
+
*/
|
|
2740
|
+
readonly commands?: ReadonlyArray<AgentCommand>;
|
|
2741
|
+
/**
|
|
2742
|
+
* Names of default commands to exclude from rendering. Each entry is
|
|
2743
|
+
* the bare command name (no leading slash). Use this to drop a single
|
|
2744
|
+
* bundle-shipped default without disabling the whole bundle.
|
|
2745
|
+
* @example ['scan']
|
|
2746
|
+
*/
|
|
2747
|
+
readonly excludeCommands?: ReadonlyArray<string>;
|
|
2635
2748
|
/**
|
|
2636
2749
|
* MCP server configurations. Cross-platform — rendered to the appropriate
|
|
2637
2750
|
* config file for each platform.
|
|
@@ -2720,6 +2833,19 @@ interface AgentConfigOptions {
|
|
|
2720
2833
|
* Generated to .claude/settings.json (committed, team-shared).
|
|
2721
2834
|
*/
|
|
2722
2835
|
readonly claudeSettings?: ClaudeSettingsConfig;
|
|
2836
|
+
/**
|
|
2837
|
+
* CLAUDE.md rendering tuning knobs.
|
|
2838
|
+
*
|
|
2839
|
+
* Currently exposes a single switch (`injectBundleHooks`) that
|
|
2840
|
+
* suppresses the four "see also" subsections each phased-agent
|
|
2841
|
+
* `<bundle>-workflow` rule otherwise receives. The convention
|
|
2842
|
+
* rules themselves still render — this only drops the duplicated
|
|
2843
|
+
* per-bundle pointers. Default behaviour is unchanged for
|
|
2844
|
+
* back-compat.
|
|
2845
|
+
*
|
|
2846
|
+
* @see ClaudeMdConfig
|
|
2847
|
+
*/
|
|
2848
|
+
readonly claudeMd?: ClaudeMdConfig;
|
|
2723
2849
|
/**
|
|
2724
2850
|
* Cursor-specific configuration. Generates .cursor/hooks.json for
|
|
2725
2851
|
* lifecycle hooks and .cursorignore / .cursorindexingignore for
|
|
@@ -3164,12 +3290,51 @@ declare class AgentConfig extends Component {
|
|
|
3164
3290
|
*/
|
|
3165
3291
|
private static hasActiveTierExamples;
|
|
3166
3292
|
/**
|
|
3167
|
-
* Merges default Claude permissions with bundle and
|
|
3168
|
-
*
|
|
3169
|
-
*
|
|
3170
|
-
*
|
|
3293
|
+
* Merges default Claude permissions and hooks with bundle and
|
|
3294
|
+
* user-supplied settings.
|
|
3295
|
+
*
|
|
3296
|
+
* Permission merge order: defaults → bundle permissions → user-supplied
|
|
3297
|
+
* entries. Both `allow` and `deny` are deduped via
|
|
3298
|
+
* `Array.from(new Set(...))`; V8 `Set` iteration preserves insertion
|
|
3299
|
+
* order, so the final ordering is defaults first, then bundle, then
|
|
3300
|
+
* user, with duplicates removed (first-occurrence wins). `defaultMode`
|
|
3301
|
+
* defaults to `"dontAsk"` unless overridden — see the inline comment
|
|
3302
|
+
* on the literal below for the autonomous-worker rationale.
|
|
3303
|
+
*
|
|
3304
|
+
* Hooks merge: consumer-supplied entries first, then default entries
|
|
3305
|
+
* (Stop, PostToolUse), deduped by `(matcher, JSON-serialized hooks)`.
|
|
3306
|
+
* Defaults are skipped entirely when `disableAllHooks: true` is set —
|
|
3307
|
+
* the `disableAllHooks` flag passes through to the rendered file so
|
|
3308
|
+
* Claude Code suppresses every project-level hook at runtime, and the
|
|
3309
|
+
* defaults are dropped at synth time so the rendered file does not
|
|
3310
|
+
* carry orphan entries that would re-fire if the operator later flipped
|
|
3311
|
+
* the flag back off.
|
|
3312
|
+
*
|
|
3313
|
+
* Env merge: defaults from `DEFAULT_CLAUDE_ENV` (e.g.
|
|
3314
|
+
* `ENABLE_TOOL_SEARCH=1`) layer first, then consumer-supplied
|
|
3315
|
+
* `claudeSettings.env` entries override on key collision. Sibling keys
|
|
3316
|
+
* from both sources land in the rendered file.
|
|
3171
3317
|
*/
|
|
3172
3318
|
private static mergeClaudeDefaults;
|
|
3319
|
+
/**
|
|
3320
|
+
* Merge default lifecycle hooks (Stop, PostToolUse) with consumer-
|
|
3321
|
+
* supplied entries on `claudeSettings.hooks`. Consumer entries appear
|
|
3322
|
+
* first so a downstream override that wires a faster lint/format hook
|
|
3323
|
+
* runs ahead of the defaults; defaults are appended after.
|
|
3324
|
+
*
|
|
3325
|
+
* Returns `undefined` when neither defaults nor consumer entries
|
|
3326
|
+
* remain — the renderer skips the `hooks` key entirely in that case
|
|
3327
|
+
* so opt-out repos do not ship an empty `"hooks": {}` object.
|
|
3328
|
+
*
|
|
3329
|
+
* Defaults are gated on `disableAllHooks !== true`. When the flag is
|
|
3330
|
+
* set we still pass through any consumer-supplied entries (the
|
|
3331
|
+
* runtime-level `disableAllHooks: true` is what suppresses execution),
|
|
3332
|
+
* but we never inject the bundle defaults. That keeps the disable-all
|
|
3333
|
+
* escape hatch idempotent: flipping the flag drops the bundle's
|
|
3334
|
+
* default surface area instead of leaving the entries on disk for a
|
|
3335
|
+
* future re-enable.
|
|
3336
|
+
*/
|
|
3337
|
+
private static mergeClaudeHooks;
|
|
3173
3338
|
private readonly options;
|
|
3174
3339
|
private cachedBundles?;
|
|
3175
3340
|
private cachedPaths?;
|
|
@@ -3215,6 +3380,16 @@ declare class AgentConfig extends Component {
|
|
|
3215
3380
|
private resolveSkills;
|
|
3216
3381
|
private resolveSubAgents;
|
|
3217
3382
|
private resolveProcedures;
|
|
3383
|
+
/**
|
|
3384
|
+
* Resolves the final list of slash commands by merging bundle-shipped
|
|
3385
|
+
* defaults with consumer-supplied entries. Mirrors {@link resolveSkills}
|
|
3386
|
+
* and {@link resolveSubAgents}: auto-detected bundles contribute first,
|
|
3387
|
+
* force-included bundles overlay, and consumer commands override on
|
|
3388
|
+
* name collision. Names listed in `excludeCommands` are dropped after
|
|
3389
|
+
* the merge so consumers can opt out of a single default without
|
|
3390
|
+
* disabling the whole bundle.
|
|
3391
|
+
*/
|
|
3392
|
+
private resolveCommands;
|
|
3218
3393
|
/**
|
|
3219
3394
|
* Resolves template variables in rule content using project metadata.
|
|
3220
3395
|
* Emits synthesis warnings for rules with unresolved variables.
|
|
@@ -3388,6 +3563,96 @@ declare const DEFAULT_AGENT_PATHS: ResolvedAgentPaths;
|
|
|
3388
3563
|
*/
|
|
3389
3564
|
declare function resolveAgentPaths(paths?: AgentPathsConfig): ResolvedAgentPaths;
|
|
3390
3565
|
|
|
3566
|
+
/**
|
|
3567
|
+
* One row in the rendered agent registry table. Each phased-agent
|
|
3568
|
+
* bundle that previously shipped its own `<bundle>-workflow` rule
|
|
3569
|
+
* contributes exactly one entry here so the registry can answer
|
|
3570
|
+
* "which agent handles X" without rendering 18 prose summaries
|
|
3571
|
+
* into CLAUDE.md.
|
|
3572
|
+
*/
|
|
3573
|
+
interface AgentRegistryEntry {
|
|
3574
|
+
/** Bundle name as it appears in `buildBuiltInBundles`, e.g. `bcm-writer`. */
|
|
3575
|
+
readonly bundle: string;
|
|
3576
|
+
/** Primary user-invocable skill, with leading slash, e.g. `/write-bcm`. */
|
|
3577
|
+
readonly skill: string;
|
|
3578
|
+
/** Sub-agent name in `.claude/agents/`, e.g. `bcm-writer`. */
|
|
3579
|
+
readonly agent: string;
|
|
3580
|
+
/**
|
|
3581
|
+
* Function that resolves the canonical output path for this
|
|
3582
|
+
* bundle from the project's resolved agent-path roots. Returning
|
|
3583
|
+
* an empty string signals "no filesystem output path" (used by
|
|
3584
|
+
* pr-review). Path-aware so consumer overrides on
|
|
3585
|
+
* `AgentConfigOptions.paths` propagate into the rendered table.
|
|
3586
|
+
*/
|
|
3587
|
+
readonly resolveOutputPath: (paths: ResolvedAgentPaths) => string;
|
|
3588
|
+
/**
|
|
3589
|
+
* One-line purpose description. Lifted from the first prose
|
|
3590
|
+
* sentence of the original `<bundle>-workflow` rule so consumers
|
|
3591
|
+
* keep the same routing signal.
|
|
3592
|
+
*/
|
|
3593
|
+
readonly purpose: string;
|
|
3594
|
+
/**
|
|
3595
|
+
* Name of the original `<bundle>-workflow` rule. Used by the
|
|
3596
|
+
* registry helper to filter the resolved bundle list and assert
|
|
3597
|
+
* (via the test suite) that no bundle still ships its workflow
|
|
3598
|
+
* rule into the Claude platform output.
|
|
3599
|
+
*/
|
|
3600
|
+
readonly workflowRuleName: string;
|
|
3601
|
+
}
|
|
3602
|
+
/**
|
|
3603
|
+
* Static registry of every phased-agent bundle that contributes a
|
|
3604
|
+
* routing row. Order is alphabetical by bundle name so the
|
|
3605
|
+
* rendered table is stable across runs and consumer-side diffs are
|
|
3606
|
+
* minimal. Adding a new phased-agent bundle requires appending one
|
|
3607
|
+
* row here and suppressing its `<bundle>-workflow` rule via
|
|
3608
|
+
* `platforms: { claude: { exclude: true } }`.
|
|
3609
|
+
*/
|
|
3610
|
+
declare const AGENT_REGISTRY_ENTRIES: ReadonlyArray<AgentRegistryEntry>;
|
|
3611
|
+
/**
|
|
3612
|
+
* The set of `<bundle>-workflow` rule names that the registry
|
|
3613
|
+
* subsumes. Used both to suppress those rules from the Claude
|
|
3614
|
+
* platform output and to assert in tests that no bundle still
|
|
3615
|
+
* ships its prose summary into CLAUDE.md.
|
|
3616
|
+
*/
|
|
3617
|
+
declare const SUPPRESSED_WORKFLOW_RULE_NAMES: ReadonlyArray<string>;
|
|
3618
|
+
/**
|
|
3619
|
+
* Returns `true` when the supplied rule name belongs to a
|
|
3620
|
+
* phased-agent `<bundle>-workflow` rule whose routing summary now
|
|
3621
|
+
* lives in the shared `agent-registry` rule.
|
|
3622
|
+
*/
|
|
3623
|
+
declare function isSuppressedWorkflowRule(name: string): boolean;
|
|
3624
|
+
/**
|
|
3625
|
+
* Reverse map from a `<bundle>-workflow` rule name to its owning
|
|
3626
|
+
* bundle name. Used by the registry consolidation loop to detect
|
|
3627
|
+
* when a consumer has targeted a bundle with a
|
|
3628
|
+
* `features.customDocSections` entry — those bundles keep
|
|
3629
|
+
* rendering their workflow rule into CLAUDE.md so the consumer-
|
|
3630
|
+
* supplied prose has somewhere to live. Returns `undefined` for
|
|
3631
|
+
* any rule name that is not in the registry's suppression list.
|
|
3632
|
+
*/
|
|
3633
|
+
declare function bundleNameForWorkflowRule(ruleName: string): string | undefined;
|
|
3634
|
+
/**
|
|
3635
|
+
* Build the consolidated agent-registry rule for the supplied
|
|
3636
|
+
* resolved bundle list. The helper:
|
|
3637
|
+
*
|
|
3638
|
+
* 1. Filters `AGENT_REGISTRY_ENTRIES` to bundles that are actually
|
|
3639
|
+
* active in the consumer's resolved bundle set (so a consumer
|
|
3640
|
+
* that excludes `bcm-writer` doesn't see a row for it).
|
|
3641
|
+
* 2. Renders one alphabetically-sorted markdown table row per
|
|
3642
|
+
* surviving entry, with skill / agent / bundle / output-path /
|
|
3643
|
+
* purpose columns.
|
|
3644
|
+
* 3. Returns a single ALWAYS-scoped `agent-registry` rule whose
|
|
3645
|
+
* body opens with a 2-3 sentence preamble explaining the
|
|
3646
|
+
* routing model and pointing at `.claude/agents/<name>.md` for
|
|
3647
|
+
* full prompts and the cross-cutting convention rules at the
|
|
3648
|
+
* top of CLAUDE.md.
|
|
3649
|
+
*
|
|
3650
|
+
* Consumers with no phased-agent bundle active receive `undefined`
|
|
3651
|
+
* and the rule is dropped from the resolved set — there is no
|
|
3652
|
+
* routing to summarise.
|
|
3653
|
+
*/
|
|
3654
|
+
declare function buildAgentRegistryRule(bundles: ReadonlyArray<AgentRuleBundle>, paths: ResolvedAgentPaths): AgentRule | undefined;
|
|
3655
|
+
|
|
3391
3656
|
/**
|
|
3392
3657
|
* Agenda bundle — enabled by default.
|
|
3393
3658
|
*
|
|
@@ -3601,7 +3866,7 @@ declare const businessModelsBundle: AgentRuleBundle;
|
|
|
3601
3866
|
* `/analyze-segment`), and `type:company-profile` plus `company:*`
|
|
3602
3867
|
* phase labels for the six phases.
|
|
3603
3868
|
*/
|
|
3604
|
-
declare function buildCompanyProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults): AgentRuleBundle;
|
|
3869
|
+
declare function buildCompanyProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults, tier?: AgentModel): AgentRuleBundle;
|
|
3605
3870
|
/**
|
|
3606
3871
|
* Default-paths instance of the company-profile bundle, preserved for
|
|
3607
3872
|
* backward compatibility with consumers that import the const
|
|
@@ -3638,7 +3903,7 @@ declare const companyProfileBundle: AgentRuleBundle;
|
|
|
3638
3903
|
* unmet need to `req:scan` seed via the shared software-profile
|
|
3639
3904
|
* feature matrix.
|
|
3640
3905
|
*/
|
|
3641
|
-
declare function buildCustomerProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults): AgentRuleBundle;
|
|
3906
|
+
declare function buildCustomerProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults, tier?: AgentModel): AgentRuleBundle;
|
|
3642
3907
|
/**
|
|
3643
3908
|
* Default-paths instance of the customer-profile bundle, preserved
|
|
3644
3909
|
* for backward compatibility with consumers that import the const
|
|
@@ -3805,7 +4070,7 @@ declare const jestBundle: AgentRuleBundle;
|
|
|
3805
4070
|
* automatically pick up the label taxonomy through the sync-labels
|
|
3806
4071
|
* workflow.
|
|
3807
4072
|
*/
|
|
3808
|
-
declare function buildMaintenanceAuditBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults): AgentRuleBundle;
|
|
4073
|
+
declare function buildMaintenanceAuditBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults, tier?: AgentModel): AgentRuleBundle;
|
|
3809
4074
|
/**
|
|
3810
4075
|
* Default-paths instance of the maintenance-audit bundle, preserved
|
|
3811
4076
|
* for backward compatibility with consumers that import the const
|
|
@@ -3815,8 +4080,17 @@ declare function buildMaintenanceAuditBundle(paths?: ResolvedAgentPaths, issueDe
|
|
|
3815
4080
|
declare const maintenanceAuditBundle: AgentRuleBundle;
|
|
3816
4081
|
|
|
3817
4082
|
/**
|
|
3818
|
-
*
|
|
3819
|
-
*
|
|
4083
|
+
* Build the meeting-analysis bundle with the supplied default sub-agent
|
|
4084
|
+
* model tier. The tier knob lets consumers globally demote the
|
|
4085
|
+
* `meeting-analyst` sub-agent to BALANCED (sonnet) — which is the
|
|
4086
|
+
* post-2026-05-08 default — without forking the bundle.
|
|
4087
|
+
*/
|
|
4088
|
+
declare function buildMeetingAnalysisBundle(tier?: AgentModel): AgentRuleBundle;
|
|
4089
|
+
/**
|
|
4090
|
+
* Default-tier instance of the meeting-analysis bundle, preserved for
|
|
4091
|
+
* backward compatibility with consumers that import the const directly.
|
|
4092
|
+
* The factory above is the canonical entry point when a consumer
|
|
4093
|
+
* supplies `AgentConfigOptions.defaultAgentTier`.
|
|
3820
4094
|
*/
|
|
3821
4095
|
declare const meetingAnalysisBundle: AgentRuleBundle;
|
|
3822
4096
|
|
|
@@ -4656,7 +4930,7 @@ declare const orchestratorBundle: AgentRuleBundle;
|
|
|
4656
4930
|
* skills (`/profile-person`, `/refresh-person`), and `type:people-profile`
|
|
4657
4931
|
* plus `people:*` phase labels for the four phases.
|
|
4658
4932
|
*/
|
|
4659
|
-
declare function buildPeopleProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults): AgentRuleBundle;
|
|
4933
|
+
declare function buildPeopleProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults, tier?: AgentModel): AgentRuleBundle;
|
|
4660
4934
|
/**
|
|
4661
4935
|
* Default-paths instance of the people-profile bundle, preserved for
|
|
4662
4936
|
* backward compatibility with consumers that import the const
|
|
@@ -5601,7 +5875,7 @@ declare const slackBundle: AgentRuleBundle;
|
|
|
5601
5875
|
* skills (`/profile-software` and `/map-software`), and
|
|
5602
5876
|
* `type:software-profile` plus `software:*` phase labels.
|
|
5603
5877
|
*/
|
|
5604
|
-
declare function buildSoftwareProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults): AgentRuleBundle;
|
|
5878
|
+
declare function buildSoftwareProfileBundle(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults, tier?: AgentModel): AgentRuleBundle;
|
|
5605
5879
|
/**
|
|
5606
5880
|
* Default-paths instance of the software-profile bundle, preserved
|
|
5607
5881
|
* for backward compatibility with consumers that import the const
|
|
@@ -5713,7 +5987,7 @@ declare const vitestBundle: AgentRuleBundle;
|
|
|
5713
5987
|
* Bundles that do not read any agent path (typescript, jest,
|
|
5714
5988
|
* pnpm, etc.) stay as const exports and are referenced unchanged.
|
|
5715
5989
|
*/
|
|
5716
|
-
declare function buildBuiltInBundles(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults): ReadonlyArray<AgentRuleBundle>;
|
|
5990
|
+
declare function buildBuiltInBundles(paths?: ResolvedAgentPaths, issueDefaults?: ResolvedIssueDefaults, defaultAgentTier?: AgentModel): ReadonlyArray<AgentRuleBundle>;
|
|
5717
5991
|
/**
|
|
5718
5992
|
* Built-in rule bundles assembled with the default agent paths.
|
|
5719
5993
|
* Preserved for backward compatibility with tests and consumers
|
|
@@ -7834,11 +8108,11 @@ declare const VERSION: {
|
|
|
7834
8108
|
* Version of `pnpm/action-setup` to use in GitHub workflows.
|
|
7835
8109
|
* Tracks the version projen currently emits (see node_modules/projen/lib/javascript/node-project.js).
|
|
7836
8110
|
*/
|
|
7837
|
-
readonly PNPM_ACTION_SETUP_VERSION: "
|
|
8111
|
+
readonly PNPM_ACTION_SETUP_VERSION: "v6.0.5";
|
|
7838
8112
|
/**
|
|
7839
8113
|
* Version of PNPM to use in workflows at github actions.
|
|
7840
8114
|
*/
|
|
7841
|
-
readonly PNPM_VERSION: "
|
|
8115
|
+
readonly PNPM_VERSION: "11.0.8";
|
|
7842
8116
|
/**
|
|
7843
8117
|
* Version of Projen to use.
|
|
7844
8118
|
*/
|
|
@@ -7993,6 +8267,33 @@ interface PnpmWorkspaceOptions {
|
|
|
7993
8267
|
* See: https://pnpm.io/settings#minimumreleaseageexclude
|
|
7994
8268
|
*/
|
|
7995
8269
|
readonly minimumReleaseAgeExclude?: Array<string>;
|
|
8270
|
+
/**
|
|
8271
|
+
* A map of package names to booleans controlling whether each package may
|
|
8272
|
+
* execute "preinstall", "install", and/or "postinstall" scripts during
|
|
8273
|
+
* installation. Set a package's value to `true` to allow lifecycle scripts;
|
|
8274
|
+
* set it to `false` to silently block them without a warning.
|
|
8275
|
+
*
|
|
8276
|
+
* pnpm 11 replaced the legacy `onlyBuiltDependencies` (allow-list) and
|
|
8277
|
+
* `ignoredBuiltDependencies` (deny-list) settings with this single
|
|
8278
|
+
* `allowBuilds` map. Configulator translates the deprecated input fields
|
|
8279
|
+
* automatically: entries from `onlyBuiltDependencies` map to `true` and
|
|
8280
|
+
* entries from `ignoredBuiltDependencies` map to `false`. When a key
|
|
8281
|
+
* appears in both `allowBuilds` and one of the deprecated fields, the
|
|
8282
|
+
* explicit `allowBuilds` value wins.
|
|
8283
|
+
*
|
|
8284
|
+
* For cross-version compatibility, configulator emits BOTH the new
|
|
8285
|
+
* `allowBuilds` map AND the legacy `onlyBuiltDependencies` /
|
|
8286
|
+
* `ignoredBuiltDependencies` arrays in the generated YAML so consumers
|
|
8287
|
+
* on either pnpm 10 or pnpm 11 see correct lifecycle-script behavior
|
|
8288
|
+
* without changing their input.
|
|
8289
|
+
*
|
|
8290
|
+
* See: https://pnpm.io/settings#allowbuilds
|
|
8291
|
+
*
|
|
8292
|
+
* @default none (empty object)
|
|
8293
|
+
*/
|
|
8294
|
+
readonly allowBuilds?: {
|
|
8295
|
+
[packageName: string]: boolean;
|
|
8296
|
+
};
|
|
7996
8297
|
/**
|
|
7997
8298
|
* A list of package names that are allowed to execute "preinstall",
|
|
7998
8299
|
* "install", and/or "postinstall" scripts during installation. Only the
|
|
@@ -8006,6 +8307,12 @@ interface PnpmWorkspaceOptions {
|
|
|
8006
8307
|
*
|
|
8007
8308
|
* See: https://pnpm.io/settings#onlybuiltdependencies
|
|
8008
8309
|
*
|
|
8310
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8311
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8312
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8313
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8314
|
+
* supplied here translate to `allowBuilds[<package>] = true`.
|
|
8315
|
+
*
|
|
8009
8316
|
* @default none (empty array)
|
|
8010
8317
|
*/
|
|
8011
8318
|
readonly onlyBuiltDependencies?: Array<string>;
|
|
@@ -8019,6 +8326,12 @@ interface PnpmWorkspaceOptions {
|
|
|
8019
8326
|
*
|
|
8020
8327
|
* https://pnpm.io/settings#ignoredbuiltdependencies
|
|
8021
8328
|
*
|
|
8329
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8330
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8331
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8332
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8333
|
+
* supplied here translate to `allowBuilds[<package>] = false`.
|
|
8334
|
+
*
|
|
8022
8335
|
* @default none (empty array)
|
|
8023
8336
|
*/
|
|
8024
8337
|
readonly ignoredBuiltDependencies?: Array<string>;
|
|
@@ -8129,6 +8442,21 @@ declare class PnpmWorkspace extends Component {
|
|
|
8129
8442
|
* See: https://pnpm.io/settings#minimumreleaseageexclude
|
|
8130
8443
|
*/
|
|
8131
8444
|
minimumReleaseAgeExclude: Array<string>;
|
|
8445
|
+
/**
|
|
8446
|
+
* A map of package names to booleans controlling whether each package may
|
|
8447
|
+
* execute lifecycle scripts during install. `true` allows the scripts;
|
|
8448
|
+
* `false` silently blocks them.
|
|
8449
|
+
*
|
|
8450
|
+
* pnpm 11+ replaced `onlyBuiltDependencies` and `ignoredBuiltDependencies`
|
|
8451
|
+
* with this single map. Configulator translates the deprecated input
|
|
8452
|
+
* fields into `allowBuilds` automatically and emits both legacy and new
|
|
8453
|
+
* keys in the generated YAML for pnpm 10/11 cross-version compatibility.
|
|
8454
|
+
*
|
|
8455
|
+
* See: https://pnpm.io/settings#allowbuilds
|
|
8456
|
+
*/
|
|
8457
|
+
allowBuilds: {
|
|
8458
|
+
[packageName: string]: boolean;
|
|
8459
|
+
};
|
|
8132
8460
|
/**
|
|
8133
8461
|
* A list of package names that are allowed to execute "preinstall",
|
|
8134
8462
|
* "install", and/or "postinstall" scripts during installation. Only the
|
|
@@ -8141,6 +8469,12 @@ declare class PnpmWorkspace extends Component {
|
|
|
8141
8469
|
* versions of the package may run lifecycle scripts:
|
|
8142
8470
|
*
|
|
8143
8471
|
* See: https://pnpm.io/settings#onlybuiltdependencies
|
|
8472
|
+
*
|
|
8473
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8474
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8475
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8476
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8477
|
+
* supplied here translate to `allowBuilds[<package>] = true`.
|
|
8144
8478
|
*/
|
|
8145
8479
|
onlyBuiltDependencies: Array<string>;
|
|
8146
8480
|
/**
|
|
@@ -8152,6 +8486,12 @@ declare class PnpmWorkspace extends Component {
|
|
|
8152
8486
|
* lifecycle scripts are not needed.
|
|
8153
8487
|
*
|
|
8154
8488
|
* https://pnpm.io/settings#ignoredbuiltdependencies
|
|
8489
|
+
*
|
|
8490
|
+
* @deprecated Deprecated in pnpm 11; configulator emits both legacy and
|
|
8491
|
+
* new keys for cross-version compatibility — pnpm 10 honors
|
|
8492
|
+
* the legacy keys, pnpm 11 honors `allowBuilds`. Prefer
|
|
8493
|
+
* `allowBuilds` as the input field going forward; entries
|
|
8494
|
+
* supplied here translate to `allowBuilds[<package>] = false`.
|
|
8155
8495
|
*/
|
|
8156
8496
|
ignoredBuiltDependencies: Array<string>;
|
|
8157
8497
|
/**
|
|
@@ -9418,6 +9758,25 @@ declare class AwsCdkProject extends awscdk.AwsCdkTypeScriptApp {
|
|
|
9418
9758
|
addDeploymentTarget(options: AwsDeploymentTargetOptions): AwsDeploymentTarget;
|
|
9419
9759
|
}
|
|
9420
9760
|
|
|
9761
|
+
/**
|
|
9762
|
+
* Emits a `.nvmrc` file at the project root containing the Node.js
|
|
9763
|
+
* version pinned in {@link VERSION.NODE_WORKFLOWS}.
|
|
9764
|
+
*
|
|
9765
|
+
* The file gives `nvm`, `fnm`, `volta`, and IDE plugins a single
|
|
9766
|
+
* source of truth for the Node version local development should use,
|
|
9767
|
+
* matching the version every CI workflow installs via
|
|
9768
|
+
* `actions/setup-node`. Without it, devs on hosts whose default Node
|
|
9769
|
+
* is older than the floor required by tooling (Astro 6, Starlight,
|
|
9770
|
+
* pnpm 11) silently break after a regen.
|
|
9771
|
+
*
|
|
9772
|
+
* Projen has no built-in `.nvmrc` knob — the closest input is
|
|
9773
|
+
* `workflowNodeVersion`, which only drives CI. This component closes
|
|
9774
|
+
* the local-dev gap.
|
|
9775
|
+
*/
|
|
9776
|
+
declare class Nvmrc extends Component {
|
|
9777
|
+
constructor(project: Project$1);
|
|
9778
|
+
}
|
|
9779
|
+
|
|
9421
9780
|
/**
|
|
9422
9781
|
* Provides structured project metadata consumed by AgentConfig, skills,
|
|
9423
9782
|
* and other configulator features at synthesis time.
|
|
@@ -9679,4 +10038,80 @@ declare const COMPLETE_JOB_ID = "complete";
|
|
|
9679
10038
|
*/
|
|
9680
10039
|
declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
|
|
9681
10040
|
|
|
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 };
|
|
10041
|
+
/**
|
|
10042
|
+
* Rewrites every `pnpm/action-setup@vX` step `uses` field reachable from
|
|
10043
|
+
* a project's GitHub component (and its sub-projects) to the version
|
|
10044
|
+
* pinned in {@link VERSION.PNPM_ACTION_SETUP_VERSION}.
|
|
10045
|
+
*
|
|
10046
|
+
* Projen's NodeProject and JsiiProject both hardcode a `pnpm/action-setup`
|
|
10047
|
+
* pin in their generated build / release / upgrade workflows. When that
|
|
10048
|
+
* pin lags behind the version required by the pnpm release we run in CI
|
|
10049
|
+
* (e.g. v5 cannot install pnpm 11), the action installs the wrong pnpm
|
|
10050
|
+
* version and CI breaks. This helper post-patches every workflow owned
|
|
10051
|
+
* by `project.github` so the pin tracks our centralised constant.
|
|
10052
|
+
*
|
|
10053
|
+
* Two passes run in sequence:
|
|
10054
|
+
*
|
|
10055
|
+
* 1. **Eager step arrays.** Walks every {@link Component} on the
|
|
10056
|
+
* project (and on its sub-projects) for the well-known fields
|
|
10057
|
+
* enumerated in {@link STEP_ARRAY_FIELDS}. Projen's BuildWorkflow
|
|
10058
|
+
* and Release components hold their pnpm-setup steps in these
|
|
10059
|
+
* arrays before the workflow's lazy step closures resolve them.
|
|
10060
|
+
* 2. **Direct workflow jobs.** Walks every job step on every
|
|
10061
|
+
* `GithubWorkflow` for jobs whose steps are eagerly populated
|
|
10062
|
+
* (e.g. the upgrade workflow). Steps held inside lazy closures
|
|
10063
|
+
* are skipped — those are reached via pass 1.
|
|
10064
|
+
*
|
|
10065
|
+
* @param project The project whose GitHub workflows should be patched.
|
|
10066
|
+
*/
|
|
10067
|
+
declare function pinPnpmActionSetup(project: Project$1): void;
|
|
10068
|
+
|
|
10069
|
+
/**
|
|
10070
|
+
* Rewrites every Node-version source reachable from a project's
|
|
10071
|
+
* GitHub component (and its sub-projects) to the version pinned in
|
|
10072
|
+
* {@link VERSION.NODE_WORKFLOWS}.
|
|
10073
|
+
*
|
|
10074
|
+
* Projen hardcodes `node-version: "lts/*"` in its release workflow
|
|
10075
|
+
* generator (via {@code Publisher.workflowNodeVersion}); configulator-
|
|
10076
|
+
* owned workflows already pass through {@link VERSION.NODE_WORKFLOWS}.
|
|
10077
|
+
* Without this patch, the two sources disagree (release workflows
|
|
10078
|
+
* install whatever Node lts/* resolves to; build / upgrade workflows
|
|
10079
|
+
* install Node 24). This helper post-patches every Node-version
|
|
10080
|
+
* source so a single source of truth — the centralised
|
|
10081
|
+
* {@link VERSION.NODE_WORKFLOWS} constant — drives every workflow
|
|
10082
|
+
* this repo and its consumers generate.
|
|
10083
|
+
*
|
|
10084
|
+
* Three passes run in sequence:
|
|
10085
|
+
*
|
|
10086
|
+
* 1. **Component Node-version fields.** Walks every {@link Component}
|
|
10087
|
+
* on the project (and on its sub-projects) and rewrites the
|
|
10088
|
+
* well-known fields enumerated in {@link NODE_VERSION_FIELDS} —
|
|
10089
|
+
* notably {@code Publisher.workflowNodeVersion}, which projen
|
|
10090
|
+
* renders into {@code tools.node.version} on the publish job
|
|
10091
|
+
* (and ultimately into the synthesized
|
|
10092
|
+
* `actions/setup-node` step).
|
|
10093
|
+
* 2. **Component step arrays.** Walks every {@link Component} on the
|
|
10094
|
+
* project (and on its sub-projects) for the well-known step-array
|
|
10095
|
+
* fields enumerated in {@link STEP_ARRAY_FIELDS}. Projen's
|
|
10096
|
+
* BuildWorkflow and Release components hold their pre/post-build
|
|
10097
|
+
* steps in these arrays before the workflow's lazy step closures
|
|
10098
|
+
* resolve them.
|
|
10099
|
+
* 3. **Direct workflow jobs.** Walks every job on every
|
|
10100
|
+
* `GithubWorkflow`. For each job:
|
|
10101
|
+
* - If `tools.node.version` is set (the lazy `setupTools` path
|
|
10102
|
+
* that synthesises the setup-node step at render time),
|
|
10103
|
+
* rewrite it.
|
|
10104
|
+
* - If `steps` is already an array (i.e. not a lazy closure),
|
|
10105
|
+
* patch any `actions/setup-node` step in place.
|
|
10106
|
+
*
|
|
10107
|
+
* The step-level patch only mutates `with["node-version"]`. Other
|
|
10108
|
+
* fields on `with` (`cache`, `cache-dependency-path`,
|
|
10109
|
+
* `registry-url`, `package-manager-cache`, etc.) are preserved
|
|
10110
|
+
* untouched. The step's `uses` field is also left alone — this
|
|
10111
|
+
* helper pins the input, not the action version pin.
|
|
10112
|
+
*
|
|
10113
|
+
* @param project The project whose GitHub workflows should be patched.
|
|
10114
|
+
*/
|
|
10115
|
+
declare function pinSetupNodeVersion(project: Project$1): void;
|
|
10116
|
+
|
|
10117
|
+
export { AGENT_MODEL, AGENT_PLATFORM, AGENT_REGISTRY_ENTRIES, AGENT_RULE_SCOPE, AGENT_TIER_ROLES, AGENT_TIER_VALUES, AUDIT_CATEGORY_ORDER, type AgentCommand, AgentConfig, type AgentConfigOptions, type AgentExpansionRules, type AgentFeaturesConfig, type AgentModel, type AgentPathsConfig, type AgentPlatform, type AgentPlatformOverrides, type AgentProcedure, type AgentRegistryEntry, 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 ClaudeMdConfig, 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, SUPPRESSED_WORKFLOW_RULE_NAMES, 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, buildAgentRegistryRule, buildBaseBundle, buildBcmWriterBundle, buildBuiltInBundles, buildBusinessModelsBundle, buildCheckBlockedProcedure, buildCompanyProfileBundle, buildCustomerProfileBundle, buildDocsSyncBundle, buildIndustryDiscoveryBundle, buildMaintenanceAuditBundle, buildMeetingAnalysisBundle, buildOrchestratorConventionsContent, buildPeopleProfileBundle, buildRegulatoryResearchBundle, buildReport, buildRequirementsAnalystBundle, buildRequirementsReviewerBundle, buildRequirementsWriterBundle, buildResearchPipelineBundle, buildSoftwareProfileBundle, buildStandardsResearchBundle, buildUnblockDependentsProcedure, bundleNameForWorkflowRule, 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, isSuppressedWorkflowRule, 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 };
|