Repository navigation
Remove the ComLoggerDp decoder script in favor of fprime-dp comlog - #6375
Conversation
The decoder now ships with fprime-gds as `fprime-dp comlog`; point the ComLoggerDp SDD at it instead of Svc/ComLoggerDp/scripts.
Coverage report — base
|
| Module | Line | Δ | Function | Δ | Branch | Δ |
|---|---|---|---|---|---|---|
Os/Generic |
90.28 | +0.20 | 89.13 | +0.00 | 75.67 | +0.77 |
Os/Posix |
71.03 | +0.39 | 87.50 | +0.00 | 50.89 | +0.00 |
Fw/DataStructures |
98.22 | +0.62 | 97.14 | +0.00 | 83.03 | +0.91 |
New modules
| Module | Line | Function | Branch |
|---|---|---|---|
Fw/Prm |
0.00 | 0.00 | 0.00 |
Modules without UTs
CFDP/Checksum/GTest, Drv/LinuxGpioDriver, Drv/LinuxI2cDriver, Drv/LinuxSpiDriver, Drv/Ports/DataTypes, Drv/PosixUartDriver, FppTestProject/FppTest/topology/async, FppTestProject/FppTest/topology/components/Comp, FppTestProject/FppTest/topology/components/Framework, FppTestProject/FppTest/topology/components/Receiver, FppTestProject/FppTest/topology/components/Sender, FppTestProject/FppTest/topology/guarded, FppTestProject/FppTest/topology/sync, FppTestProject/FppTest/topology/top_ports, FppTestProject/FppTest/topology/types, Fw/Com, Fw/Comp, Fw/FilePacket/GTest, Fw/Fpy, Fw/Obj, Fw/Port, Fw/Sm, Fw/Test, Fw/Types/GTest, Os/Models, Svc/Ccsds/Types, Svc/Ccsds/Utils, Svc/FatalHandler, Svc/Subtopologies/CdhCore, Svc/Subtopologies/ComCcsds, Svc/Subtopologies/ComCcsdsSdls, Svc/Subtopologies/ComFprime, Svc/Subtopologies/ComLoggerTee, Svc/Subtopologies/DataProducts, Svc/Subtopologies/DpCompression, Svc/Subtopologies/FileHandling, Svc/Subtopologies/FileHandlingCfdp, Svc/Subtopologies/FileHandlingCfdp/FileHandlingCfdpConfig, TestDeploymentsProject/Ref/DpDemo, TestDeploymentsProject/Ref/PingReceiver, TestDeploymentsProject/Ref/RecvBuffApp, TestDeploymentsProject/Ref/SendBuffApp, TestDeploymentsProject/Ref/Top, TestDeploymentsProject/Ref/TypeDemo, cmake/test/data/TestConfigDeployment, cmake/test/data/TestDeployment/TestBuildAutocoder, cmake/test/data/TestDeployment/TestDuplicateDirective, cmake/test/data/TestDeployment/TestHeaderAutocoder, cmake/test/data/TestDeployment/TestLinkDepends, cmake/test/data/TestDeployment/TestRelative, cmake/test/data/test-fprime-library/TestLibrary/TestComponent, cmake/test/data/test-fprime-library2/TestLibrary2/TestComponent
| ``` | ||
| 5. Data products are downlinked via the data product manager | ||
| 6. Ground can reconstruct the full telemetry stream from the data products using [`decode_comlogger_dp.py](../scripts/decode_comlogger_dp.py) in the [scripts](../scripts/) directory. | ||
| 6. Ground can reconstruct the full telemetry stream from the data products using `fprime-dp comlog`, the decoder shipped with [fprime-gds](https://github.com/nasa/fprime-gds). |
There was a problem hiding this comment.
[Correctness] must fix fprime-dp comlog does not exist in the fprime-gds this repo pins, and the in-repo decoder is removed, so the documented recovery step cannot be run.
correctness-other. Trigger: an operator at this head follows step 6 with the pinned GDS (requirements.txt: fprime-gds==4.4.0; fprime-dp offers only decode/validate, and the latest release 4.4.1 is the same) — comlog is an argparse invalid choice, and scripts/decode_comlogger_dp.py no longer exists as a fallback.
Consequence: the SDD's only telemetry-reconstruction procedure fails; fprime-dp comlog lives only in unmerged nasa/fprime-gds#387. The PR body already gates merge on the pin — this thread tracks that gate and resolves once requirements.txt pins a GDS release containing comlog (the --sentry flag name referenced at line 82 does match #387's parser).
There was a problem hiding this comment.
[Design] Concur — also in scope for design-vs-intent: #5845 and nasa/fprime-gds#387 both condition this removal on fprime first pinning a GDS release that ships fprime-dp comlog (unmerged; absent from pinned 4.4.0 and latest 4.4.1), but the change set carries no requirements.txt bump, so the gate lives only in the PR prose.
There was a problem hiding this comment.
[Documentation] Concur — also in scope for documentation currency: §5.7 step 6 and the §3.4 --sentry note (line 82) now direct operators to a decoder no fprime-gds release ships (nasa/fprime-gds#387 open; pin fprime-gds==4.4.0), so the SDD claim is false at this head until the pin lands; the --sentry flag name and 0xDEADBEEF default do match #387.
There was a problem hiding this comment.
[Operational] Concur — also in scope for operational consequences (ops-doc-reality): with the pinned fprime-gds 4.4.0 (and newest release 4.4.1) every container recorded during the §5.7 link-loss scenario is undecodable by any released tool until the GDS release containing nasa/fprime-gds#387 is pinned; smallest remedy is bumping requirements.txt and naming that minimum GDS version in step 6.
lestarch-autobot
left a comment
There was a problem hiding this comment.
Automated review summary (run 1)
Per-agent results
Findings open at the reviewed head, by tag; everything ever raised is under Since last run.
| Agent | must fix | suggestion | could fix | future work | outstanding | Verdict |
|---|---|---|---|---|---|---|
| Security Vulnerabilities | 0 | 0 | 0 | 0 | 0 | Go |
| Supply Chain / Runner Safety | 0 | 0 | 0 | 0 | 0 | Go |
| F Prime C/C++ Design | — | — | — | — | — | skipped — no touched surface |
| Documentation Currency | 1 | 0 | 0 | 0 | 1 | No-Go |
| Design | 1 | 0 | 0 | 0 | 1 | No-Go |
| Architecture | — | — | — | — | — | skipped — no touched surface |
| Test Quality | 0 | 0 | 0 | 0 | 0 | Go |
| Correctness | 1 | 0 | 0 | 0 | 1 | No-Go |
| Operational | 1 | 0 | 0 | 0 | 1 | No-Go |
| Maintainability | 0 | 0 | 0 | 0 | 0 | Go |
| CI safety | — | — | — | — | — | Go |
| Totals | 1 | 0 | 0 | 0 | 1 | No-Go |
The four No-Go rows share one thread (Correctness opened it; Documentation Currency, Design and Operational concurred on it), so Totals counts it once.
Supply-chain surfaces
| Surface | Outstanding |
|---|---|
| Dependencies | clean |
| Vendored / submodule | clean |
| Build / test infrastructure | clean |
| Workflows / actions / scripts | clean |
| Generator output | clean |
| Prompt-injection | clean |
| Review-system integrity | clean |
Outstanding must-fix items (1)
Correctness
fprime-dp comlogis not in the pinnedfprime-gds==4.4.0(nor any release; only in open nasa/fprime-gds#387) while the in-repo decoder is removed, so the SDD §5.7 step 6 recovery procedure cannot be run at this head — resolves oncerequirements.txtpins a GDS release containingcomlog— also: Documentation Currency, Design, Operational — #6375 (comment)
Merge readiness
Merge readiness: No-Go — 1 outstanding must-fix item (Correctness, concurred by Documentation Currency, Design and Operational): the PR's own merge gate — a pinned fprime-gds release that ships fprime-dp comlog — has not landed.
Lenses skipped on this PR
- F Prime C/C++ Design — no touched surface: the PR's changed-file list contains no C or C++ source or header file.
- Architecture — no touched surface: the PR's changed-file list contains no
.fppmodel, no topology or deployment file, and no component source or header.
Holding at the pad until the ground tooling catches up — one pin bump and this one is cleared for launch.
You are right, but it doesn't need to hold up the process.
|
@thomas-bc @LeStarch I believe this PR introduces a breaking change: ground workflows that run Release NotesUser Breaking Changes
|
…ime-dp comlog (#6375)
…ime-dp comlog (#6375)
…ime-dp comlog (#6375)
…prime-dp comlog (#6375)
Change Description
Removes
Svc/ComLoggerDp/scripts/(the standalonedecode_comlogger_dp.pydecoder and its README) and points the two references inSvc/ComLoggerDp/docs/sdd.mdatfprime-dp comlog, the pip-installed replacement in fprime-gds.Rationale
The decoder has moved into fprime-gds (nasa/fprime-gds PR "Add fprime-dp comlog to decode Svc.ComLoggerDp data products"), where it is versioned and tested with the dictionary and decoder code it depends on. Do not merge before fprime pins a GDS release that contains
fprime-dp comlog.Testing/Review Recommendations
Documentation and file removal only; check the two SDD lines render correctly.
Future Work
None.
Contributor Checklist
AI Usage (see policy)
AI agent performed the file removal and documentation edits under maintainer direction.
AGENTS.md).IAMAI