Files
llm/docs/1c-sql-protocol/implementation/adapter-components.md
T
2026-08-14 09:40:51 +03:00

1.9 KiB

Current adapter component map

This map says where to extend the project without losing protocol boundaries. It is not a substitute for reading the linked source before editing it.

Component Location Responsibility Evidence boundary
RPC/service orchestration plugins/1c/connector/adapter_1c_server.py Base resolution, live SQL calls, saved-state plans/apply, verification, backups Must keep active layers read-only
Payload codec plugins/1c/parser/payload.py Envelope detection, decompression, lossless encode metadata Require byte-identical unchanged round trip
Brace parser plugins/1c/parser/* Decode 1C serialized brace/value trees A parse tree is not semantic proof by itself
Extension routes plugins/1c/parser/extensions.py and adapter extension resolvers _ExtensionsInfo and ConfigCAS manifest routes Never infer part role from suffix alone
DBNames mapping plugins/1c/parser/dbnames.py Metadata-to-physical SQL role evidence Names/roles must come from live DBNames evidence
Storage access adapter storage helpers Single/multi-part row reads, hashes, paired extension map updates, compare-and-set and backups Writes only to allowed saved-state tables
Policy plugins/1c/connector/policies/ Runtime boundary and base-access rules Policy must match tested capability, not aspiration
Regression tests tests/1c/ and scripts/smoke_1c_* Preserve routes and observed protocol rules Add fixture/test before promoting a decoder rule

Required update order for a new object type

  1. Add an experiment record with before/after SQL evidence.
  2. Add/extend a decoder fixture and test.
  3. Add the narrow codec or route resolver.
  4. Add a writer only after lossless round-trip, paired-index handling, rollback, and human activation verification.
  5. Update the relevant topic document and this map if ownership changed.