Piani di implementazione KamoPBX (programma + 9 fasi)
Decomposto in un piano per fase; un unico piano non produrrebbe software di lavoro fino alla fine. Dettaglio TDD a morso completo: Fase 0 cancello infrastruttu...
Record KamoPBX decisioni — KAZOO confermato, k3m1 posizionamento, ACDc, Tier 3 rebrand
Sei domande aperte hanno risposto: 1. KAZOO è l'itinerario; hardware di proprietà, così il inquadramento dei costi rimosso interamente. 2. Un nodo/cluster ora, ...
Chiudere SW5
Sei partenze. Il più acuto: il proxy task-book non poteva essere copiato da le citazioni proxy, che esporta PATCH e no PUT — una copia verbale sarebbe hanno fat...
BaseLosController non autorizzato()/forbidden() esiste
Un compito breve ha detto a un attuatore che quegli aiutanti sono stati inventati e non ha fatto esiste. richiedonoOrgId veramente non; questi due fanno, dichia...
Registrare la trappola di enum-ordering il PBX rollout
Vedere una riga di catalogo il cui prezzo model è un nuovo valore enum rende quella riga illeggibile a qualsiasi servizio ancora su un vecchio condiviso-lib, e ...
Ripristina la chiusura di SW4, persa a un'editing stale working-tree
Il commit precedente ha modificato la copia on-disk di questo piano, che ha predato Sezione saltata — quella sezione è stata allegata a una copia della gratta e...
Applicare DDL apre una finestra 40001 — guardarlo, non riavviare
Bumping una versione di catalogo lascia in pool connessioni JDBC tenendo il vecchio e la prossima query attraverso ogni fallisce SQLState 40001, che Hibernate f...
Chiudere SW4
Nove partenze. I due che hanno più importanza: questo piano è proprio Self-Review affermò che un tipo era coerente in tre luoghi, ed era coerente e sbagliato; e...
QuoteConversionResult.orderUid è uno String, non un UUID
Ordine estende BaseEntity, il cui id è un lungo — solo Quote, QuoteOption e QuoteLineItem estendere BaseUuidEntity. Il piano ha dichiarato UUID e il suo Self-Re...
Il dizionario SW4 chiavi atterrare nel repo del dizionario
Elenco dei file 6a chiamato kamo-internal/messages/en.json, che è gitignored e non può essere commesso. La prosa del passo aveva ragione; la lista Non lo era.
Piano SW5, il task book a tasso piatto
La premessa della spec che nessuna linea porta una durata del lavoro è andata ore stanti fa — SW3 ha atterrato il lavoroMinutes e taskCodice su ServiceLineItem,...
Pianifica per-mailbox fatturazione e la casella di posta personale backend
Piani B e C di 3. Self-review ha chiuso cinque lacune: niente set mail cost mode, niente lato server ha fermato un gruppo di fatturazione che comprava component...
Correggere la spec — StorageAutoExpandSweep esiste già
La spec sosteneva che non esisteva alcun riconciliatore server-driven-quantity per riutilizzare e elencato le colonne auto-espand di archiviazione come morto. E...
Design per-mailbox fatturazione e add-on gating
Bills e-mail dalla casella di posta piuttosto che la sede, gates fornitore scelta sul componente aggiuntivo che lo copre, e attribuisce ogni casella di posta al...
Definire il comportamento di SW4 per un preventivo senza mercato
Compito 1 creato() leggere marketUid ma non ha backfill, così ogni citazione che esiste ancora oggi ha un mercato nullo. Il convertitore deve rientrare BuyLineI...
La scelta di fatturazione di SW4 è per-org
Chiamata del proprietario, e quella giusta: un contratto di manutenzione fattura ogni periodo, un installatore di capitale-equipment fattura il termine davanti....
Plan SW4, quote to order conversion
Five defects, not the spec's three. The converter deliberately does NOT mint a Commitment: processOrderPaid returns immediately when one exists, so hand-creatin...
Registrare ciò che la colonna del commutatore di chat ha lasciato annullare
Ordinato da cosa farebbe del male se lasciato solo. Il primo ingresso è quello che vale da MediaService, che non è stato esaminato — cinque dei sei secchi del c...
Chiudere SW3
Tredici partenze dal piano. I due più importanti: OrderLineItem .discountType non avrebbe mai dovuto essere uno String ed esportare il DDL prima applicarlo ha m...
Corretto SW3's ServiceJob importazioni e pin la trappola PROCUREMENT
Compito 2 importato dao.beans.account. Conto e dao.beans.organizzazione .Organizzazione. I pacchetti reali sono conti e org — non avrebbe compilato. I supporti...
Correggere la richiesta del piano SW3
Compito 6 indicato al RetailInventoryPolicy come membro implementato del politica famiglia per copiare una forma di iniezione da. Non è mai istantaneo e mai ini...
Pianificare SW3, il core di dominio Service Work
ServiceJob 1..N Servizio Visita come fratellino di FulfillmentOrder, un riempito ServiceLineItem, le quattro assi di classificazione e una macchina di stato che...
Chiudere SW2
Quattro compiti, cinque partenze dal piano. Il più forte: il piano è proprio restrizione Maschera snippet filtrato fuori null dayOfWeek, che significa 'ogni gio...
Correggere due errori nel piano SW2
La ricetta rsync ha usato un nudo 'rsync -a', che conserva mtimes — un file restaurato a una versione precedente arriva più vecchio della classe . compilato da ...
Piano SW2, le tre riparazioni del calendario
La ricerca ha corretto la spec su un punto: la ricorrenza non è morta a entrambi finisce. L'UI rende la pagina del calendario oggi e silenziosamente scarta ciò ...
Seguito delle notificazioni-spine, triaged
Oggetti differiti dal piano 33-task, tutti sollevati da revisione e tutti non-bloccanti. I quattro risultati della recensione integrale sono stati fissati e non...
Prendere le misure softphone invece di aspettarle
38 chiamate nell'intera storia di PHONE CALL LOG, 26 negli ultimi 30 giorni. The drop-then-redial impronte trova 4 coppie, tutte le chiamate di prova di provisi...
Servizio I primi diritti del lavoro e il divario del permesso di commercio
Corregge due ipotesi spec contro il codice reale: no RoleRight Tipo di utilizzo Non e' vero. (tutti i 36 diritti commerciali utilizzano POS, e i redattori filtr...
Segnare la finestra di riga eseguita
Tutti e otto i compiti spediti in quattro repos, con le quattro deviazioni deliberate registrato — più importante che la superficie di chiamata del Task 6 sia s...
Tenere il registro delle decisioni — 18 sentenze e che cosa ogni costo se sbagliato
Il piano riporta ciò che è stato spedito; questo registra perché differisce dal piano. Tre sentenze sono state corrette da una revisione successiva (la scrittur...
Il collegamento KamoDesktop è un uso unico ora
Il commento ha sostenuto un reload re-submits ?data= e ripristina la sessione. No. più a lungo fa: il link viene speso nel momento in cui la scheda lo apre, qui...
Smettere il piano di istruire il bug del percorso di soldi è stato corretto su
Task 8 Passo 4 ha ancora detto al lettore di aggiornamento chiave/cancel/detach/del con "l'intento attuale nella chiave". Questo è il difetto critico la recensi...
Rispondi alla più grande domanda aperta di softphone spec
Verificato dal vivo sul cluster: ogni AOR FreePBX è max contacts=1 con remove existing=yes. Quel valore non è stato stabilito da nessuna parte in nessun repo di...
Segnare il piano di guardrails softphone eseguito
Real commit SHAs al posto del segnaposto, e 47 passi ticked. Un finito piano che mostra tutte le scatole non controllate male come lavoro abbandonato.
Piani di attuazione per la finestra della linea softphone
Due piani, perché la spec copre due sottosistemi e le prime navi che lavorano software da solo. Il piano guardrails è sette compiti che non hanno bisogno di un...
Progettare la finestra della linea softphone
Una chiamata non può essere spostata in una finestra dopo l'inizio — una RTCPeerConnection e il suo MediaStream non sono trasferibili tra i contesti di navigazi...
Impedire la progettazione del programma di lavoro di Dispatch/Service e il suo corpo di prova
Entrambe le specifiche del programma e tutti i 56 file di ricerca sono stati non estratti ed esistevano solo su un disco, mentre HANDOFF.md dice alla sessione s...
Pianifica l'indurimento e l'idempotency webhook attraverso BillingService, la biblioteca condivisa e APIService
Dieci compiti, TDD in tutto, con la gravità ribadita a ciò che era in realtà verificato: la Stripe fall-open è latente (il segreto è presente in prod, 38 bytes)...
Piano di attuazione per esagonali silenziosi e la colonna vertebrale di notifica
33 attività in cinque fasi il cui ordine è portante: lo schema deve essere eseguito prima di qualsiasi servizio mappa una colonna, la biblioteca pubblicata prim...
Design per esagonali silenziosi e la colonna vertebrale di notifica per-superficie
Una finestra di chat minimizzata si riapre su ogni messaggio in arrivo. La testa di cavallo dovrebbe assorbirlo invece — contare, thump, rimanere messo — e solo...
Progettare la scansione del marchio del sito
Dove il campo /network/create Website si trasforma in logo, colore e suggerimenti di sfondo sui tre passi di branding. Registra due cose che sono facili da sba...
Correggere ciò che la vita di KamoDesktop SSO token in realtà è
Il commento ha chiamato il link "short-lived, single-use" e "5-minute", che è che cosa ha causato la scadenza token per essere impostato come se fosse una fines...
Registra che l'ordine di campo Java non controlla l'ordine chiave DDL
L'asserzione chiave composito è passata mentre ddl-auto costruito in realtà KEY PRIMARY (logical id, risorsa type, inquilino id) — Emette Hibernate @EmbeddedId ...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.