Commit Graph
74 Commits
Author SHA1 Message Date
ArmorandOpenAI Codex 8d057dbfa3 fix(wiki): proxy topology through public gateway
Co-Authored-By: OpenAI Codex <codex@openai.com>
2026-07-15 10:53:18 +08:00
Armor e3b3a16b10 feat(wiki): embed GHC-05 topology 2026-07-15 00:08:13 +08:00
ArmorandClaude 450080d6fd docs(timeline): add GHC-06 Guanghan 04 module installation EVA-8 to EVA-14
7 EVAs covering unload, cross node positioning, module deployment,
pressurized corridor, and integration testing. Base capacity 10→14.
Also fix typo: 金蟾#3 → 金蟾二号.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-14 23:21:37 +08:00
ArmorandClaude 9d66d00a4e docs(timeline): add GHC-06 EVA-4 and EVA-5 (Jan 23-28)
Fill the gap between EVA-3 (Jan 15 handover) and EVA-6 (Feb 6).
EVA-4: Physical removal of Binglun #1 ISRU equipment after software
shutdown in EVA-2. Binglun #1 converted to standard cargo configuration.
EVA-5: Fuel transfer line verification between Binglun #1/#2 plus full
base system inspection following GHC-05 crew departure.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-14 23:03:27 +08:00
ArmorandClaude ac2578ca8b fix(wiki): use group(1) for script extraction; use link button for topology
The wiki_update_page.py script had a bug where extract_script_to_script_js
used match.group(0) (including <script> tags) instead of group(1) (pure JS).
This caused Wiki.js to render page JS as escaped HTML text rather than
executing it.

Since Wiki.js markdown editor strips iframes and only the markdown editor
is enabled, the topology diagram is now linked via a prominent button that
opens the interactive topology viewer in a new tab.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-13 17:06:33 +08:00
ArmorandClaude e8e2f99450 feat(wiki): embed interactive topology diagram in Guanghan Program page
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-13 16:53:58 +08:00
Armor 2121247583 test(topology): audit presentation adaptation 2026-07-10 00:10:04 +08:00
ArmorandClaude 67261b10a1 test(topology): verify database-driven presentation rendering
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 23:51:18 +08:00
ArmorandClaude 10808fd98b feat(topology): render styles from presentation payload
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 23:49:27 +08:00
ArmorandClaude 2382b5b483 test(topology): require database-driven visual semantics
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 23:46:41 +08:00
ArmorandClaude 7deda3a589 feat(topology): return diagram presentation styles
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 23:46:13 +08:00
ArmorandClaude d214d93f71 feat(topology): seed diagram presentation styles
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 23:44:58 +08:00
ArmorandClaude 00026fbbe7 test(topology): require database presentation payload
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 23:43:20 +08:00
Armor 14ea13d6a4 docs(topology): plan presentation database implementation 2026-07-09 23:40:15 +08:00
Armor 479e37e00f docs(topology): design database-driven presentation layer 2026-07-09 22:51:14 +08:00
Armor f5cbe1b028 test(topology): record repaired page verification 2026-07-09 22:22:30 +08:00
Armor 67229e2cde fix(topology): record verified vehicle dimensions 2026-07-09 22:21:11 +08:00
Armor 5a8a04c440 fix(topology): repair controls navigation and details 2026-07-09 22:08:42 +08:00
Armor 6ff18623e0 feat(topology): render temporal graph from database 2026-07-09 22:04:31 +08:00
Armor 0dbcd3086e feat(topology): persist complete diagram semantics 2026-07-09 21:53:00 +08:00
Armor e7becba0b0 fix(topology): correct mission anchors and rover ports 2026-07-09 21:49:52 +08:00
Armor 808276e225 fix(topology): validate time and list missions 2026-07-09 21:47:29 +08:00
Armor 270956c348 fix(topology): secure and unify demo serving 2026-07-09 21:45:53 +08:00
Armor e5f004fea4 docs: plan Guanghan topology repairs 2026-07-09 21:43:43 +08:00
Armor 9b663aca55 docs: audit Guanghan topology adaptation 2026-07-09 21:35:48 +08:00
ArmorandClaude 772f0f78f6 feat(topology): M2 - API-driven demo page with layout tables and dynamic rendering
- Add diagram_layouts and diagram_nodes tables
- Seed layout coordinates extracted from SVG
- Extend snapshot API to return layout data
- Rewrite demo page to fetch from API dynamically
- Support ?mission= and ?at= URL parameters
- Modal details populated from database component data
- Show/hide nodes based on component existence at snapshot time

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 21:06:13 +08:00
ArmorandClaude b5156d1306 fix(topology): adapt queries for psycopg 3 array syntax
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 20:53:48 +08:00
ArmorandClaude adf3c60688 feat(topology): add seed data script for GHC-01 through GHC-05
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 20:52:11 +08:00
ArmorandClaude e4b633e25d feat(topology): add snapshot query logic, API route, and Flask app entry
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 20:50:09 +08:00
ArmorandClaude 29fc482bb0 feat(topology): add Flask app skeleton with db connection (psycopg 3)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 20:49:23 +08:00
ArmorandClaude d31e09fdea feat(topology): create 8 core tables with constraints and indexes
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 20:48:28 +08:00
ArmorandClaude 481992bacc feat(topology): create database extensions and schema
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-09 20:47:28 +08:00
Armor ec732d5aab docs: design Guanghan temporal topology database 2026-07-09 20:24:12 +08:00
ArmorandCodex 4f41976292 style: label Guanghan radiator panels
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 17:33:57 +08:00
ArmorandCodex b1a91159d9 feat: add Guanghan module detail modal
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 16:59:39 +08:00
ArmorandCodex 2780847c50 feat: rebuild Guanghan topology diagram
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 16:55:39 +08:00
ArmorandCodex 5352173f08 docs: 修正广寒基地加压走道记录
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 16:50:48 +08:00
ArmorandCodex 9f0b8310d8 test: define Guanghan topology contract
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 16:49:08 +08:00
ArmorandCodex 051aadc707 docs: 添加广寒拓扑实施计划
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 16:43:35 +08:00
ArmorandCodex bd1cb1efc7 docs: 记录广寒基地拓扑图设计
Co-Authored-By: Codex <noreply@openai.com>
2026-07-09 16:37:26 +08:00
ArmorandClaude Opus 4.7 491b3c9898 chore: update CLAUDE.md and .env.example
- CLAUDE.md: project reference with naming conventions, wiki publishing, run guide
- .env.example: add XIAOMI_MIMO_API_KEY example

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-09 12:04:50 +08:00
ArmorandClaude Opus 4.7 8d281eefd6 chore: add vision tool and Claude Code skill for UI screenshot review
- scripts/vision.py: call MiMo v2.5 via Anthropic-format API for image analysis
- scripts/screenshot_mission_list.py: Playwright screenshot of /missions page
- .claude/skills/vision.md: Claude Code skill for vision task delegation

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-09 12:04:45 +08:00
ArmorandClaude Opus 4.7 0b4a5c6aa0 style: add mission list page CSS (~190 rules)
Covers previously undefined classes used by /missions and its includes:
- mission-filter-grid, mission-filter-pill, mission-filter-pill-row
- preview-tab, mission-preview-nav, mission-ops-tabs-panel
- mission-page-header, summary-card, mission-page-header-metrics
- data-table, mission-log-table, two-line-cell, table-subline, table-title
- table-actions, table-link, clamp-line, chip, field-label, eyebrow
- mission-datetime-control-row, mission-datetime-display-input
- primary-button, secondary-button
- panel, top-gap, empty-state

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-09 12:04:40 +08:00
ArmorandClaude Opus 4.7 01ea41de9b chore: add CLAUDE.md project reference
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 17:18:23 +08:00
ArmorandClaude Opus 4.7 bbc924f9b2 chore: gitignore all KSP screenshots (~174 MB, 30 PNGs)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:29:04 +08:00
ArmorandClaude Opus 4.7 354c38d246 chore: gitignore wiki-upload cache dirs (~126 MB duplicate PNGs)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:27:37 +08:00
ArmorandClaude Opus 4.7 607ce1e373 chore: update .gitignore — ignore IDE config, temp files, one-off scripts, tests, docs, demo
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:21:12 +08:00
ArmorandClaude Opus 4.7 84e5027874 refactor: client-side timeline rendering with lane stacking, zoom, drag, event positioning
- Client-side buildHTML() replaces server-side Jinja loop rendering
- Greedy lane assignment algorithm (assignLanes) to prevent segment overlap
- assignEventLanes for detached events stacking
- Wheel zoom with cursor-position anchor; drag pan with user-select:none
- Bucket-based positioning: startOfBucket/nextBucket/bucketDelta for precision
- Events positioned on parent segment track lane; detached events in separate row
- resolveScale with explicit ?scale= URL param support
- Backend: add bucket_origin, track, parent_entry_id, parent_track to JSON data

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:19:44 +08:00
ArmorandClaude Opus 4.7 e0c608b7f3 feat: add KSP save file (.sfs) parser script
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:19:37 +08:00
ArmorandClaude Opus 4.7 ac5141fd02 feat: docking log management, sim_time DB-only, modal helpers
- Add docking_log_list and docking_log_delete routes with dedicated page
- _append_docking_log: detect existing state interval before creating new entry
- _append_undocking_log: find entry by node title+at_time, accept docked_at param
- Fix _entry_state_label and _entry_location to return time-correct values
- Add api_set_sim_time POST endpoint; remove sim_time from all url_for() calls
- _resolve_simulation_time simplified to DB-only (no URL param)
- app.js: add openModal/closeModal/toggleTheme helpers
- base.html: add 对接日志管理 nav item, remove Today button

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:19:32 +08:00
ArmorandClaude Opus 4.7 dd5210c203 docs: add ThunderHawk Shuttle wiki page (zh + en)
Third-generation shuttle proposal (late 2020s, cancelled ~2032). MK4 airframe with
internal tankage for full reusability; 3× RS-25EX, CERV-heritage 4 m boosters with
downrange sea landing; 30 t to 650×650 km 51°; 86 m orbiter; 4 crew; ~$35M/flight
target. Competed against Vulture in same government tender. Design elements later
absorbed into Vulture Block 1.5/Block 2.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:19:25 +08:00
ArmorandClaude Opus 4.7 ac071827fa docs: fix ST-02 naming — 克里斯滕→克丽斯腾, Stellaria NEXT→Kristen
- st02_kristen_zh.html: 52 occurrences of 克里斯滕→克丽斯腾
- st01_wanxingyuan_zh.html: 2 link references updated
- stellaria_mothership_en.html: ST-02 Stellaria NEXT → ST-02 Kristen
- wanxingyuan_mothership_zh.html: 万星源NEXT号 → 克丽斯腾号

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:19:17 +08:00
ArmorandClaude Opus 4.7 3cfbf8433d docs: update Vulture Shuttle wiki — RS-25EX specs, abort modes, booster engine-out
- Replace RS-25E with RS-25EX throughout (2.88 t, 26 MPa, 2812 kN, 454 s vac / 2353.7 kN, 380 s SL)
- Dry mass 111.6 t → 110.5 t; burn time 10m16s → 8m30s normal / 12m extended
- Rewrite abort section: 6 modes (add Hard Abort), detailed main engine engine-out
  scenario (100 t to 650×650 km, 28° from Wenchang)
- Add booster engine-out section (TH-12 tolerance, downrange/recovery abort, T+60s
  worst case → RTLS / Hard Abort)
- Fix ST-02 reference: 万星源NEXT号 → 克丽斯腾号

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 16:19:11 +08:00
ArmorandClaude Opus 4.7 e1d601a774 chore: add reference docs, scripts, tests, demo, prototypes
- Reference docs: known issues, user journey, location redesign, mission merge plan
- Scripts: fill_location_state, merge_missions, migrate_location, migrate_state
- Tests: e2e test suite, asset entries unit tests
- Demo: location board, hifi prototypes, test screenshots
- Data backup: asset log entries and state nodes
- Update .gitignore

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 15:29:47 +08:00
ArmorandClaude Opus 4.7 f4909765af docs: update wiki pages, draft board location hierarchy, log book data
- Expand location hierarchy in draft_board.md to 72 items across all systems
- Update ST-01/ST-02/XH-01/XH-02/XH-03/Xihe wiki pages (zh + en)
- Update log_book.xlsx state node detail data for XH-01 and ST-01 missions

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 15:29:18 +08:00
ArmorandClaude Opus 4.7 2fef743e83 feat: timeline refactor, docking UI, location/state dropdowns, sim_time cleanup
Templates:
- mission_timeline_preview: client-side rendering with lane stacking, wheel zoom,
  drag pan, percentage-based layout, event dedup, scale labels
- asset_detail: dock/undock modals with time selection, future event warning,
  Mission Label column replacing Location/State
- asset_entry_form: all_locations expanded to 72 items (draft board hierarchy),
  all_states dynamic from DB, event point dropdown uses same list
- Remove sim_time from all template url_for links
- base.html: remove Today button

JS:
- app.js: sim_time controls use POST /api/v1/sim-time API instead of URL param

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 15:29:10 +08:00
ArmorandClaude Opus 4.7 cc4c460840 feat: docking/undocking API, timeline, state/location fixes, sim_time cleanup
Backend changes:
- Add api_asset_dock with custom dock_time support
- Add api_asset_undock with delete_future/edit_future actions
- Add _append_docking_log, _append_undocking_log, _remove_undocking_log helpers
- Fix _entry_state_label to return time-correct most recent state
- Fix _entry_location to return time-correct most recent location
- Add _all_state_labels() merging DB labels with defaults for dropdown
- Add api_set_sim_time POST endpoint
- Remove sim_time from all url_for() calls
- Simplify _resolve_simulation_time to DB-only (no URL param)
- Update _build_docking_summary to return event_id and undocked_at
- Add location_list to timeline filters (draft board hierarchy)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 15:29:00 +08:00
ArmorandClaude Opus 4.7 daad4ccac9 feat: add DockingEvent model and docking styles
- Add DockingEvent model with parent/child asset relations, docked_at/undocked_at timestamps
- Add docking migration for new docking_events table
- Add .ad-dock, .ad-dock-box, .ad-dock-item, .ad-undock CSS classes

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 15:28:50 +08:00
Armor 22fd132a5a fix: remove Star Port from ST-01/ST-02 construction, use Vulture-only; remove English orbiter names 2026-05-29 22:12:56 +08:00
ArmorandClaude Opus 4.7 22c44a7563 docs: create individual ST-01/ST-02 pages, fix XH-02/XH-03 English versions
New pages:
- ST-01 万星源号/Stellaria zh+en: dual-origin story (base mothership→pause→reconfigure)
  7 mission subsections: Inner Solar System, Mars One 2, Europa Outpost 1,
  Major Overhaul (2nd gravity ring), Saturn 1, Star Port upgrade, Neptune
- ST-02 克里斯滕/Kristen zh+en: extended reconfiguration (884 days)
  Mars Expedition 1, Europa Outpost 2, Europa Expedition 2 (ongoing)

Fixed:
- XH-02 en: align with zh version (dates, missions, status)
- XH-03 en: align with zh version (dates, trial run status)

All pages: hyperlinks on first mention, database-sourced dates,
natural Chinese terminology, specific VLT numbers and orbiter names

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 18:16:04 +08:00
ArmorandClaude Opus 4.7 6f274ab287 docs: add VLT mission numbers and shuttle names to XH-01 construction timeline
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 18:00:57 +08:00
ArmorandClaude Opus 4.7 031113ded5 docs: add trajectory profiles to Xihe-class, remove mass column from XH-01 timeline
- Add 任务剖面设计 section: standard (<200 km/s) and fast-travel (<250 km/s)
  profiles with typical transit times (Mars ~30d, Jupiter ~70d one-way)
- Remove inaccurate module mass column from XH-01 launch timeline
- Annotate all XH-01 missions with profile type used
- Fix remaining 注入速度 terminology

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 17:40:03 +08:00
ArmorandClaude Opus 4.7 e2f69e41e2 docs: restructure Xihe overview, expand XH-01 construction timeline
Xihe overview:
- Remove individual ship mission details from lead/intro
- Replace "ferry shuttle" with 摆渡航天飞机 throughout
- Add detailed construction evolution: Vulture orbital relay method
  vs later Qingtian + Star Port dock assembly
- Condense operational history to class-level summary
- Restructure fleet table: construction start -> operational entry -> current task

XH-01 羲和号:
- Add detailed launch-by-launch construction timeline (8 Vulture + 1 heavy rocket)
- Document "轨道器接力" assembly method in full detail
- Clean up operational history language (remove game terms like 注入速度)

New memory: wiki-linking-convention — first mention of any vehicle must hyperlink

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 17:32:50 +08:00
ArmorandClaude Opus 4.7 8e015560b7 fix: correct Xihe-class dates and data from KSP database asset logs
All dates now sourced from PostgreSQL asset_log_entries, not Excel files:
- XH-02 太白号: construction 2054-12-11 to 2056-10-04
  - Asteroid Exploration Mission (Vesta) 2057-2058
  - Mars Expedition 3 (2058-2059)
  - Mars Expedition 4 (ongoing at 2060-03)
- XH-03 常曦号: construction 2058-02-15 to 2059-12-09
  - Trial run 2060-01-14 to 2060-06-09 (in progress)
- XH-04: construction 2059-09-16 to 2061-08-10 (expected)
- ST-02 named Kristen, ST-03 named Muelsyse (from DB)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 17:05:32 +08:00
ArmorandClaude Opus 4.7 d52e833337 docs: create individual Xihe-class mothership pages, restructure overview
Overview page (xihe_mothership):
- Polish: use Chinese ship names throughout with wiki links
- Add "与万星源级的关系" section explaining hull transfer to Stellaria
- Add construction evolution: Vulture LEO assembly → Qingtian + Star Port
- Condense operational history, defer to individual ship pages
- Fix problematic "XH-01既是舰级也是技术谱系" paragraph

New individual ship pages:
- XH-01 羲和号: 693-day LEO construction, 8 mission subsections (2053-2060)
- XH-02 太白号: Qingtian+Star Port construction, Vesta + Mars missions
- XH-03 常曦号: Jupiter relay role, currently in shakedown (2060)

Wiki paths: /home/Exploration_Motherships/Xihe/XH-01, XH-02, XH-03

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 14:47:20 +08:00
ArmorandClaude Opus 4.7 9841e1a2a7 docs: restructure Xihe and Stellaria wiki pages with fleet data and mission history
Phase 1 - Framework restructuring:
- Remove empty image gallery sections
- Add mission history subsection structure
- Expand construction & development sections
- Update info boxes with current status (2060-03-12)

Phase 2 - Fleet data:
- Add XH-04 and ST-04 to fleet tables
- Correct ST-03 status from "planned" to "in service"
- Add Jinwu-class (金乌级) cargo ships JW-01/02/03

Phase 3 - Mission history:
- Xihe: 8 detailed mission subsections (2053-2060)
- Stellaria: 7 detailed mission subsections (2055-2060)
- Document first Mars crew handover (2056-09-17)
- Document historic firsts: Mercury landing, Venus mission, Titan ops

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 12:01:27 +08:00
ArmorandClaude Opus 4.7 5a1c28e819 feat: add CERV Shuttle wiki pages (zh+en), global timeline realignment
- Add CERV Shuttle zh+en wiki pages with full technical specs, fleet data, mission history
- Realign all shuttle pages to current simulation time (2060-03-12):
  - Vulture B1 first flight 2037, B1.5 conversion 2051-2053, B2 first flight 2055
  - Echo first flight 2056, operational 2057
  - Enterprise first flight 2057, operational 2058
- Update CERV technical data: dimensions, masses, fuel quantities, endurance
- Expand Vulture fleet with 10 named orbiters, 3-batch structure, rich events table
- Update CERV booster recovery to RTLS mode
- Move reference files to reference/ directory
- Save simulation_time memory reference

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 11:35:12 +08:00
Armor e6be6058a5 docs: add project handover guides 2026-05-28 11:33:19 +08:00
Armor e0c6e4876b docs: add ksp wiki content sources 2026-05-28 11:33:00 +08:00
Armor cda0db06db feat: add wiki publishing tooling 2026-05-28 11:32:36 +08:00
Armor fee9b13ada feat: improve mission asset operations 2026-05-28 11:32:11 +08:00
Armor 1a8af63383 测试 2026-05-08 15:25:13 +08:00
Armor 507fb9789a update 2026-05-08 15:16:04 +08:00
Armor 042b626ccb 更新 2026-05-08 15:09:07 +08:00