1.9 KiB
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
- Add an experiment record with before/after SQL evidence.
- Add/extend a decoder fixture and test.
- Add the narrow codec or route resolver.
- Add a writer only after lossless round-trip, paired-index handling, rollback, and human activation verification.
- Update the relevant topic document and this map if ownership changed.