From 55bd4b71df432a1405216149cbacdb43fa4dd663 Mon Sep 17 00:00:00 2001 From: newmattock <152253273+newmattock@users.noreply.github.com> Date: Sat, 16 May 2026 10:56:06 -0700 Subject: [PATCH] Add discussion sidebar audit --- .../README.md | 26 ++ .../docs/demo.mp4 | Bin 0 -> 296510 bytes .../docs/demo.svg | 29 ++ .../docs/discussion-sidebar-audit-report.json | 196 ++++++++++++ .../docs/requirement-map.md | 14 + .../package.json | 15 + .../sample/discussion-sidebar-packet.json | 185 +++++++++++ .../scripts/demo.js | 57 ++++ .../scripts/render-demo-video.m | 165 ++++++++++ .../collaborative-discussion-sidebar-audit.js | 292 ++++++++++++++++++ ...aborative-discussion-sidebar-audit.test.js | 84 +++++ 11 files changed, 1063 insertions(+) create mode 100644 collaborative-discussion-sidebar-audit/README.md create mode 100644 collaborative-discussion-sidebar-audit/docs/demo.mp4 create mode 100644 collaborative-discussion-sidebar-audit/docs/demo.svg create mode 100644 collaborative-discussion-sidebar-audit/docs/discussion-sidebar-audit-report.json create mode 100644 collaborative-discussion-sidebar-audit/docs/requirement-map.md create mode 100644 collaborative-discussion-sidebar-audit/package.json create mode 100644 collaborative-discussion-sidebar-audit/sample/discussion-sidebar-packet.json create mode 100644 collaborative-discussion-sidebar-audit/scripts/demo.js create mode 100644 collaborative-discussion-sidebar-audit/scripts/render-demo-video.m create mode 100644 collaborative-discussion-sidebar-audit/src/collaborative-discussion-sidebar-audit.js create mode 100644 collaborative-discussion-sidebar-audit/test/collaborative-discussion-sidebar-audit.test.js diff --git a/collaborative-discussion-sidebar-audit/README.md b/collaborative-discussion-sidebar-audit/README.md new file mode 100644 index 0000000..01c7f20 --- /dev/null +++ b/collaborative-discussion-sidebar-audit/README.md @@ -0,0 +1,26 @@ +# Collaborative Discussion Sidebar Audit + +This package adds a focused readiness layer for the real-time collaborative research editor requested in SCIBASE issue #12. It does not implement a broad editor shell, notebook runtime, reference formatter, lock recovery system, or figure/table workflow. Instead, it covers the issue requirement for a document chat or discussion sidebar per file or section. + +The audit model checks whether sidebar discussions are safe to export during an active manuscript review: + +- section and file scoped discussion threads +- open blockers, stale conversations, and unresolved reviewer tasks +- pinned sources and citation evidence for decisions +- conflicting accepted decisions on the same section/topic +- locked-section owner and reviewer participation +- deterministic handoff packets for review, export, and version history + +## Run + +```sh +npm test +npm run demo +npm run demo:video +``` + +`npm run demo` writes a JSON audit report and an SVG storyboard to `docs/`. `npm run demo:video` renders a short MP4 demo for reviewers. + +## Why This Slice Matters + +In a collaborative scientific editor, the sidebar is not just chat. It becomes the record of why a section changed, which source supports the decision, who still needs to respond, and what must be preserved when the document is exported or reviewed later. This package gives that workflow deterministic checks and a compact export packet before the larger editor UI is wired in. diff --git a/collaborative-discussion-sidebar-audit/docs/demo.mp4 b/collaborative-discussion-sidebar-audit/docs/demo.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..17d8573894519d8bdc915c0152e567b406771450 GIT binary patch literal 296510 zcmV)TK(W670010jba`-Xa5ORi0004Lb8l^Ja5OP(a5ORi0004PWMOmw000001bdeN z0027%1u{ogO59vbLqC-7#SuKwL#P1&00RI40{{R6009C38+Skp0009300RI30|Uwo z1BoO74gdfD|9}7hMOG!aAOgR>nL*S4!!9DFmRio#bSqTsX0hf#0009300RI34Ndt; z1BXaD$?gCE0{{R61CRg>`rEO|
eJ$cPnqzrF#I(iIDyoizGuLVo{L0CKmz ?iNT5ViP*ROUfADiSf0g@Ju}rQN8jmyH
zvtPdyB2m%B_ENTiyWAb+dV1aCkB)cS0N~(^THzii=K~lmFS6Su>wp;1JwJXsSwlO+
z+fcIM+uHNrR4WF|uX|7vx)?8On(`ZtkKTcMbWZw-E|EXhYXVdb_aD~l&9ckYNxNZ=
z67t>WlCRCkdq`D>+T12FF)EwL&iy>5_{kNq)wW?XjS7_`m!Vt`8goM_9eZqR2GtQx
zEd=!RvA5NuDeRt-ZRMJ-_jQ=~ZYT@#Xq+wE&qDo$~#^E%VuVJK8jD&`6eHngEW_
zw%wXu#Lg^$sDP~Mz$ffWNbWeTMb&mma1(~J+-D!*xz8PY1aj|q6M}?YWt5;=iu8?w
z%?+N4P=`}Jc6Ui6*J$B~?l^_ObmTCTejdE@iaJ7OG?y~wcIdLu-i}ipUkcY{`lwa3
zRO?;i)1k|%8|Q?N=I~582@t)zdXduAU_S5wZyxR>HA~+*rUpmur7$EKU<6Z4{zkg>
z)rC8Cw*4ykDS`7k{H2+9YAl5L(TXSADBVAd6jca>)y!u=S#|P_b0#@NGaUvG1@`O*
zk(C=5#OIldd1cEqW9(PzHH+M`@a(g)FlNw_poSPy?-(5KAKvd{)~m1@1NY3sxx0wV
z1*wtu50_xqDjLf{BsB$;3|a@iQ?L5Pw))`t>5W`@pl@+xK1I{QQ-t
zir6}LN=W
TK>wuQLiH?2GRZC@GCtLj)4qi~+FQY0
z%I2^PLbl8`wX1>}Y)6G4;J`#>Z=e9@_(egZC>y=*x}dth$`1JrBFzqt=fkCTp3_MR)Sn1-R1HL_-G3 IwZHht$4NE$Ae*`tn%FKZm1m`vkvdhDIkJ!vWACmrXz3PXvb~
z+|r*tV1t99iK<9!YDo$5Cfy7nam@*q{uhfb0LbshV?-rwMFjc240PWKj`#+fUHT?K
zZt!UR_)ghgMG`_>{O^3pf3N;|;2H|L?T36dC;NYXod5vKaTQhXNI#_#i3DT}90dsj
zzeT$t7EnU|*9xwh%%jAE*@xu&uAc55(go>lcZSI2$h7q6sQ-R_lJE{a<3o`_omLwU
zx|lW0eb&{u^fVg)0niZ92?0@eP8yJ&@K5GV=0(LOY{gXazEf~=w`{tur{USX8l1M_
zSHxc&