Commit Graph

  • 9dc667f8da fix: verify mysql identity and jt808 field aliases lingniu 2026-06-29 18:15:55 +08:00
  • bf09f4e9b2 fix: delay jt808 ack until durable dispatch lingniu 2026-06-29 18:07:00 +08:00
  • 705b507f88 fix: stabilize jt808 fanout and dedup lingniu 2026-06-29 17:57:46 +08:00
  • 1d569b7bf3 feat: persist jt808 registration identity lingniu 2026-06-29 17:42:04 +08:00
  • d003757308 test: stabilize jt808 smoke sender lingniu 2026-06-29 17:35:12 +08:00
  • acf087a3f5 test: add jt808 e2e smoke verifier lingniu 2026-06-29 17:29:09 +08:00
  • 9372256940 feat: refresh mysql vehicle identity cache lingniu 2026-06-29 17:07:53 +08:00
  • f00d851f2a perf: cache mysql vehicle identity lookups lingniu 2026-06-29 17:00:54 +08:00
  • 114e707a5b feat: add mysql vehicle identity store lingniu 2026-06-29 16:53:55 +08:00
  • 7b346420af fix: preserve jt808 registration metadata lingniu 2026-06-29 16:35:02 +08:00
  • ef9ac327fe docs: document local ingest deployment verification lingniu 2026-06-29 16:18:52 +08:00
  • d2bc4a0d0a fix: align portainer archive and jt808 port lingniu 2026-06-29 16:09:02 +08:00
  • 98b37e71e9 fix: keep jt808 raw history consumer current lingniu 2026-06-29 15:56:41 +08:00
  • 57ef82f563 fix: expose jt808 location raw archive uri lingniu 2026-06-29 15:27:43 +08:00
  • 6646b9b1e1 fix: preserve jt808 location raw archive uri lingniu 2026-06-29 15:23:34 +08:00
  • b244984fcb fix: stabilize jt808 tdengine history writes lingniu 2026-06-29 15:17:31 +08:00
  • 8fe0adcac9 fix: create history consumer processor in app runtime lingniu 2026-06-29 14:58:19 +08:00
  • 00eee9a769 fix: start history kafka consumer after processor setup lingniu 2026-06-29 14:55:44 +08:00
  • 06423db8d4 fix: always register kafka consumer runner when enabled lingniu 2026-06-29 14:52:18 +08:00
  • 7abac30ea4 fix: drop history export and tolerate empty tdengine tables lingniu 2026-06-29 14:47:54 +08:00
  • b631d5d998 docs: add tdengine verification runbook lingniu 2026-06-29 14:35:20 +08:00
  • a66cfe1532 fix: report history storage availability clearly lingniu 2026-06-29 14:35:13 +08:00
  • 2273d72e95 fix: initialize tdengine schema before first write lingniu 2026-06-29 14:28:53 +08:00
  • 57ba7dca90 feat: configure tdengine history datasource lingniu 2026-06-29 14:21:56 +08:00
  • 192f115176 feat: add telemetry field history api lingniu 2026-06-29 13:59:06 +08:00
  • 90342fe5bf feat: query telemetry fields from tdengine lingniu 2026-06-29 13:55:25 +08:00
  • 84de9b2dfa test: stabilize gb32960 durable ack boundary lingniu 2026-06-29 13:55:18 +08:00
  • 3904dcf869 feat: persist telemetry fields to tdengine lingniu 2026-06-29 13:48:04 +08:00
  • ab9c669e76 feat: add jt808 tdengine location query api lingniu 2026-06-29 13:42:37 +08:00
  • 8466d622f6 feat: add tdengine history keyset queries lingniu 2026-06-29 13:38:39 +08:00
  • e708091f2d feat: write history envelopes to tdengine lingniu 2026-06-29 13:31:33 +08:00
  • 4de723d0b4 feat: add tdengine jdbc history writer lingniu 2026-06-29 13:28:36 +08:00
  • f58fe51cf5 feat: add tdengine history store foundation lingniu 2026-06-29 13:25:31 +08:00
  • 5a60b8c43c fix: consume jt808 history topics by default lingniu 2026-06-29 13:11:25 +08:00
  • feb9552234 feat: persist raw frames and publish raw facts lingniu 2026-06-29 13:10:14 +08:00
  • 9c2779f82b feat: add fact payloads to kafka envelope lingniu 2026-06-29 12:58:27 +08:00
  • 0ec29a732c feat: add raw archive store contract lingniu 2026-06-29 12:56:50 +08:00
  • 969a245454 feat: add decoded fact model lingniu 2026-06-29 12:55:20 +08:00
  • b5453ff888 feat: add raw frame fact model lingniu 2026-06-29 12:54:16 +08:00
  • aed023043c feat: add vehicle key derivation lingniu 2026-06-29 12:53:08 +08:00
  • 4feb1ec829 build: add ingest facts module lingniu 2026-06-29 12:52:17 +08:00
  • 310ef94a6e docs: plan vehicle ingest redesign phase 1 lingniu 2026-06-29 12:50:41 +08:00
  • 8d69296b09 docs: add chinese vehicle ingest redesign spec lingniu 2026-06-29 12:35:31 +08:00
  • cd953e7cd7 docs: add vehicle ingest redesign spec lingniu 2026-06-29 12:32:05 +08:00
  • ec555cd67a fix: avoid jt808 fallback ids as vin lingniu 2026-06-26 11:37:37 +08:00
  • 5e619c3634 feat: add jt808 ingest app lingniu 2026-06-26 11:17:27 +08:00
  • db871b7531 chore: use public aliyun acr in woodpecker lingniu 2026-06-24 17:00:30 +08:00
  • e5628bd2f3 chore: use aliyun acr vpc registry lingniu 2026-06-24 16:52:33 +08:00
  • 76325af982 chore: push images to aliyun acr lingniu 2026-06-24 16:52:05 +08:00
  • 310cf9526c chore: skip tests in woodpecker build lingniu 2026-06-24 16:41:27 +08:00
  • a628728296 chore: add portainer compose for split apps lingniu 2026-06-24 14:47:02 +08:00
  • 22468e78b4 chore: wire split apps deployment config lingniu 2026-06-24 14:38:59 +08:00
  • a70f8f39ad Merge branch 'codex/gb32960-service-split' lingniu 2026-06-24 14:32:59 +08:00
  • b983f77c23 chore: make gb32960 diagnostics frame key limit configurable lingniu 2026-06-24 11:56:04 +08:00
  • 620821b624 docs: plan gb32960 duckdb hot history lingniu 2026-06-23 19:39:06 +08:00
  • 9d7af780cd docs: design gb32960 production readiness lingniu 2026-06-23 19:35:35 +08:00
  • 29be62656f docs: record remote kafka live verification lingniu 2026-06-23 18:27:52 +08:00
  • ca10ea0d4d docs: record gb32960 split verification lingniu 2026-06-23 18:15:59 +08:00
  • 8c6168e592 docs: clarify gb32960 split verification limits lingniu 2026-06-23 18:13:42 +08:00
  • b17889c2e2 docs: add gb32960 split service runbook lingniu 2026-06-23 18:07:21 +08:00
  • c46b46beb8 test: cover split consumer default toggles lingniu 2026-06-23 18:00:34 +08:00
  • 2431c14934 test: assert split app defaults lingniu 2026-06-23 17:57:52 +08:00
  • 6a8b53bab6 feat: split history and analytics consumers lingniu 2026-06-23 17:43:28 +08:00
  • f9aa214dc2 fix: preflight required kafka sink lingniu 2026-06-23 17:36:24 +08:00
  • a80b38bd04 fix: enforce gb32960 kafka ack boundary lingniu 2026-06-23 17:27:12 +08:00
  • 633b3ea9c9 feat: ack gb32960 after kafka boundary lingniu 2026-06-23 17:10:46 +08:00
  • 6b82144f3c feat: ingest raw archive envelopes in history lingniu 2026-06-23 16:58:45 +08:00
  • 66807fdf3d feat: route gb32960 kafka topics lingniu 2026-06-23 16:50:07 +08:00
  • 8e9afd79ac test: make split composition tests hermetic lingniu 2026-06-23 16:45:32 +08:00
  • 6423987ddf test: cover split service composition lingniu 2026-06-23 16:37:05 +08:00
  • 06cb6aa4b9 fix: align split app runtime dependencies lingniu 2026-06-23 16:24:32 +08:00
  • f79d995b8c feat: add split service entrypoints lingniu 2026-06-23 16:14:32 +08:00
  • 4ff481c324 build: defer split app repackaging lingniu 2026-06-23 16:04:07 +08:00
  • 27b421d49b build: add split service app modules lingniu 2026-06-23 15:58:51 +08:00
  • d7afb8e599 fix: harden local archive sink lingniu 2026-06-23 15:54:41 +08:00
  • 019512bac2 fix: restore sink archive implementation lingniu 2026-06-23 15:42:35 +08:00
  • 58d46bc372 chore: ignore local worktrees lingniu 2026-06-23 15:39:21 +08:00
  • 662d04714d docs: plan gb32960 service split lingniu 2026-06-23 15:35:51 +08:00
  • 33c9931057 docs: design gb32960 service split lingniu 2026-06-23 15:28:18 +08:00
  • a096e4ce0e docs: add detailed 32960 pipeline comments kkfluous 2026-06-23 13:17:37 +08:00
  • ba68ffe061 feat: make gb32960 archive history query production ready kkfluous 2026-06-23 11:55:44 +08:00
  • b14871ff1c test(bootstrap): e2e verify gb32960 frame lands in archive store kkfluous 2026-04-20 16:26:04 +08:00
  • 1c1d400784 docs(changelog): record raw archive event sink integration kkfluous 2026-04-20 15:55:14 +08:00
  • 812b8877d4 feat(ingest-core): Dispatcher emits RawArchive event per inbound frame kkfluous 2026-04-20 15:54:59 +08:00
  • dd838b4f73 feat(sink-archive): ArchiveEventSink consumes RawArchive events to cold storage kkfluous 2026-04-20 15:54:54 +08:00
  • bfc3c29c40 feat(api): add VehicleEvent.RawArchive sealed variant for raw cold-storage kkfluous 2026-04-20 15:54:46 +08:00
  • 4d8dd54e59 refactor(gb32960): extract channelRead0 command branches into private methods kkfluous 2026-04-20 15:41:59 +08:00
  • da28a0c8d5 fix(gb32960): emit platform login/logout events instead of swallowing them kkfluous 2026-04-20 15:27:52 +08:00
  • ce87c8ee26 docs(changelog): record gb32960 body parser block isolation kkfluous 2026-04-20 15:18:26 +08:00
  • f9b9c2a6a7 config(gb32960): document parse.lenient-block-failure in application.yml kkfluous 2026-04-20 15:17:07 +08:00
  • 310d1d46f1 config(gb32960): wire parse.lenientBlockFailure into BodyParser bean kkfluous 2026-04-20 15:16:31 +08:00
  • 89a7c07106 feat(gb32960): isolate per-block parse failures in body parser kkfluous 2026-04-20 15:15:41 +08:00
  • 9cbc19578b test(gb32960): red — isolation test suite for body parser block failures kkfluous 2026-04-20 15:13:53 +08:00
  • fa552f4b20 config(gb32960): add parse.lenientBlockFailure toggle kkfluous 2026-04-20 15:12:16 +08:00
  • d8279ac3b7 chore(gb32960): demote high-frequency report/heartbeat ack logs to DEBUG lingniu-dev 2026-04-15 17:43:52 +08:00
  • e8150114df feat(gb32960/vendor): add TLV catch-all parser for Guangdong peer 0x83 lingniu-dev 2026-04-15 17:13:46 +08:00
  • abd1c7c6d6 config(gb32960): enable guangdong-fc vendor extension for lingniu account lingniu-dev 2026-04-15 17:00:56 +08:00
  • 184963e1c2 test(gb32960): end-to-end test for Guangdong fuel-cell vendor profile lingniu-dev 2026-04-15 16:56:04 +08:00
  • dd8f75e0da refactor(gb32960/model): nest InfoBlock by <protocol+version>.<dataType> lingniu-dev 2026-04-15 16:52:57 +08:00
  • 982272460a feat(gb32960): wire vendor parser profile selector into decoder pipeline lingniu-dev 2026-04-15 16:38:31 +08:00