Repository navigation
Conversation
This was referenced Oct 26, 2026
Open
7 tasks done
This was referenced Oct 29, 2026
The merge brings PR4's import-order fix, with no change to this PR's own lines.
Code Review ✅ Approved🟡 Medium risk · Adding captured-release SHACL validation and deprecation-impact reporting could misstate ontology constraints or affected assets if evaluation is incorrect. Adds a read-only validation endpoint for captured native ontology releases, combining structural checks, native SHACL findings, current asset bindings, and captured dependents of newly deprecated definitions. No issues found during review. VerificationRules No rules evaluated Functional validation Not enabledAuto-approval Not enabledFor more verification details, comment OptionsDisplay: compact → Showing compact verification results. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Powered by Gitar — free for open source |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The stack targets release 2.1.0.
main→ PR1 #35990 → PR2 #35994 → PR3 #35997 → PR4 #35995. Two chains start at PR4:This PR targets PR4 #35995. Its child is PR6 #36187. PR9, PR11, PR13, PR14 and PR16 are not published yet.
Current assessment for
acd9930a2d7, recorded 2026-10-29.Verdict. PASS. Independent source and comment review passed at
ced0a567af9, as the checklist below records. The plan audit at that head closed with no change. This head comes from two clean merges of PR4, first4868c52ace0withmainca9b8c04a93, then the formatting fixcf429f94388. Neither merge touches a file that PR5 changes. PR5's patch-id stays9fe014fe8ceover 17 files, so the verdict carries to this head. No minor issue is declared.Test evidence at this head. The first merge's gates ran on the staged tree, which is the commit
073399e00ab's tree7fa37383354. Package andspotlesspassed, and 506 unit tests in 33 classes passed. The 9 database classes ran on local MySQL 9.3 and PostgreSQL 14, one new database per run. All passed apart from two invocations ofOntologyEntityDAOTest.reviewLocksSeeEditsAndArchivalCommittedWhileWaiting, whose rows share one database on the local engines. TypeScript reports 0 errors, and the 5 PR4 Jest suites the merge carries pass 75 of 75. The second merge's staged tree is the commit's treec33d98abb3d. It changes only PR4's two graph-view files, where Jest passes 30 of 30 and ESLint reports 0 errors.CI. This PR is a draft, so CI skips the build, test and Collate jobs,
maven-collate-ciamong them. Every check that ran at this head passes.Still owed. Docker is down on the build machine, so none of these has run. Run each IT on
-Pmysql-elasticsearchand then-Ppostgres-opensearch, and confirm aTests run:line.IndependentOntologyReleaseValidationIT, this PR's own IT.IndependentOntologyInverseITandIndependentOntologyAxiomIT.main's changes select.OntologyEntityDAOTest.reviewLocksSeeEditsAndArchivalCommittedWhileWaiting, and the container-backed classes once under Testcontainers onmysql:8.0andpostgres:15:OntologyConceptStatusStorageTest,OntologyDerivedStatusStorageTest,OntologyEntityDAOTest,OntologyReleaseComparisonStorageTest,OntologyReleaseDAOTest,OntologyReleaseReviewListTest,OntologyWorkingStateTest,OntologyHierarchyStorageTestandOntologyPropertyInverseStorageTest.OntologyEntityDAOTest.existingWorkflowEngineCountsDistinctVotesAndFailsClosedon MySQL. It passed locally only withnullDatabaseMeansCurrent=true, because the shared local server held another run's Flowable tables.AI mode.
main's Ontology Studio AI-mode restyle #36433 now gates new screens on AI mode. PR5 adds no UI control. Its only UI file is the generated typegenerated/api/data/ontologyReleaseValidation.ts, so AI mode lacks none of its controls.Not verified yet. This PR is verified only when its unit, live and performance boxes in the plan are all checked. The operator lands the stack.
Describe your changes
Fixes #36182
Add a read-only validation report for a captured native ontology release. It combines structural checks and native SHACL findings with current authorized asset bindings and captured dependents of newly deprecated definitions.
This is PR5 of the sixteen-part Ontology Studio program for release 2.1.0. It targets PR4, #35995. PR6 will build on this branch. This draft has passed source review and focused unit checks; current database, live and performance verification remains open.
Type of change
High-level design
GET /api/v1/ontologyReleases/{id}/validationvalidates sealed members and the literal captured base. A bounded cache stores detached immutable findings, with authorization repeated on every request. Current bindings are resolved after the cache lookup. Warnings remain distinct from violations, details cap at 1,000, andlogicalCheckremainsNOT_RUN.The existing catalog SHACL and signed glossary-impact contracts remain unchanged. See the captured-target and cache decision. When the later PR12 is integrated, the validation caller must drain its paged binding resolver.
Tests
Use cases covered
Captured targets, foreign references, enum findings, warning severity, exact counts and truncation, detached cache responses, literal-base comparison, cache admission and eviction. HTTP tests also cover authorization, missing current definitions, fresh bindings and deprecation impacts.
Unit tests
At
7a8ba8450c8, the merge gate ran 438 tests in 30 unit classes with no failures. Five container-backed classes stop on the missing Docker socket and are owed. An earlier focused run passed 131 tests across these nine suites:OntologyReleaseValidationTest,NativeOntologyShapesTest,OntologyReleaseProjectionTest,RdfShaclReportMapperTest,RdfShaclValidatorTest,OntologyReleaseComparisonTest,Rdf12CompatibilityTest,RdfClasspathResourceTest, andRdfRuleInputProjectionTest.Java, TypeScript, Python and ANTLR generation completed. All 1,101 schemas parse; 1,082 licensed TypeScript outputs are present, and 19 schemas independently produce empty output successfully. The Python validation model passes round-trip and four invalid-input checks. Spotless, normal commit hooks and impact-map ownership checks pass. Current whole-class coverage remains pending.
Backend integration tests
IndependentOntologyReleaseValidationITis added. No integration test has run at7a8ba8450c8, because Docker is down on the build machine. The stack block above lists what is owed. This draft does not treat historical integration results as proof for the current composition.Ingestion integration tests
Not applicable. There is no ingestion implementation change.
Playwright and UI recording
Not applicable to this backend-only PR. The frontend change is the generated response contract; the user interface is PR6.
Manual verification
Current live checks remain pending. The required checks capture and validate a clean release, inspect a deprecated class with visible bindings, and verify denial after release, member or asset access changes. The original cold/warm validation and structure-regression performance checks also remain open.
Checklist
ced0a567af91f20646b85d88fda2088af51aafad, against the current PR4 parent.