Skip to content

refactor(secrets): consume @quantum-l9/infisical-config (delete inline loader)#12

Draft
cryptoxdog wants to merge 1 commit into
mainfrom
claude/seo-bot-consume-infisical-config
Draft

refactor(secrets): consume @quantum-l9/infisical-config (delete inline loader)#12
cryptoxdog wants to merge 1 commit into
mainfrom
claude/seo-bot-consume-infisical-config

Conversation

@cryptoxdog

Copy link
Copy Markdown
Collaborator

⚠️ Draft — do not merge until @quantum-l9/infisical-config@1.0.0 is published

CI (npm install) will stay red until the package is live on GitHub Packages and this repo has read access to it. Once it's published, this goes green and is ready to merge.

What (Pillar 4 of the unified secrets plan)

Swaps the inline src/core/secrets.ts onto the shared, published @quantum-l9/infisical-config package — the same consolidation pattern already used for @quantum-l9/llm-router. One place now owns "how every service loads secrets."

Changes

  • src/index.ts + src/core/database/migrate.ts: import { loadSecrets } from '@quantum-l9/infisical-config', passing the pino module logger (loadSecrets({ logger: createModuleLogger('secrets') })).
  • Delete src/core/secrets.ts and tests/core/secrets.test.ts — the loader + its 9 tests now live in the package.
  • Drop the direct @infisical/sdk dependency (the package brings it transitively).

Behaviour is unchanged: the loader is still optional/no-op when Infisical isn't configured, non-destructive, fail-soft, lazy-imports the SDK.

Validation

Built the package locally and file-linked it into SEO-Bot: tsc --noEmit = 0, vitest = 24/24 (was 31; −7 secrets tests that moved to the package). CI will re-confirm against the published package.

🤖 Generated with Claude Code


Generated by Claude Code

…e loader)

Pillar 4: swap the inline src/core/secrets.ts onto the shared, published
@quantum-l9/infisical-config package — the same consolidation pattern used for
@quantum-l9/llm-router (one place to change how every service loads secrets).

- index.ts + migrate.ts import loadSecrets from '@quantum-l9/infisical-config'
  and pass the pino module logger.
- Delete src/core/secrets.ts and tests/core/secrets.test.ts (now owned + tested
  in the package).
- Drop the direct @infisical/sdk dependency (the package brings it transitively).

Validated locally against the package build (file link): tsc=0, vitest 24/24.

NOTE: do not merge until @quantum-l9/infisical-config@1.0.0 is published to
GitHub Packages and the repo has read access — CI install depends on it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VqWfuXWTn5jo8f5fnkSozx
@sonarqubecloud

Copy link
Copy Markdown

cryptoxdog added a commit that referenced this pull request Jul 19, 2026
…loader) (#22)

Records the two intentionally-deferred items with their exact unblock triggers:
- the serp:execute-surpass-plans enable-flip (gated on real per-client
  site_deployment config in the DB; safe-by-construction at the
  siteConfigFromClient boundary), and
- P4a consuming @quantum-l9/infisical-config (draft PR #12; gated on the
  package publishing + package read grant).


Claude-Session: https://claude.ai/code/session_01VqWfuXWTn5jo8f5fnkSozx

Co-authored-by: Igor Beylin <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants