Files
planet/TODO.md
linkong 899e3bce43
Some checks failed
ci / backend (push) Has been cancelled
ci / frontend (push) Has been cancelled
release / images (push) Has been cancelled
ci / delivery (push) Has been cancelled
release: bump version to 0.71.0
2026-06-11 16:47:24 +08:00

11 KiB

TODO

This file is the active backlog only. Completed history belongs in docs/CHANGELOG.md; detailed designs belong in docs/plans/.

Earth

  • Motion Agent v2 hardening: tune the implemented MediaPipe gesture recognizer across camera placements, exercise the UE command/control client, run reconnect and dual-camera soak tests, and continue the v3 calibrated 3D roadmap described in Motion Agent v2 Control Protocol And 3D Calibration Roadmap.
  • Earth AI command entry: merge natural-language and speech-triggered LLM commands into the existing Earth search panel as described in Agent Runtime, Earth LLM Command, And Speech Entry Plan.
  • Earth action executor: implement safe visualization actions for layer toggles, batch highlights, filters, focus, result panels, and clear-highlight behavior.
  • Earth entity matching: support stable entity ids and batch matching for Beidou satellites, mainland China compute centers, BGP, news, vessels, and cables.
  • Replace debug GeoJSON boundary tiles with the real earth-boundaries-china-pov-v1.pmtiles production artifact after audited admin-0 / coastline / claim-line sources and the PMTiles toolchain are available.
  • Import authoritative China POV / coastline / claim-line source packages through the three standard Earth boundary source collectors, then rebuild a versioned PMTiles artifact so highest zoom 8-10 preserves trusted source geometry instead of seed data.
  • Earth boundary data: acquire or generate auditable China POV geometry for Zangnan, Aksai Chin, Taiwan/Penghu, Diaoyu Dao and affiliated islands, Chiwei Yu, South China Sea islands, Kosovo, Gaza, and the official dashed maritime claim line before implementing final visual changes.
  • Earth high-resolution basemap tiles: implement the viewport-loaded imagery layer described in Earth High Resolution Basemap Tiles Plan, using high-precision coastline as the alignment reference instead of replacing the globe with one huge texture.
  • BGP frontend maintainability: split bgp.js by responsibility into data loading, marker rendering, overlays, and animation once the current interaction behavior is stable.
  • Optional BGP marker experiment: evaluate HTML markers for BGP incident/collector points if WebGL marker density or fixed screen-size clickability becomes a real blocker.

Compute Centers And Location

  • Unknown compute-center locations: continue reducing unresolved records through the shared location pipeline, with confidence, precision, reason, and verification date preserved in GeoJSON/details.
  • Compute-center registry: keep expanding the local canonical location registry with canonical_name, aliases, operator, country/region/city, coordinates, confidence, and source notes.
  • Compute-center enrichment: improve source-page parsing for Epoch AI and related collectors by extracting location clues from detail pages, embedded JSON, schema.org, OpenGraph, script variables, PDFs, and press releases.
  • Compute-center identity normalization: normalize operator / cluster / facility aliases such as xAI / Colossus / Memphis, OpenAI / Stargate, CoreWeave, Lambda, and Crusoe.
  • Compute-center manual review: add an export/review/import workflow for unresolved or estimated locations and feed confirmed results back into the registry.

AIS / Vessels

  • AIS aggregation strategy v4: expose source priority, field-level merge rules, freshness windows, and protected dynamic-field rules in configuration, with validation and strategy version returned by vessel APIs.
  • AIS vessel enrichment v5: add asynchronous vessel profile enrichment for ship type detail, AIS class, flag, dimensions, build year, operator, and cached media. Do not fetch third-party pages in the realtime AIS request path.
  • AIS identity cleanup: continue identifying vessels whose display name is only MMSI <number> and backfill names from AISStream static messages, BarentsWatch static fields, or enrichment cache.

AI Provider And Agents

  • Unified integration config schema: implement the shared low-code schema engine for datasource, AI Provider, Web Search, and OCR configuration described in Integration Config Schema System Plan.
  • AI provider routing: finish the OpenClaw-style provider/model routing refactor described in AI Provider OpenClaw-Style Routing Plan, so model-specific transport rules live in provider metadata rather than runtime hardcoding.
  • AI provider catalog: replace the temporary model_provider_apis bridge with structured models_metadata, discovery descriptors, and incremental model sync with stale marking.
  • AI provider connectivity: keep the plug action as lightweight network/auth/model-directory validation only, and keep real generation tests inside Playground or explicit “trial run” actions.
  • Agent runtime foundation: add auditable agent runs, steps, evidence, proposals, and the Agent operations UI described in Agent Runtime, Earth LLM Command, And Speech Entry Plan.
  • Agent tool protocol: add backend JSON tool-call fallback, optional provider-native tool compatibility, tool whitelist validation, and policy-gated proposal application.
  • Speech/ASR integration for agents: add provider-neutral transcription settings and API, defaulting to Whisper-compatible API providers while keeping text commands usable when ASR is unavailable.
  • Earth voice wake: add device-local configurable wake-word preferences, microphone fallback states, and post-wake instruction upload for Earth commands.
  • AI provider compatibility center: move provider/model compatibility rules into a JSON/YAML config read by runtime, instead of continuing to scatter provider-specific branches through Python code.
  • Provider compatibility coverage: add explicit config for OpenAI, Anthropic, MiniMax, Ollama, Moonshot, DeepSeek, Qwen, GLM, Gemini, OpenRouter, vLLM, LM Studio, and One API.
  • Compatibility schema: cover adapter type, base URL pattern, auth header, thinking/reasoning defaults, stream path, tool-call capability, multimodal capability, and provider-specific request patches.
  • BGP geography fallback: evaluate inetnum / inet6num whois as a finer fallback layer after prefix_geography, OpenGeoFeed, and RIR delegated data.

Archive

Archived items stay here so old context is not lost. Completed items remain checked; obsolete, invalid, or superseded items stay unchecked and include the reason.

Completed

  • Implemented the high-precision country boundary tile framework from Earth High Precision Boundary Tiles Plan: static vector tile builder, versioned seed output, frontend bbox tile loader, debounce, in-flight dedupe, and LRU cache.
  • Added the pmtiles-mvt frontend tile provider contract, MVT decoder dependencies, static PMTiles Nginx handling, collector artifact registration, production readiness check, and user operation docs for Earth boundaries.
  • Split Earth boundary ingestion into standard source collectors (earth_admin0_boundaries, earth_coastline, earth_claim_lines) plus the downstream earth_boundary_tiles PMTiles builder.
  • Refined BGP observer and anomaly hover/click feel.
  • Added BGP anomaly relationship display with cables / regions.
  • Added the Earth BGP activity layer so the map still feels alive when incident density is low.
  • Added BGP state expression for stable observation, local fluctuation, and active incident states.
  • Reframed "no active incident" as "observation network is running; no aggregate incident detected".
  • Added collector / region recent activity scoring.
  • Replaced oversized BGP incident glow with compact incident core plus outward pulse rings.
  • Added BGP incident symbol types instead of using one generic bright marker.
  • Switched BGP incident geography from collector-centric to prefix-centric priority.
  • Added prefix_geography as a separate data layer instead of treating prefix_scope as prefix geography.
  • Added IPtoASN / IPtoCountry as the main prefix-centric geography source.
  • Added OpenGeoFeed as a high-quality prefix geography override source.
  • Made RIR delegated data a prefix geography fallback rather than the primary source.
  • Added route leak and path instability / flap detectors after the activity layer work.
  • Console UI modernization. Admin is now the only console, legacy Ant Design / Admin Next code paths and dependencies have been removed, and current console UI uses Planet-owned components.
  • Earth news cruise adapter. News cruise now uses news-cruise-adapter.js and is wired from main.js instead of keeping news-specific sequencing directly in the main Earth loop.
  • Presentation controller ownership. PresentationController now guards async ownership through active request identity checks, and current callers pass per-request card targets so stale connector/card work cannot overwrite the active presentation.
  • Earth live sync. Database writes now flow through earth_data_change_events, earth_db_change_listener, layer adapters, cache invalidation, and the earth_updates WebSocket channel; the Earth frontend debounces updates and refreshes BGP, cables, compute centers, satellites, vessels, news, and interactables by layer.
  • System logs. Log sources now normalize into LogEvent, Admin supports snapshot filtering plus WebSocket tail/follow, task/detail views deep-link into prefiltered logs, and Admin runtime errors report through the admin-client log source.

Obsolete Or Superseded

  • AIS v3.1 old /geo/vessels full-merge requirement. Superseded by /api/v1/vessels/snapshot, controlled legacy fallback, and diagnostics in the AIS aggregation plan.
  • AIS v3.2 old framing of AISStream as a batch collector that needed conversion. Superseded by the implemented long-lived AISStream collector and realtime stream UI.
  • AIS v3.3 old one-shot REST progress semantics for AISStream. Superseded by realtime stream status handling.
  • AIS v3.4 broad identity cleanup wording. Folded into the active AIS identity cleanup and v5 enrichment tasks.
  • Earth surface material overlay for boundary calibration. Superseded by the high-precision boundary tile plan; future work must use source-faithful boundary/coastline data rather than overlay calibration against the coarse base map.
  • Hardcoded Earth news source extraction as a standalone task. Superseded by the broader Earth news source configuration and collector plans.
  • Country-level compute-center fallback placement as a standalone task. Superseded by the shared location pipeline and registry/manual-review backlog.
  • Earth preferences backend sync scope. Superseded by the current product decision to keep Earth preferences device-local in localStorage until account-level synchronization becomes a real requirement.