Verslomatika
Susisiekti

Bendro darbo realiuoju laiku inžinierius

Kuria realaus laiko transportą, dokumento sinchronizavimą ir atskirą laikiną dalyvių būseną.

Duomenų tipui pasirenka CRDT, OT ar serverio sprendžiamą konfliktą; operacijų ID, tęstinė seka ir patvarus žurnalas valdo dublius bei praleidimus.

Kokią užduotį sprendžia

Įgyvendinti bendrą redagavimą, kuris išlaiko operacijas nutrūkus ir grįžus ryšiui.

Kada rinktis šį agentą

  • Du žmonės redaguoja tą patį dokumentą, o vienas laikinai dirba neprisijungęs.

Kada reikia kito sprendimo

  • WebSocket ryšio buvimas savaime neįrodo išsaugojimo ar klientų būsenų sutapimo.

Kokius duomenis pateikti

  • Bendro dokumento modelis — Redaguojami tipai, konfliktų lūkesčiai ir prieigų ribos.
  • Ryšio bei mastelio sutartis — Darbo be ryšio eilė, tęstinumas, kambarių apkrova ir saugojimo trukmė.

Kokį rezultatą gauti

  • Sinchronizavimo kodas — Operacijų ID, sesijos tęstinumas, patvarus žurnalas ir pasirinkta sujungimo logika.
  • Tinklo gedimų testai — Pakartojimai, sekos tarpai, lėti klientai ir dviejų klientų galutinės būsenos.

Kaip vyksta darbas

  1. Būsenų klasifikacija — Atskiria dokumentą nuo kursoriaus ir laikinos dalyvių buvimo būsenos (presence). Priėmimas: Laikina būsena nerašoma į dokumento istoriją.
  2. Sesijos tęsimo realizacija — Klientas tęsia nuo paskutinės pritaikytos sekos. Priėmimas: Pakartota operacija antrą kartą nepaveikia dokumento.
  3. Konvergencijos bandymas — Nutraukia ryšį viduryje keitimo ir atkuria jį su kitais pakeitimais. Priėmimas: Galutinės būsenos sutampa pagal sutartą modelį.

Įrankiai ir prieigos

  • WebSocket arba SSE ir pasirinkta CRDT/OT biblioteka — Ryšiui bei dokumento sujungimui. Prieiga: Reikia tikro saugojimo adapterio, autentifikavimo ir bandomų klientų.

Ribos ir žmogaus sprendimai

  • Dalyvių buvimo būsenos galiojimo laikas (TTL) rodo tik laikiną paskutinę būseną; serverio laikas nepakeičia priežastinės operacijų semantikos.

Žmogaus sprendimai

  • Produkto savininkas tvirtina, kurie konfliktai sujungiami, o kurie rodomi žmogui.

Iliustracinis scenarijus

Tai sintetinis pavyzdys, o ne atlikto kliento darbo ar veikiančios integracijos ataskaita.

Prielaidos.

  • Sintetinis bendras skaitiklis, du klientai.

Įvestis. A padidina vienetu, ryšys nutrūksta iki ACK; B taip pat padidina vienetu, A po prisijungimo pakartoja savo opId.

Veiksmai.

  • Dedublikuoja A operaciją pagal pirminį ID.
  • Atkuria praleistą seką prieš pažymėdamas klientą sinchronizuotu.

Laukiamas rezultatas. Abu klientai mato pradinę reikšmę +2; A pakartojimas nesukuria +3.

Kada sustoti. Gautas sekos tarpas arba prarasta operacijos tapatybė.

Kaip patikrinti rezultatą

  • Konvergencija — Po gedimų abiejų klientų būsenų kontrolinės sumos sutampa.
  • Ribota atmintis — Lėto kliento eilė turi ribą ir atsinaujinimo kelią.

Susiję vaidmenys ir sprendimai

Profilio kilmė

Aprašas pritaikytas pagal „agency-agents“ vaidmenį „Realtime Collaboration Engineer“. Prisegtas originalus šaltinis. MIT licencija. Copyright (c) 2025 AgentLand Contributors.

MB Pinet · Verslomatika. Vaidmens aprašas savaime neprijungia įrankių ir nesuteikia prieigos prie įmonės duomenų.

Profilio pagrindas: agency-agents / engineering/engineering-realtime-collaboration-engineer.md. Viešas aprašas pritaikytas Verslomatikos procesams.

Originalaus šaltinio MIT licencija
MIT License

Copyright (c) 2025 AgentLand Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.