Skip to content

fix(topics): write python command and decom stored flag as lowercase - #4005

Merged
mcosgriff merged 1 commit into
mainfrom
fix/python-topics-stored-lowercase
Oct 19, 2026
Merged

mcosgriff merged 1 commit into
mainfrom
fix/python-topics-stored-lowercase

Conversation

@ryanmelt

@ryanmelt ryanmelt commented Oct 4, 2026

Copy link
Copy Markdown
Member

Summary

  • Python CommandTopic, CommandDecomTopic and TelemetryDecomTopic wrote stored as str(packet.stored), so they produced "True"/"False". Ruby writes "true"/"false". Every reader compares case-insensitively, so nothing was broken, but the stream contents differed between the two implementations.
  • They now write lowercase, matching interface_decom_common.py and the TelemetryTopic fix in fix(microservices): validate pre-identified telemetry and keep stored data out of CVT #4000.
  • Added a test to each topic's test file. All three fail on the old code.

Fixes the IF-CMD-007 deviation in architecture/specs/interface-microservice.yaml. The decommutated telemetry topic had the same issue (IF-TLM-003), so it's fixed here too.

Test plan

  • uv run pytest test/topics test/microservices (144 passed)
  • ruff check / ruff format --check clean

🤖 Generated with Claude Code

CommandTopic, CommandDecomTopic and TelemetryDecomTopic wrote stored as
"True"/"False" while Ruby writes "true"/"false". Readers are case-insensitive,
but the stream contents now match between implementations.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@codecov

codecov Bot commented Oct 4, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 80.10%. Comparing base (0d8985e) to head (2c4fc57).
⚠️ Report is 12 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4005      +/-   ##
==========================================
+ Coverage   80.06%   80.10%   +0.04%     
==========================================
  Files         901      901              
  Lines       68370    68370              
  Branches     2699     2646      -53     
==========================================
+ Hits        54738    54767      +29     
+ Misses      12976    12936      -40     
- Partials      656      667      +11     
Flag Coverage Δ
frontend 66.96% <ø> (+0.39%) ⬆️
python 80.13% <ø> (+<0.01%) ⬆️
ruby-api 82.18% <ø> (-0.43%) ⬇️
ruby-backend 85.66% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sonarqubecloud

sonarqubecloud Bot commented Oct 4, 2026

Copy link
Copy Markdown

@ryanmelt ryanmelt added the review-and-merge-ready When this PR is approved, the approver can click the merge button label Oct 9, 2026

@clayandgen clayandgen left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

openc3/python/openc3/topics/telemetry_topic.py:26: TelemetryTopic.write_packet still writes str(packet.stored)

@mcosgriff

Copy link
Copy Markdown
Contributor

openc3/python/openc3/topics/telemetry_topic.py:26: TelemetryTopic.write_packet still writes str(packet.stored)

This is fixed in #4000

@mcosgriff
mcosgriff merged commit b3a89cb into main Oct 19, 2026
44 of 45 checks passed
@mcosgriff
mcosgriff deleted the fix/python-topics-stored-lowercase branch October 19, 2026 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review-and-merge-ready When this PR is approved, the approver can click the merge button

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants