UCAAS-1486: remote capability gating and registry alignment - #147
Merged
Conversation
…code. Gate outbound invokes when negotiate snapshot is applied and mode is enabled, add ROSE_REJECT_REMOTENOTCAPABLE, module-capability helpers, and registry-aligned lookup APIs. Bump esnacc to 7.0.15. Co-authored-by: Cursor <cursoragent@cursor.com>
Pure CMD and bash helpers configure CMake when needed, run cmake --build --target compiler, and resolve the compiler path from CMakeCache. Wire ROSE/makesnaccrose and samples/prepare entry points. Co-authored-by: Cursor <cursoragent@cursor.com>
Expose LookUpModuleName on SnaccROSEBase, fix C++ remote-capability harness assertions, extend TS gluecode unit tests, and add run_gluecode_tests scripts. Co-authored-by: Cursor <cursoragent@cursor.com>
Add GetInt/GetLong/GetInt64 and GetUInt/GetULong/GetUInt64 with range and sign checks that throw INTEGER_ERROR. GetInt and GetUInt return plain int and unsigned int for cast-free use (e.g. printf). Add matching TryGet* overloads for non-throwing reads; refactor existing conversion paths to share decode logic. Co-authored-by: Cursor <cursoragent@cursor.com>
Extend snacc-assert.h with optional ASSERT messages, printf-style ASSERT_FAILED, and C-compatible inline helpers. Use descriptive asserts in SnaccROSEBase for remote-capability rejects, encoding detection, and registration preconditions; add matching snaccAssert helpers in TS gluecode. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Route generated RegisterOperations through SnaccROSEComponent static helpers, keep module metadata in generated .cpp only, and restore inline m_iid for switch dispatch. Use ordered loaded-module maps with debug-only operation names and TS opName metadata. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep gluecode limited to compiler-emitted runtime files; run scripts and build docs point at the dedicated test folder. Co-authored-by: Cursor <cursoragent@cursor.com>
Test runners assemble tests/workdir/gluecode from gluecode plus sample ENetUC_Common stubs instead of copying fixtures into the compiler gluecode tree. Co-authored-by: Cursor <cursoragent@cursor.com>
Copy gluecode and sample stubs directly into tests/workdir instead of nesting another gluecode folder. Co-authored-by: Cursor <cursoragent@cursor.com>
Emit OPID_* macros from generated ROSE headers instead of duplicating numeric operation IDs in RegisterOperation calls. Co-authored-by: Cursor <cursoragent@cursor.com>
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.
Related
feature/UCAAS-1486-remote-capabilityongitlab.estos.de/estos/windows-global/global(open MR there)feature/UCAAS-1486-interface-handshakeon procall_developSummary
ROSE_REJECT_REMOTENOTCAPABLE, negotiate snapshot apply/clear,IsSupportedOperation).getLoadedModules/GetLoadedModules,lookUp*/LookUp*, includingLookUpModuleName).ensure_compilerCMD/bash scripts and gluecode test runners for CMake-based esnacc builds.AsnIntgetters (GetInt/GetUIntreturn plainint/unsigned int) andTryGet*accessors.ASSERTmessages,ASSERT_FAILEDprintf-style helper, C-compatible header; descriptive asserts in ROSE base and TS gluecode.Test plan
cpp-lib-sample-runtime-tests—ModuleRegistry*andRemoteCapability*(10 tests)scripts/run_gluecode_tests.bat(12 tests)node-clientpnpm test(11 tests)