-
Notifications
You must be signed in to change notification settings - Fork 17
refactor(instrumentation)!: Schema-based instrumentation architecture #699
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
63 commits
Select commit
Hold shift + click to select a range
672b81b
Remove legacy model crates
johanpel 4a02eba
Move entity references into query engine UI
johanpel 8a4d84b
Fix UI review Markdown formatting
johanpel ed67ad3
Generalize context inventory indexing
johanpel 5905386
Remove unused context entity indexing
johanpel 8fd57a5
Simplify FSM event analysis
johanpel ae410f6
Restore reusable query engine analyzer
johanpel 40b7f1b
Simplify entity analysis traits
johanpel 90081e1
Simplify FSM traits
johanpel 0463214
Align runtime FSM transitions with analysis traits
johanpel ab33252
Fix native entity timestamp test
johanpel f448fdd
Decouple runtime resources from FSM analysis
johanpel e5a219f
Remove stdlib resource classification helpers
johanpel 2e1f658
Add scoped entity analysis interface
johanpel f20b55f
Add scoped entity collection interface
johanpel d4dec17
Expose runtime resource scope relationships
johanpel d0b5646
Add query engine scope relationships
johanpel e2eafd5
Expose query engine scope collection
johanpel 6e3ca74
Expose query engine view scope collection
johanpel f82a785
Add runtime reference tree analysis
johanpel 483734c
Represent resource roles independently of hierarchy
johanpel bfadfd6
Derive resource hierarchy from reference tree
johanpel 474f50f
Expose simulator reference tree
johanpel ced617b
Use schema-native simulator resource entities
johanpel 30e4fc0
Add simulator query engine analysis boilerplate
johanpel 9102418
Replace simulator runtime resources with schema entities
johanpel 2384c62
Log simulator schema entity counts
johanpel aa2af02
Use schema-native simulator query engine analysis
johanpel 227dd04
Remove concrete query engine compatibility model
johanpel f0f4e04
Derive resource scopes from reference trees
johanpel 98ac06d
Move task analysis into simulator boilerplate
johanpel 9258f17
Fix simulator task thread timelines
johanpel 529dd9e
Remove legacy documentation
johanpel f3f4303
Fix native FSM type name test
johanpel aaae43d
Scope simulator tasks to query operators
johanpel fc295b2
Fix entity validation message
johanpel e114870
Reject nil simulator task ids
johanpel 39124aa
Fix analyzer entity documentation link
johanpel db49fbb
Remove unused analyzer instant trait
johanpel 76d004a
Rename native entity constructor
johanpel 838a295
Move FSM declarations into UI crate
johanpel afc98cf
Tweak more docs
johanpel 6347e6a
Expose closing FSM transitions
johanpel 57792cd
Reject ambiguous FSM transition order
johanpel c1fb0dd
Validate FSM transition topology
johanpel 8042c19
Remove handwritten boilerplate test
johanpel b3465ad
Consolidate reference tree analyzer
johanpel c45f8eb
Add a comment
johanpel be0cde7
Merge remote-tracking branch 'upstream/main' into schema-migrate-full
johanpel fe27e75
Remove legacy documentation directory
johanpel 603ddeb
Make quent-open compatibility revision-aware
johanpel 4cef158
Move context indexing into generic analyzer
johanpel fdf8369
Address quent-open compatibility review
johanpel fb60ef7
Associate accumulators directly with event types
johanpel 961cfa8
Handle empty FSM state lookup
johanpel 8491546
Keep native usage spans private
johanpel 0101027
Name native FSM inline capacity
johanpel d8a5eca
Name resource usage inline capacity
johanpel 58baaac
Preallocate resource tree identifiers
johanpel 837178c
Avoid collecting simulator graph indices
johanpel a47a38e
Validate initial FSM transitions
johanpel 9852c5f
Address final review nits
johanpel 4a09172
Merge upstream main and update compatibility boundary
johanpel File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,28 +1,28 @@ | ||
| # Agent instructions | ||
|
|
||
| ## Temporary schema migration freeze | ||
| ## `quent-open` compatibility | ||
|
|
||
| Major refactors are in progress to remove proof-of-concept technical debt and | ||
| complete the schema-based instrumentation architecture: | ||
| `quent-open` builds a viewer against the Quent revision recorded in an | ||
| artifact's `model.qmi`. Existing artifacts must remain openable when public | ||
| crates, package names, features, or APIs used by the generated wrapper change. | ||
|
|
||
| - [#638: schema-based C++ and Python generators][pr-638] | ||
| - [#699: schema-based instrumentation architecture][pr-699] | ||
| Before making such a breaking change: | ||
|
|
||
| Before starting work that affects the areas below, check whether both pull | ||
| requests have merged. Until both have merged, do not make significant changes | ||
| to: | ||
| - Add an immutable full commit SHA from `upstream/main` immediately before the | ||
| change as a compatibility boundary. | ||
| - Select the complete wrapper contract from Git ancestry before building. Do | ||
| not use failed builds or compiler error text for feature detection. | ||
| - Retain the wrapper generation path required by revisions before the boundary. | ||
| - Do not move or remove an existing boundary while artifacts may reference | ||
| revisions on either side of it. | ||
| - Extend the `quent-open` compatibility test to cover the preserved path. | ||
|
|
||
| - `quent-model` and `quent-model-macros` (`crates/model`, | ||
| `crates/model-macros`) | ||
| - `quent-codegen` (`crates/codegen`) | ||
| - `quent-stdlib` and `quent-query-engine-model` (`crates/stdlib`, | ||
| `domains/query_engine/model`) | ||
| - related examples, tests, and minor crates being removed or migrated by either | ||
| pull request | ||
| A predecessor SHA is a valid boundary only when the breaking change is the next | ||
| change merged into `upstream/main`. If that ordering cannot be guaranteed, use | ||
| the final merge commit or another commit that unambiguously contains the new | ||
| contract. With a predecessor boundary, only strict descendants use the new | ||
| contract; older and unrelated branch revisions use the preserved contract. | ||
|
|
||
| If requested work overlaps these areas while either pull request remains open, | ||
| report the conflict and ask the user how to proceed before editing. This | ||
| restriction expires after both pull requests merge. | ||
|
|
||
| [pr-638]: https://github.com/rapidsai/quent/pull/638 | ||
| [pr-699]: https://github.com/rapidsai/quent/pull/699 | ||
| Once releases are available, prefer the first release tag containing a new | ||
| wrapper contract as its compatibility boundary. Keep full-SHA boundaries for | ||
| artifacts produced from untagged development revisions. | ||
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.