Repository navigation
Conversation
aferaudo
force-pushed
the
feat/valid-symbol-mask
branch
2 times, most recently
from
October 13, 2026 23:40
7b242eb to
1304a15
Compare
12 of 19 tasks
1 of 8 tasks
aferaudo
force-pushed
the
feat/valid-symbol-mask
branch
from
November 9, 2026 19:05
1304a15 to
c7adb27
Compare
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.
Summary
validSymbolMask(valid_symbol_maskin JSON). Bit s set means symbol s of the slot is uplink. DL and guard symbols of a mixed slot are 0, and FDD sets all bits. The gNB computes the mask; this PR carries it from gNB to codelet to controller to dApp, the same way OAI's L1-KPM SM does.Type of change
docs/service-models.mdand the codelet README)Linked issue
None.
Mandatory test checklist
valid_symbol_mask = 0x3FFF;0x3C00,0x3FFFand0with the APER and JSON encoders. All three decode back to the same value, andnRxAntis still 4.0x3C00): not possible on our RU. ocudu-e3-private#4 explains why. The gNB's mask for slots 7 and 17 was checked offline instead.mainafter Publish UL slots through a native gNB helper instead of a jbpf copy #8 was merged. The code changes are byte-identical to the commit that ran over the air; only the docs moved, intodocs/service-models.md. CI builds it as well.VERSION,libe3.pc, new dependencies: N/A, none changed.CI checklist
build and measureis green for the head commit (to check once CI has run).scripts/check_commit_trailers.py --base origin/main --head HEAD: it passes (Assisted-bytrailer).Twin-repo coordination
Two contracts change:
jbpf_ran_slot_ctxgrows from 47 to 49 B, and the verifier checks 49.e3_slot_desckeeps its size: the mask uses 2 of its reserved bytes. Paired PR: wineslab/ocudu-e3-private#4.validSymbolMaskpresence bit since the grammar update in Publish UL slots through a native gNB helper instead of a jbpf copy #8, so there is no new grammar. A dApp that ignores the field keeps working, and a missing mask should be read as0x3FFF.Workflow confirmation
main(fbdf325, after Publish UL slots through a native gNB helper instead of a jbpf copy #8), with no merge commits.CONTRIBUTING.md(libe3's, applied to this repository).🤖 Generated with Claude Code