Skip to content

Merge beta into next#449

Draft
seansica wants to merge 231 commits intonextfrom
beta
Draft

Merge beta into next#449
seansica wants to merge 231 commits intonextfrom
beta

Conversation

@seansica
Copy link
Contributor

No description provided.

seansica and others added 30 commits June 13, 2025 10:41
- change all  stix component pointers to simple object check
- validation will be replaced with custom ADM middleware
- middleware now accepts stixSchemasorSchemas (single schema or array of schemas)
- software router now passes [toolSchema, malwareSchema] instead of softwareSchema
- no more special handling for softwareSchema
…etween validation mechanisms

- VALIDATE_WITH_ADM_SCHEMAS: when enabled, requests are validated with the ATT&CK Data Model Zod schemas
- VALIDATE_WITH_LEGACY_SCHEMAS: when enabled, requests are validated with the preexisting, OpenAPI YAML-based spec files
…ng ADM validation

The ADM validation middlware now reads a runtime config value at request time to determine whether to perform validation
…untime config parameter

- The OpenApiValidator.middleware will attach to the global router ONLY if config.validateRequests.withOpenApi is enabled
- The default value for this config parameter is true, so the change is non-breaking
seansica and others added 16 commits February 5, 2026 15:14
Updated schemas and snapshot service: release tracks will automatically
receive the default member_sync config. The Update Config endpoint now
accepts member_sync configuration updates
…restriction

Zod v4.3.6+ disallows .omit(), .pick(), and .partial() on schemas that
already have .check() applied. Restructure schema composition to apply
operations in the safe order: base → .omit() → .partial() → .check().

- Import base schemas (without refinements) instead of full schemas
- Add getSchema() to compose schemas at request time in the correct order
- Simplify validateWorkspaceStixData() to accept STIX type strings
- Remove unused createWorkspaceStixSchema and type extraction helpers
- Remove ADM schema imports from all route files
@github-actions
Copy link

🎉 This PR is included in version 4.10.0-beta.5 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions
Copy link

🎉 This PR is included in version 4.10.0-beta.6 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions
Copy link

github-actions bot commented Mar 5, 2026

🎉 This PR is included in version 4.10.0-beta.7 🎉

The release is available on:

Your semantic-release bot 📦🚀

Move ADM validation from early-stage middleware into a late-stage step
within `create()` and `updateFull()`, restructured as ETL pipelines:
Analyze → Compose → Set Server Fields → Hooks → Validate → Persist.

- Remove `validation-middleware.js` and its imports from 15 route files
- Relocate ADM validation logic into `base.service.js` as the pipeline's
  validate step, ensuring validation runs against fully composed objects
- Strip server-controlled fields (`x_mitre_attack_spec_version`,
  `x_mitre_modified_by_ref`, ATT&CK external references) instead of
  rejecting them, with scaffolding for future server control of `id`,
  `created`, and `modified`
- Add `?dryRun=true` query parameter that short-circuits persistence in
  the actual create/update pipeline, replacing the deprecated
  `POST /api/validate` endpoint and eliminating validation/service drift
- Surface ADM validation warnings (e.g., non-standard `x_mitre_shortname`)
  in the response body alongside `stix` and `workspace`
- Add `toJSON`/`toObject` transforms to the base Mongoose schema and
  query-level exclusions to strip `_id`, `__v`, `__t` from all responses
- Define `dryRun` as a reusable OpenAPI component in `query-parameters.yml`
@github-actions
Copy link

github-actions bot commented Mar 9, 2026

🎉 This PR is included in version 4.10.0-beta.8 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants