Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
151 commits
Select commit Hold shift + click to select a range
f2c76b7
Add test and python script
rsasaki0109 Sep 4, 2025
7abe080
Fix RTK positioning: implement outlier rejection and geometric range …
rsasaki0109 Dec 1, 2025
a0d56ab
Implement self-contained RTK positioning library (zero RTKLIB depende…
rsasaki0109 Mar 23, 2026
cde72e6
Add RTKLIB comparison table to README
rsasaki0109 Mar 23, 2026
c411435
Fix CI: Eigen path on macOS, cppcheck paths, add trajectory plot tool
rsasaki0109 Mar 23, 2026
20affbb
Fix CI: use Eigen3::Eigen target for portable include paths
rsasaki0109 Mar 23, 2026
f6e77be
Add kinematic comparison plot to README
rsasaki0109 Mar 23, 2026
a7708e7
Add comprehensive development plan (PLAN.md)
rsasaki0109 Mar 23, 2026
73b4f78
Add UrbanNav comparison and expand tests
rsasaki0109 Mar 23, 2026
3c79555
Tighten Odaiba RTK outlier handling
rsasaki0109 Mar 23, 2026
2d726e4
Improve Odaiba interpolation handling
rsasaki0109 Mar 23, 2026
3e0463c
Promote Odaiba benchmark lead
rsasaki0109 Mar 23, 2026
6147b4e
Add gnss_solve CLI and refresh Odaiba reports
rsasaki0109 Mar 23, 2026
7a84b71
Expand GNSS tooling and refine Odaiba visuals
rsasaki0109 Mar 25, 2026
ced9e4c
Split Odaiba trajectory panels by solver
rsasaki0109 Mar 25, 2026
ab87ac9
Add numbered Odaiba figure panels
rsasaki0109 Mar 25, 2026
b974ea2
Declutter Odaiba comparison layout
rsasaki0109 Mar 25, 2026
061f0e8
Expand UBX live tooling and serial coverage
rsasaki0109 Mar 25, 2026
e6f9e5c
Complete GNSS toolchain parity groundwork
rsasaki0109 Mar 25, 2026
347d57f
Finalize non-GUI GNSS toolchain
rsasaki0109 Mar 26, 2026
b0ee893
Improve installed signoff UX
rsasaki0109 Mar 26, 2026
b34854a
Refresh README landing page
rsasaki0109 Mar 26, 2026
98219b6
Add shareable Odaiba social card
rsasaki0109 Mar 26, 2026
84a2129
Simplify Odaiba social visuals
rsasaki0109 Mar 26, 2026
a2b67ad
Refine Odaiba social card layout
rsasaki0109 Mar 26, 2026
f834d4c
Add feature overview card
rsasaki0109 Mar 26, 2026
2de129e
Fix feature overview card layout
rsasaki0109 Mar 26, 2026
ea85a0c
Tighten README image layouts
rsasaki0109 Mar 26, 2026
6141c59
Add status legend to Odaiba social card
rsasaki0109 Mar 26, 2026
9f51315
Polish Odaiba social card legend
rsasaki0109 Mar 26, 2026
26306d1
Refine Odaiba social card legend layout
rsasaki0109 Mar 26, 2026
7ff5aff
Adjust Odaiba social card spacing
rsasaki0109 Mar 26, 2026
99433bc
Relax Odaiba social card header spacing
rsasaki0109 Mar 26, 2026
285838c
Simplify README and expand dogfooding tests
rsasaki0109 Mar 26, 2026
f6dc479
Fix CI dependency setup and failure handling
rsasaki0109 Mar 26, 2026
976aa83
Fix ROS2 dependency gating for std_msgs
rsasaki0109 Mar 26, 2026
f14d86b
Add PPC dataset demo and stabilize CI data-dependent tests
rsasaki0109 Mar 26, 2026
028a984
Add benchmark references to README
rsasaki0109 Mar 26, 2026
69c8598
Install Python plotting deps in CI
rsasaki0109 Mar 26, 2026
e7f502e
Fix CI Python env and data-dependent CLI skips
rsasaki0109 Mar 26, 2026
5c88e64
Force macOS CI to use venv Python
rsasaki0109 Mar 26, 2026
9283356
Expand CLI regression coverage
rsasaki0109 Mar 27, 2026
99034a9
Document PR-based workflow for external references
rsasaki0109 Mar 27, 2026
cc76297
Refactor solver modules and harden live validation
rsasaki0109 Mar 27, 2026
ce32f78
Add local web UI and browser smoke tests
rsasaki0109 Mar 27, 2026
e6ffaaf
Add live realtime signoff and validation
rsasaki0109 Mar 28, 2026
682f105
Add live signoff metrics to web UI
rsasaki0109 Mar 28, 2026
62828c6
Optimize RTK AR path and add PPC RTKLIB checks
rsasaki0109 Mar 28, 2026
4b51d03
Tighten RTK validation and improve PPC Tokyo fixes
rsasaki0109 Mar 28, 2026
89d9a95
Add PPC RTK signoff and split RTK update stage
rsasaki0109 Mar 28, 2026
0ce61fe
Refactor RTK AR evaluation and add optional PPC CI signoff
rsasaki0109 Mar 28, 2026
5be69f2
Add MkDocs site and docs publishing workflow
rsasaki0109 Mar 28, 2026
06624a0
Polish docs visuals and configurable web docs link
rsasaki0109 Mar 28, 2026
43ad503
Promote inspect commands in README
rsasaki0109 Mar 29, 2026
745b1be
Publish upstream reference analyses
rsasaki0109 Mar 29, 2026
40bbfe7
Add PPP product tooling and visibility analysis
rsasaki0109 Mar 29, 2026
fc26757
Stabilize PPP kinematic signoff and surface visibility artifacts
rsasaki0109 Mar 29, 2026
a703af1
Add moving-base mode and demo5-style RTK guards
rsasaki0109 Mar 29, 2026
9b180b4
Add moving-base replay prep and Docker delivery
rsasaki0109 Mar 29, 2026
1d7a826
Expand RTK tuning and PPP product signoffs
rsasaki0109 Mar 29, 2026
a9daa5d
Fix CI stability and add moving-base plot previews
rsasaki0109 Mar 29, 2026
90bfaa7
Add artifact dashboards and PPP comparison gates
rsasaki0109 Mar 29, 2026
423412d
Expand web artifact views and PPP product checks
rsasaki0109 Mar 29, 2026
9707e20
Improve artifact browsing and moving-base history views
rsasaki0109 Mar 29, 2026
ad95cc2
Add PPP comparison artifacts to dashboards
rsasaki0109 Mar 30, 2026
54b648a
Add TOML configs for PPP, moving-base, and web workflows
rsasaki0109 Mar 30, 2026
6bb2873
Expand PPP product workflows and config-driven dashboards
rsasaki0109 Mar 30, 2026
101af1b
Add visibility, KML, SBF parser, serial port, ROS 2 GNSS driver
rsasaki0109 Mar 31, 2026
b4c956a
Refactor PPP CLAS and AR pipeline modules
rsasaki0109 Apr 1, 2026
f7d3cd9
Add CLAS PPP experiment lanes and promotion decisions
rsasaki0109 Apr 1, 2026
11901f0
Expand CLAS PPP phase-bias semantics experiments
rsasaki0109 Apr 2, 2026
f708999
Add C++ L6 decoder, refactor CLAS PPP, achieve 0.14m L6 PPP
rsasaki0109 Apr 6, 2026
674a0c6
README: update CLAS PPP with L6 direct input results
rsasaki0109 Apr 6, 2026
9723206
Update Python CLAS tools, interfaces docs, experiment runner
rsasaki0109 Apr 6, 2026
08884f9
L6 native C++: achieve 0.14m without Python dependency
rsasaki0109 Apr 6, 2026
991f14e
README: C++ native L6 achieves 0.14m without Python
rsasaki0109 Apr 6, 2026
0b42755
Add GitHub Pages landing page and interactive demo
rsasaki0109 Apr 11, 2026
e6818d3
Rebuild demo as rtkplot-style interactive GNSS solution viewer
rsasaki0109 Apr 12, 2026
ae28e49
Use real UrbanNav Odaiba GNSS data in demo viewer
rsasaki0109 Apr 12, 2026
55eafb5
Add velocity, baseline, ratio, stats panels and drag-drop .pos loading
rsasaki0109 Apr 12, 2026
f6e82d5
Add time brush zoom, playback, export, and comparison mode
rsasaki0109 Apr 12, 2026
11162ff
Add RINEX observation file visualization
rsasaki0109 Apr 13, 2026
e2bccc4
Harden CI lanes and optional signoff summaries (#16)
rsasaki0109 Apr 16, 2026
10685f7
[docs] RTK demo5 parity 2026-04-17 investigation notes + lineage diff…
rsasaki0109 Apr 18, 2026
0bae35e
[rtk] Add --ar-policy demo5-continuous experimental gate (default-off…
rsasaki0109 Apr 19, 2026
aed28bd
[rtk] Add --max-hold-div and --max-pos-jump fix validation gates (def…
rsasaki0109 Apr 19, 2026
3f75ffe
[rtk] Add --max-consec-float-reset AR auto-reset gate (default-off) (…
rsasaki0109 Apr 19, 2026
91131b9
[rtk] Add --max-postfix-rms post-fix residual gate (default-off) (#22)
rsasaki0109 Apr 19, 2026
1c835e1
[rtk] Add --enable-wide-lane-ar MW wide-lane pre-step (default-off) (…
rsasaki0109 Apr 20, 2026
03cdffd
docs(README): CLAS Performance vs CLASLIB with RTK-style 2D plots (#24)
rsasaki0109 Apr 20, 2026
05f1534
docs(CLAS): supporting docs for the CLASNAT README claim (#25)
rsasaki0109 Apr 20, 2026
c574ea2
docs(README): CLAS numbers updated after iter57 PCO normalization (3.…
rsasaki0109 Apr 20, 2026
a0173d5
feat(spp): expose corrected pseudoranges via preprocessEpoch API (#27)
rsasaki0109 Apr 20, 2026
90b97e3
docs: sync RTK benchmark framing to post-PR #19–#23 demo5 dominance (…
rsasaki0109 Apr 20, 2026
cf7620f
[codex] Add commercial receiver baseline to moving-base signoff (#30)
rsasaki0109 Apr 21, 2026
9543d39
[codex] Surface commercial receiver comparisons in web UI (#31)
rsasaki0109 Apr 21, 2026
1a2d716
[codex] Add PPC public RTK benchmark tooling (#32)
rsasaki0109 Apr 24, 2026
1c5204e
[codex] Add RTK epoch telemetry and Odaiba AR preset (#29)
rsasaki0109 Apr 26, 2026
93abb8a
[codex] Add ARSkipReason diagnostic + AR success reset + state-restor…
rsasaki0109 Apr 26, 2026
f9e5f9d
Default --max-pos-jump to 5.0m for wrong-FIX rejection (#35)
rsasaki0109 Apr 26, 2026
6fb3264
Drop kinematic post-filter cascade; single-epoch drop on height jump …
rsasaki0109 Apr 26, 2026
8727f1e
[codex] Add multi-candidate selector PR A (apply script + tests) (#33)
rsasaki0109 Apr 26, 2026
b5179cd
docs: reflect 2026-04-26 truth-validation baseline (PR #29-#36 stack)…
rsasaki0109 Apr 26, 2026
b6d6242
Add multi-candidate selector matrix driver
rsasaki0109 Apr 28, 2026
3957403
Add multi-candidate selector scorecard analyzer
rsasaki0109 Apr 28, 2026
125092e
Tighten RTK carrier phase sigma and add KF tuning CLI
rsasaki0109 Apr 28, 2026
fbfd695
Add PPC sigma demotion realtime profile
rsasaki0109 May 7, 2026
8fc8f41
Add opt-in RTK AR reliability tuning
rsasaki0109 May 7, 2026
50d5ed7
Document PPC ratio4 status profile
rsasaki0109 May 7, 2026
96f3059
Vendor IAU SOFA under third_party/sofa/ (Phase A-1 of IERS2010 work) …
rsasaki0109 May 8, 2026
7849905
Vendor ginan-iers2010 (IERS Conventions 2010 subset) under third_part…
rsasaki0109 May 9, 2026
2b263f1
Add libgnss::iers wrapper API over SOFA + ginan-iers2010 (#54)
rsasaki0109 May 9, 2026
3a0b6c8
Add libgnss::iers Sun/Moon ephemeris helpers (Phase B-2, stacked on #…
rsasaki0109 May 9, 2026
fc336dc
PPP: opt-in IERS Conventions 2010 solid-earth-tide via wrapper (#56)
rsasaki0109 May 9, 2026
9ea3a11
Add ppp-iers-solid-tide-bench paired-comparison harness (#57)
rsasaki0109 May 9, 2026
91b5e8e
ppp-iers-solid-tide-bench: add tide-signal diagnostics (#58)
rsasaki0109 May 9, 2026
14657d9
Add IERS 20 C04 EOP table loader (Phase D-0 scaffolding) (#61)
rsasaki0109 May 9, 2026
8c40c89
PPP: opt-in IERS Conventions 2010 pole-tide model (Phase D-1) (#74)
rsasaki0109 May 9, 2026
d1856d5
Add ppp-iers-pole-tide-bench paired-comparison harness (Phase D-1) (#63)
rsasaki0109 May 9, 2026
0d599a4
EopTable: parse IERS Bulletin A finals2000A.daily (Phase D-0 ext) (#64)
rsasaki0109 May 9, 2026
dfaa4e7
PPP: opt-in IERS Conventions 2010 sub-daily EOP corrections (Phase D-…
rsasaki0109 May 9, 2026
157fecf
PPP: opt-in IERS Conventions 2010 atmospheric tidal loading (Phase D-…
rsasaki0109 May 9, 2026
2c22a47
Add ppp-iers-atm-tidal-loading-bench paired-comparison harness (Phase…
rsasaki0109 May 9, 2026
ee80679
Add multi-site pole-tide bench driver (Phase D-1) (#69)
rsasaki0109 May 9, 2026
bdfa09b
PPP: flip default to IERS Conventions 2010 pole tide (Phase D-1) (#70)
rsasaki0109 May 9, 2026
9268c01
PPP: flip default to IERS Conventions 2010 sub-daily EOP (Phase D-2) …
rsasaki0109 May 9, 2026
7253e77
PPP IERS bench harnesses: add convergence-gate outlier filter (#72)
rsasaki0109 May 9, 2026
fa7dbe3
Multi-site bench: support per-site product overrides for multi-day ca…
rsasaki0109 May 9, 2026
e1916c1
PPP: flip default to IERS Conventions 2010 solid-earth-tide (#59)
rsasaki0109 May 9, 2026
07798af
Vendor IERS HARDISP + opt-in ocean-loading wrapper (Phase A-2b) (#60)
rsasaki0109 May 9, 2026
c21b283
Add ppp-iers-sub-daily-eop-bench harnesses (Phase D-2 multi-site) (#75)
rsasaki0109 May 9, 2026
4f82889
Add ppp-iers-atm-tidal-loading multi-site driver (Phase D-3) (#76)
rsasaki0109 May 9, 2026
315b085
Add ppp-iers-truth-bench end-to-end truth-bench harness (Phase A-D ro…
rsasaki0109 May 9, 2026
c13661c
Fix IONEX 60-char window + Bias-SINEX SVN/PRN handling (#78)
rsasaki0109 May 9, 2026
97af539
PPP: use SP3 bracket for orbit when CLK-only entry aliases query time
rsasaki0109 May 9, 2026
f2aa17f
PPP: hook phase wind-up correction into applyPreciseCorrections
rsasaki0109 May 9, 2026
f6c1192
PPP: skip IONEX subtraction in ionosphere-free mode
rsasaki0109 May 9, 2026
e2da647
PPP: parse satellite ANTEX entries (gated PCO application default off)
rsasaki0109 May 9, 2026
627bd3a
PPP: expose static-anchor blend as a config flag (default on)
rsasaki0109 May 10, 2026
44c5f17
PPP: fix LTT extrapolation at SP3 boundary + enable phase from epoch 2
rsasaki0109 May 10, 2026
fca2e1b
PPP: Lagrange SP3 interpolation + drop static-anchor blend default
rsasaki0109 May 10, 2026
e02aa09
Add VMF ATL multisite PPP bench fixtures
rsasaki0109 May 12, 2026
ff1f520
Merge pull request #81 from rsasaki0109/feat/iers-sub-daily-eop-default
rsasaki0109 May 12, 2026
d657159
Add modular DD residual diagnostics CLI (#82)
rsasaki0109 May 21, 2026
832b822
Merge pull request #79 from rsasaki0109/fix/ppp-precise-products-clk-…
rsasaki0109 May 23, 2026
bc842ba
Merge pull request #80 from rsasaki0109/feat/ppp-phase-windup
rsasaki0109 May 23, 2026
290b452
Fix Python ctest PPP signoff regressions (#83)
rsasaki0109 May 23, 2026
6e13c15
Add RINEX4 MADOCA foundation (#84)
rsasaki0109 May 23, 2026
b7e6424
[codex] Add MADOCALIB parity harness
rsasaki0109 May 23, 2026
ecd8dbd
[codex] Add MADOCALIB bridge smoke slice
rsasaki0109 May 23, 2026
226bacd
Add MADOCA solution diff tool (#87)
rsasaki0109 May 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 13 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
.git
.github
.venv
build
site
output
__pycache__
*.pyc
*.pyo
*.swp
data
docs/site
tmp
42 changes: 42 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
## Summary

- What changed?
- Why?

## Scope

- [ ] Single feature / single user-visible value
- [ ] No unrelated refactor mixed in
- [ ] No docs-only noise mixed into solver/protocol work

## External Reference

- Source repo used for comparison, if any:
- What was adopted here:
- What was intentionally not adopted:

## Validation

- [ ] `python3 tests/test_cli_tools.py`
- [ ] `python3 tests/test_benchmark_scripts.py`
- [ ] `python3 tests/test_packaging.py`
- [ ] `python3 tests/test_python_bindings.py -v`
- [ ] `python3 tests/test_ros2_node.py`
- [ ] `ctest --test-dir build --output-on-failure`

Focused checks run:

```bash
# paste focused commands here
```

## Sign-off / Benchmark Impact

- Added or updated sign-off:
- Affected dataset(s):
- Expected metric impact:

## Notes

- Risk:
- Follow-up PRs:
129 changes: 129 additions & 0 deletions .github/actions/prepare-build/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
name: Prepare Build
description: Install CI build dependencies, configure CMake, and build the project.

inputs:
os-name:
description: GitHub runner OS label.
required: true
python-version:
description: Python version to install for the job.
required: false
default: "3.12"
compiler:
description: Compiler selection for the job.
required: false
default: gcc
build-type:
description: CMake build type.
required: false
default: Release
install-docs-deps:
description: Whether to install docs Python dependencies.
required: false
default: "false"
install-playwright:
description: Whether to install Playwright and Chromium.
required: false
default: "false"

runs:
using: composite
steps:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ inputs.python-version }}
cache: pip
cache-dependency-path: |
requirements-docs.txt
.github/actions/prepare-build/action.yml

- name: Restore Playwright browser cache
if: ${{ startsWith(inputs.os-name, 'ubuntu') && inputs.install-playwright == 'true' }}
uses: actions/cache@v4
with:
path: ~/.cache/ms-playwright
key: playwright-${{ inputs.os-name }}-chromium-${{ hashFiles('.github/actions/prepare-build/action.yml') }}

- name: Restore ccache
uses: actions/cache@v4
with:
path: ${{ runner.os == 'Linux' && '~/.cache/ccache' || '~/Library/Caches/ccache' }}
key: ${{ runner.os }}-ccache-${{ hashFiles('CMakeLists.txt', 'src/**', 'include/**') }}

- name: Install dependencies (Ubuntu)
if: ${{ startsWith(inputs.os-name, 'ubuntu') }}
shell: bash
run: |
set -euo pipefail
packages=(
libeigen3-dev
libgtest-dev
cmake
build-essential
ccache
python3-dev
pybind11-dev
python3-numpy
python3-matplotlib
)
if [ "${{ inputs.compiler }}" = "clang" ]; then
packages+=(clang)
fi
sudo apt-get update
sudo apt-get install -y "${packages[@]}"
python -m pip install --upgrade pip
if [ "${{ inputs.install-docs-deps }}" = "true" ]; then
python -m pip install --user -r requirements-docs.txt
fi
if [ "${{ inputs.install-playwright }}" = "true" ]; then
python -m pip install --user playwright
python -m playwright install --with-deps chromium
fi

- name: Install dependencies (macOS)
if: ${{ startsWith(inputs.os-name, 'macos') }}
shell: bash
run: |
set -euo pipefail
brew install eigen googletest cmake pybind11 python ccache
python -m venv .venv
. .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install numpy matplotlib
if [ "${{ inputs.install-docs-deps }}" = "true" ]; then
python -m pip install -r requirements-docs.txt
fi
echo "${GITHUB_WORKSPACE}/.venv/bin" >> "$GITHUB_PATH"

- name: Configure ccache
shell: bash
run: |
set -euo pipefail
echo "CMAKE_C_COMPILER_LAUNCHER=ccache" >> "$GITHUB_ENV"
echo "CMAKE_CXX_COMPILER_LAUNCHER=ccache" >> "$GITHUB_ENV"
ccache --set-config=max_size=500M
ccache --set-config=compression=true

- name: Configure CMake
shell: bash
run: |
set -euo pipefail
if [ "${{ inputs.compiler }}" = "clang" ]; then
export CC=clang
export CXX=clang++
fi
cmake_args=(
-B build
-DCMAKE_BUILD_TYPE=${{ inputs.build-type }}
"-DCMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER}"
"-DCMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER}"
)
if [[ "${{ inputs.os-name }}" == macos* ]]; then
cmake_args+=("-DPython3_EXECUTABLE=${GITHUB_WORKSPACE}/.venv/bin/python")
fi
cmake "${cmake_args[@]}"

- name: Build
shell: bash
run: cmake --build build --config "${{ inputs.build-type }}" --parallel
Loading
Loading