Skip to content

Conversation

@jviotti
Copy link
Member

@jviotti jviotti commented Jan 30, 2026

Signed-off-by: Juan Cruz Viotti [email protected]

@jviotti jviotti merged commit f1c1cc5 into main Jan 30, 2026
12 checks passed
@jviotti jviotti deleted the msvc-fix branch January 30, 2026 20:25
@augmentcode
Copy link

augmentcode bot commented Jan 30, 2026

🤖 Augment PR Summary

Summary: This PR updates the vendored sourcemeta/core dependency to commit 4e9d280a8a… and pulls in the corresponding build/config and library changes.

Changes:

  • Bumps DEPENDENCIES to the newer Core revision.
  • Adds a new optional Core html component (CMake option + config wiring) and introduces an HTML encoder/escape API plus convenience element helpers.
  • Refactors JSON parsing callbacks to avoid constructing temporary JSON values: adds ParseContext, passes array indices / object property names via StringView, and updates the JSON parser and YAML parser accordingly.
  • Updates JSON APIs: introduces StringView, adds array contains(StringView), and renames string contains to includes (string/char overloads).
  • JSON Pointer changes: removes mangle, adds slice(), and introduces pointer hash/equality helpers for heterogeneous lookups.
  • JSON Schema framing improvements: stronger keyword/URI validation errors, better base/dialect walking, pointer-to-location caching, and reachability analysis; SchemaFrame is now non-copyable due to internal caches.
  • Schema transformer refactor: rule metadata (mutates/reframe_after_transform), rule exclusion via a schema keyword, and restructuring of the apply/check flow.
  • AlterSchema/editorSchema extensions are updated to use the new transformer/framing capabilities and add/remove multiple transformation rules; for_editor now assumes the input schema is already bundled.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 2 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

callback(entry_pointer, rule->name(), rule->message(), outcome);
continue;
}
rule->transform(current, outcome);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SchemaTransformer::apply() no longer catches SchemaAbortError around rule->transform(...), so a non-fixable rule (default SchemaTransformRule::transform) will now abort the whole apply instead of being reported via the callback/result. This changes the error-handling contract and could turn previously recoverable transform failures into hard failures.

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

}
const auto source_location{frame.traverse(
source_pointer.initial(),
sourcemeta::core::SchemaFrame::LocationType::Subschema)};
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reachability check only calls frame.traverse(..., LocationType::Subschema) for both reference sources and definition entries; if a referenced schema is framed as a Resource (or otherwise not present as a Subschema location), this may treat a reachable reference as unreachable and incorrectly delete a referenced definition.

Other Locations
  • vendor/core/src/extension/alterschema/common/orphan_definitions.h:111

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

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