docs: MobilityAPI ingestion plan for MEOS-API output + OpenAPI missing-work integration#3
Closed
estebanzimanyi wants to merge 86 commits into
Closed
Conversation
MobilityAPI's working tree is the result of two distinct contribution phases that today's repo doesn't make visible: 1. **pg_mfserv (March 2024)** — the founding OGC API – Moving Features Python server for MobilityDB, authored at ULB. - Maxime Schoemans (@mschoema) — initial commit, endpoint design. - Victor Morabito (@MrMaxime1er) — main developer of the pg_mfserv codebase: column discovery, request handling, exception handling, route refactors. 2. **MobilityAPI (2025–)** — the current production-grade implementation, also at ULB. - Sirine Meraoui (@sirimeraoui) — current maintainer; structured resource layout, tests, OGC conformance, documentation. This commit adds three artefacts that surface the lineage: - **README.md** — new `## History and Acknowledgements` section before `## License` crediting all three contributors and pointing to pg_mfserv as the archived predecessor. - **AUTHORS.md** (new) — structured contributor list per phase. - **CITATION.cff** (new) — machine-readable citation metadata for Zenodo / GitHub citation widget, including a `references:` block citing pg_mfserv as predecessor work. License declared in CITATION.cff: PostgreSQL (matching the MobilityDB main project's license posture). The lineage credit is symmetric: pg_mfserv's README will gain an archive banner pointing forward to MobilityAPI in the companion PR on the pg_mfserv repository. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add lineage credits: pg_mfserv predecessor, AUTHORS, CITATION
…ADME rewrite
The repo is now the canonical home of MobilityAPI but was missing
several artefacts that ecosystem-grade org repos carry:
1. **LICENSE.txt** — The PostgreSQL License, matching the
MobilityDB main project's licence posture. Without this,
the repository was effectively all-rights-reserved by
default. Copyright Université libre de Bruxelles and
MobilityAPI contributors.
2. **CONTRIBUTING.md** — Development setup, test instructions
(./run.sh, ./run.sh --with-tests), code-style conventions
(PEP 8 + ruff), PR conventions. Cross-references AUTHORS.md
and the lineage section in the README.
3. **.github/workflows/python.yml** — Stub CI:
- Lint job: ruff check on PRs (warning-only at this stage so
legacy code isn't blocked; tighten when codebase has been
once-through).
- Import-smoke-test job: imports each application module so
a minimal "code is at least loadable" gate runs on PRs.
No DB-integration tests at this stage; that's a separate
GitHub Actions service-container effort once the test
harness stabilises.
4. **.github/ISSUE_TEMPLATE/{bug,feature}.md** + **PULL_REQUEST_TEMPLATE.md**
— issue / PR scaffolding. Bug template asks for environment
info; feature template prompts for OGC-spec references.
5. **README rewrite** — restructured for canonical-home framing:
- Added badges (License, Python, OGC API conformance).
- Lead with what MobilityAPI is (HTTP / OGC layer of the MEOS
ecosystem) rather than the bare introduction.
- Added a Status section pointing at issues + discussions.
- Added a "Where MobilityAPI fits" section showing peer SQL
layers (MobilityDB / MobilityDuck) and language bindings.
- Cross-link to https://libmeos.org/bindings/mobilityapi/.
- Added Contributing section pointing at CONTRIBUTING.md.
- Fixed "Pyhton" / "Developement" typos and the orphaned
##Poetry section. Final License section points at LICENSE.txt
and CITATION.cff.
- Lineage section (PR #1) preserved unchanged.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Canonicalisation bundle: LICENSE, CI, contributor scaffolding, README rewrite
…g-work integration Authored as a parallel-session planning artefact. Maps how MobilityAPI consumes the catalog and projections published by MobilityDB/MEOS-API, and integrates the missing-work items called out in MEOS-API PR MobilityDB#5 ("natural follow-ups" — OpenAPI conformance validation in CI, and an OGC API – Moving Features resource projection). Sections: * Context — MEOS-API as the SoT, MobilityAPI as the OGC-conformant downstream binding. * Per-task split (parallel sessions) — what lives in MEOS-API session, what lives in MobilityAPI session, why they don't block each other. * Missing OpenAPI work — three items from PR MobilityDB#5's follow-ups: MCP manifest (DONE in PR MobilityDB#6), conformance CI (MISSING — MEOS-API), MovFeat resource projection (MISSING — MEOS-API, immediate dependency for MobilityAPI). * Endpoint-by-endpoint gap analysis — each of the 10 hand-written resource/* modules mapped to its generic-OpenAPI + MovFeat-projection equivalent. Classified Replace (5: pure MEOS dispatchers) vs Keep (5: OGC-specific persistence/envelope concerns). * Sequencing — five-step plan respecting the never-wait-for-merge rule. Steps 1-4 unblock today against MEOS-API master; step 5 consumes the MovFeat-projection PR branch the moment it opens. * Invariants and open questions for the maintainer. No code change. Subsequent PRs execute the steps one at a time.
This was referenced May 20, 2026
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.
Planning artefact, no code change. Maps how MobilityAPI consumes the catalog and projections published by MobilityDB/MEOS-API, and integrates the missing-work items called out in MEOS-API PR #5's "natural follow-ups":
What the plan covers
resource/*modules mapped to its generic-OpenAPI + MovFeat-projection equivalent. Classification: 5 Replace (pure MEOS dispatchers) vs 5 Keep (OGC-specific persistence / GeoJSON-envelope concerns).Why this PR exists separately from the execution PRs
Per the cross-repo handoff brief, each downstream session needs to ground its own task list in writing before executing. This is the MobilityAPI session's grounding document; subsequent PRs land the steps one at a time.
What this PR is NOT
Cross-link
I'll also drop a short comment on MEOS-API PR #5 noting that the MovFeat-projection follow-up has a downstream consumer (this plan) — so the MEOS-API session sees the dependency.
Refs