Skip to content

Raju/config refactor#1163

Closed
raju-opti wants to merge 1 commit into
masterfrom
raju/config-refactor
Closed

Raju/config refactor#1163
raju-opti wants to merge 1 commit into
masterfrom
raju/config-refactor

Conversation

@raju-opti

Copy link
Copy Markdown
Contributor

Summary

  • The "what"; a concise description of each logical change
  • Another change

The "why", or other context.

Test plan

Issues

@raju-opti raju-opti force-pushed the raju/config-refactor branch from be4c02b to f5de932 Compare July 8, 2026 09:29
@coveralls

coveralls commented Jul 8, 2026

Copy link
Copy Markdown

Coverage Status

coverage: 77.732% (+0.03%) from 77.701% — raju/config-refactor into master

- Simplify createProjectConfig to accept a datafile string directly
  instead of string | object, inlining datafile validation
- Remove the separate config_validator module and its tests
- Break monolithic config builder into focused parse functions:
  parseAudienceConfig, parseAttributeConfig, parseGroupConfig,
  parseRolloutConfig, parseIntegrationConfig, parseExperimentConfig,
  parseFeatureFlagConfig
- Eliminate mutation-safe datafile copy in favor of direct construction
- Refactor redundant iterations over experiments and feature flags
- Remove lodash dev dependency

Benchmarks show ~10% faster config parsing for 3-4 MB datafiles.
Removing createMutationSafeDatafileCopy also fixes a memory issue
where it allocated ~4x the datafile size in shallow copies per call,
causing OOM under repeated parsing of large datafiles.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@raju-opti raju-opti force-pushed the raju/config-refactor branch from f5de932 to e8468c6 Compare July 8, 2026 10:40
@raju-opti raju-opti closed this Jul 8, 2026
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