feat(tui2): copy tui crate and normalize snapshots (#7833)

Introduce a full codex-tui source snapshot under the new codex-tui2
crate so viewport work can be replayed in isolation.

This change copies the entire codex-rs/tui/src tree into
codex-rs/tui2/src in one atomic step, rather than piecemeal, to keep
future diffs vs the original viewport bookmark easy to reason about.

The goal is for codex-tui2 to render identically to the existing TUI
behind the `features.tui2` flag while we gradually port the
viewport/history commits from the joshka/viewport bookmark onto this
forked tree.

While on this baseline change, we also ran the codex-tui2 snapshot test
suite and accepted all insta snapshots for the new crate, so the
snapshot files now use the codex-tui2 naming scheme and encode the
unmodified legacy TUI behavior. This keeps later viewport commits
focused on intentional behavior changes (and their snapshots) rather
than on mechanical snapshot renames.
This commit is contained in:
Josh McKinney
2025-12-10 14:53:46 -08:00
committed by GitHub
parent 321625072a
commit 90f262e9a4
742 changed files with 53559 additions and 19 deletions

View File

@@ -0,0 +1,17 @@
d-dcottoottd
dot5pot5tooeeod dgtd
tepetppgde egpegxoxeet
cpdoppttd 5pecet
odc5pdeoeoo g-eoot
xp te ep5ceet p-oeet
tdg-p poep5ged g e5e
eedee t55ecep gee
eoxpe ceedoeg-xttttttdtt og e
dxcp dcte 5p egeddd-cttte5t5te
oddgd dot-5e edpppp dpg5tcd5
pdt gt e tp5pde
doteotd dodtedtg
dptodgptccocc-optdtep
epgpexxdddtdctpg

View File

@@ -0,0 +1,17 @@
dtpppottd
ppetptox5dpt
ddtee5xx-xtott
edd5oecd-otppoot
5 ceeged pt5d5e5
ee pepx55o gedge
o xpgpeexep e5t
g eeot5tee-de-oee
g xo ooecxxtotcee
e teoted5dpdddepe
t geeeeegggotgoee
oeptotpg dxggt55
ep eeexptct5e5e
cepp5etcdg55p
pt dpodtcp

View File

@@ -0,0 +1,17 @@
tppppttd
5g ceeeoot
5gddeecop5ot
eddeeoctdo55
dg-coetopcdeet
eteeetdcced5ee
pp teeeeeedeoo
e ee5eeo5 ege
5 pe5eep5tede
pp de5otg5eded
pe- eeeeo5eooe
od-5edp5ppcee
gd peooddecg
otgpeetd5pe
od pptdte

View File

@@ -0,0 +1,17 @@
tpppt-
toed5eto
g e5ott
5txeeooge
e pxeee-5e
ep--pdgdeg
e x5oeeo
e 5toeeg
pt x5eetex
e 5epcpd
e- egopp5
t pegdte
5 ppetpoe
pd5gteoee
o pxo-5

View File

@@ -0,0 +1,17 @@
5pppt
eddee
eedeg
epped
p ee
gc-ee
t ee
t ge
5t dx-
eg toe
pe-- xe
eddde
etted
pddeo
t -go

View File

@@ -0,0 +1,17 @@
tpppc
t5dd-o
edee- e
ee5egdxt
eeeo e
xpee pe
eeee - p
eeoee o
eeex g
gd55 c5
oeggt-te
epxeddde
5ggeoooe
eo5pdd5
dp po5

View File

@@ -0,0 +1,17 @@
ttpppxd
etoeedcpt
55epooegpe
e5e 55t-dde
eeogooee5gde
oee-ee55e g
ee eeeexxte
ee5xeteee p-e
eetttpeeed-ce
edec5eoxp- -e
e5eeeede e c
epp-dxeo- o
peot 555e ce
edeeoo-to5
odpdddd5
ee

View File

@@ -0,0 +1,17 @@
dotgpptxd
5deepeeoeoo
e55go5ooee po
555 cpdoeoeeppe
eecd5ppoeep5eeo
eeepep eoo ge x-e
ooe 5eteeee5pgt e
e5c eeee5eeegc ee
ooexetx5deegpt 5
pgddtooope-de tde
eeetgg5poecgc-xee
eep ee e55t 5
oep e 5t5dte
oexgdpx55tde
pc-docddcp

View File

@@ -0,0 +1,17 @@
totttccxtd
dcppexxpopetgdt
tpo5dooettgeeedgo
5e5d5egde pecoxeeoo
e5d x eg5ooo55 t
eopt5e tc5e 5to5e-5
pgc5e t55ed pgee5oe
-goeg g55ee5eteeocp
t5p5oootxodeodcoeee e
egdcdde5po5eeogotpto
ooo5gggppppodep55o op
oeedp e5eee c
doogpod tpt5dd5
t xptootedcpcep
etc5dttxpdtp
e

View File

@@ -0,0 +1,17 @@
dootootcxtd
dtgdctttxddtgtccd
d5cepgpogtg-dgt55o p
teep-tdgp poed5oxocooot
do55 5e dgtdo5x5edocood
5oe ttx-ddd5tptep-5d5e5xg
eeoc5 t5p5egd5gpeoeot
go-xe dogeecd eceg
ogg tooococtxetep5ot epee
dooepop xe5ddodxeedcxeo t
e5eoeggpppppe odd5e5p5e-e
oogtot eepg5pdp
odptdd- dpdd5ote
pe-ppttooodppd5dtp
gxed5ddt-tgctg
e

View File

@@ -0,0 +1,17 @@
ddootxtoox-d
dteeeo5ooodpdteptt
tpcc5getpe epctepco
5ceptde doottdept
ee5e5e tedg5geo eot
eo5pp depx5g-5 p-pe
doexp 5pd5ette 5c5te
eeee ecgoegt e eee
epeotoccoooxxxetpcpec o gee
dc5teop5dptotet dd codot5-ed
pog5tegggggppg dod5e55 55p
oodpdo e55d55p
pgdoxxpt tco-5ece
pg-ep5xtddoc5pg cpxp
gx-dc-pdt-dp-d

View File

@@ -0,0 +1,17 @@
d-dcotooottd
dtt5pcteexoxeodpeptd
tepeoppxpee egpop5eecet
de5d5ppttd -toe5et
tdg5pdeodood dteoet
p5tge epot5ot ooepe
teppe d5ecedet 5gege
eg oe tepeecp ep5-e
pggoe cedddeg-xtttttttttedexp
dope 5eep 5p eoodddd--ddet5geg
ooo p po--ep egpppppppgetpee
pod-5t e ttc5tp
-oddett todtgdeg
exdcddgptccocc-opedeep
eptptxxddddxc5pg

View File

@@ -0,0 +1,17 @@
ddtoxxototdd
tcogctdtoooeeddpott
ttgdtpgxpg egdgotpetd
degdpep dtteo5poo
de tep d5gdeedpoeeo
5etep tppceg5 poxeo
cecte tp -tpd toe5
edd5e ggccegt exge
e5eectocoooooodtpcddoop 5 eo
pededg 5eeddddeo poogeoo t5 ee
otdopgggggggpg otoeete 5o
p dp5t d5p-e5
oddptxd tcpecpp
dt--gxtdcctcgxget5pp
eptxdgoddddepgg

View File

@@ -0,0 +1,17 @@
ddtotootottdd
ttpeeddtxoxtcde-ptd
cpddtpdge edxptdept
tpecgp dtcptcpt
5t5pe te5do ooddt
5g5e tppd55 oodt
epee dg5et5p ocog
eo oc get e e
e e ttcccccttt detget c5 e
e xo ed dte dgepet 5g-5
c g- eeggg pe ppdtc 5e t
pt ccd dpg 5
pd d-d d-cpp te
pod pgptcxxccopgg -e
pttctddddtdctpe

View File

@@ -0,0 +1,17 @@
dttotootottd
dt5pe-d5e5oeecet5ptd
tcpcxoppe egpopptddtt
cpxppg tteeedpo
oex5p td5eoe-5cpe
oep5e tx5ecd5e oeooe
etpo5 xteop5p xe5e
eeoee eoexdo edege
eetgt txoocccottdopedgot decgg
deo pdootg5tgx55e opcdgettg5oo
ooode gggggppge ecptd555gte
opodot dptgetp
pgtc ttd d-ptgpd5
pcpttgpxcotcc5opggptp
gxgxdcddd-od-ope

View File

@@ -0,0 +1,17 @@
dttdotpttotdd
doeteodtdootedepetd
tgteptcpe gxcteoceet
5cepc5e dccoeeco
55ee5p t5ttpp5poeo
toeg5e dppppp5ppexoet
eeege 5c5- dee ggepp
x5e e egetdot e p5e
dgo etxcooooocoedpedgod e exe
eoodegog 5eo oedotx ode
5pe e eggggggg pe5coed5d5e
teede- t5eod5e
o etp5dd d-gcp5t5
oootcptoxoodttg-dtpe
gxgpooxddtddppe

View File

@@ -0,0 +1,17 @@
dxdcttpootd
tgd5geddxoottdpt
tgpco5tgx -ecpxppt o
tp55t5eotoex5egdpoeodp
t 55o5t egg5odeeeoetp
xtotoe ptt5g-ecg5go
e exg t5dt5g5doeoded
e oee eto5odexd5-eee
e- eccccttxxxttdptde e ee
d 5 gpe5ttcctte-dotpe epe
o poeopgggggge ot-poeo5te
o otpo egg5c5
o-poee- dogd5cdp
--ptodgxxcoocedd5e
pcdptcoddootp

View File

@@ -0,0 +1,17 @@
dtopcttttd
tgptpedcoepeet
5e55ttg-etoooeeed
etpe 5g oe goetpo5
tddot5pdc5deg e55o5p
otxexdpt-dec 5ete55et
e5epe edd5od5eo5dgeoe
eee5e-ggxdoo5eodxoeeo
dtoegeddooootxeooetpeo
5-ge5etedeecpdeopo5oe
oxp5oeegggggpt5eoe5ee
edgectco-tpcd5t55e5
dededodpc5td5dee5
o-coodpoeppgpep
xtgpottdtep

View File

@@ -0,0 +1,17 @@
dcpppgtt
5pec5oetcet
5pggecoeoggot
cpgteexdeedt5d
edtoe-xgpo5ceoc
o ge5c5gpdogoo5
eg ppoee5eeccgt
5- oeeeddoee5ee
e -opctxtoo5oee
g -de5teddtpoope
eeg5epgot5etoee
odxe5o 55geee
p peo de5e5t
egpoogpdppc
o5cdpxdop

View File

@@ -0,0 +1,17 @@
cppptt
ecc5e5o
cpe pe5pe
exxdeecex
e eed-po
xd-dgeeeee
o geedpeeg
e eeexogee
e- -geteeee
po -gdedpee
e- ddppt5p
eetteed5e
eootot5ed
oddeoo55
pog do5

View File

@@ -0,0 +1,17 @@
5ppc
etdee
o cee
e-epe
e xe
e -ge
dex de
e-gge
5o de
ee-cxe
e de
eotoe
eopee
pdd5e
x -te

View File

@@ -0,0 +1,17 @@
tppppt
tep5gpo
dtee pge
eeeedot5
o xge e
etxee dd
eooeee d
eeoxe
eexpe e
deoee e
pee5ed o
e5xxe de
xeeeexde
eoep5gep
xep -t

View File

@@ -0,0 +1,17 @@
d-octtooootd
dtt5oeetegooecddeptd
tc5pcepgge egxgppt5det
5t5oecttd eopgeeo
p5pe5d5eepod odoeed
5eoo5 -teocoo e ooe
op e ppoedget -p5et
t-ete t-eg5oe xdeoe
-gpe ceptxep-xottdddttdxdgce
tocot -5p5cce epeddtgo-tcoeeoee
pde e geettg gpppgggppt555t5
ppx ot e 5dtd55
od55pot ttc5gtep
odttdppdococtcopcedtg
eptpdcxddddxc5dg

View File

@@ -0,0 +1,17 @@
dcgpptt
d5ceeoppoo
gpdetooetto
eeoe5edoeo ot
opeeeoetet e
epedt peeee-e
o5eeeod o5oe oe
ge ptoxtege- e
gedgoxoxo5et e
geeoeddxegtt e
goeecodpxeetxe
ep55t5poeeg e
oeoee5pxetx5
tdttod5et5p
o--edddcp
eeee

View File

@@ -0,0 +1,17 @@
d-cptptot
dtpcttdgtoppt
teo55tode-gedpo
tx5tddpcdtooeoxeo
deeeet-podtgoe5dd
cedexdepgocpt-5etge
5ee edpeo-o5cpepe5e
oot exgeo edggexo-e
eotdepdxex5txxed e
geex55eedddodeoee p
dpd5tet 5pppe5epxdg
eeeooot dop e
cepodgt - epe5e
ceoe5deetegtee
pgoxdtp5-cp
eeee

View File

@@ -0,0 +1,17 @@
tttttccxtd
cpxppxoeeppext
5dpodttdc-epepoppt
p55edtec- - tdoettgt
55etepoppec petxo5opot
o5ootopeeceetd et5 p
pegctepoeettetoe5d55epd
eeetd gdeeg5pec-dgoegge
oee-d pdegddetttxxxoegoe
pggdeepopodddddeepecx-d
topee5 epggpppdc555-5
otedoo toe5px
pppeextd d5de5 t
o-ogxtecopedtgd5
xcoddtt5pdgg
eee

View File

@@ -0,0 +1,17 @@
dttototox-d
dtpeeopoxce-epep-
d5oetpttoge gp5eetgt
to5e5detd peeodp
d-e5eee5odo etood
55t odooeot 5o5do
eet g otpedeo epee
pett tppo5ot ogep
eee e te 5ptttcootxxt5deox
d5epg5ct5exedddddeepdddxe-
ooot e5e5 5 ggggppp eet5de
otoptgt 55c5o5
pogptpct dtet5pop
oxgpotetctdgctopxp
goottddddtpc-g
eeee

View File

@@ -0,0 +1,17 @@
dtottttoxtd
dtpt5ocegxtpoppctod
d55tepgcxpe edootgppt
t5depd5td petpoo
55eo-5egeggt oopod
t5oee5 oogeopo otoeo
epdxd podpedd ecxd
oeogc epde5ge 5 do
tp5-g 5o55gdoottttttxddg xde
eeot5ttdg55pxeedx-dddt5deeeeo
5dot eoepdg gppeeeed t5toep
5tocood 5c-e5p
oteetoct dtogd5te
-o5xgettcttopopetpcp
gxocodddddcopod
eee

View File

@@ -0,0 +1,17 @@
dttcotttottd
tpop-xpptgepxcgxpod
d55ectpedpge egpop-gept
t55t5tctd ptdoed
55xe55o gopt eopet
c5c5te pedg--pd eooe
o g-5 oo ppd- edoo
xexc 5ooc5p 5 g5
5 td tee5cg5eoodcdotxx exop
etdcp 55cgpt5ec otdddd5gx5p ep
5eotp5ode5de egddddpddp55dte
g-do5x d5p td
ocedctct tc5dppp
gddgxpx-cxxtxc5pgd5cg
gdxcodd5ddttpgd

View File

@@ -0,0 +1,17 @@
ddtottttottd
doggot5c5totcttgpptd
topottp-pgee egpxptetpet
degptdddd ppxoge
t5dcopeoeot- do-p
5 t5e pd ge5t godp
e cge go goo edet
eeox do d55g oe e
epge 55 tpgptttdtttttd eoxe
dpeo tedd5x5 gexdddddddee o5pe
p peo tdt5d gppdddddg etg5
ptgoc- t5eg5
o5eetxt tttg5te
ptdgppodcxdtxcg-gtctp
ept5xdttdttttppg

View File

@@ -0,0 +1,17 @@
d-octootottd
d-gtpe5geoo5pceg5ptd
tpoeeetpge edxodpe5ood
55eteg-tt geppopo
5e5deoeocdet ogoepo
5eede pdee5po p ooet
goece pppotget t gce
e-o te5pdee eee
deged ce5gd55txtttddddtt eep
eo5ge t555tdeeooet-dtc5dce55ge
eecpotooto5 gppppppppd-eeee
teogede tdc5ppp
ootcdgtd d-dtpce5
xeeodppoccocttoptoepe
pooxcxdddddc-pe

View File

@@ -0,0 +1,17 @@
d-occtooottd
dtgt5p5eetxotcdegtt
pd5otepge gdoepogtpt
te5e5e-ot -deeeed
to5p5ddtedot e oeoed
xeee5 odeoc5ed t5ee
e5egt eodeoget ppxtet
e5edg tdoe5de tede
etedp 5degtepodxtxdddttdge-e
doeott5tpg egg55oodto-t5e5pee
oteetxtoo5te gppgggggtxceo5
oot5oo e 5d5ptd
d5poeotd dottppcp
depetptocxodttopdxcp
d-pdpgddd-dttpe

View File

@@ -0,0 +1,17 @@
d-occtoottdd
tdc5peoptettcdtptd
ttteeepg egx-optp5od
5tepepdot oteeeet
poeeepootpo -ooeot
c-5e5edtceodet -oo5e
d txe gdoe5do dtede
x exe deox5ee xtoee
d-e-e 5peepc5tdxtxddttd-o5e
eeot5dddct e5opteetcoooeteog
5 e 5xeec5g gpgggppgeoo5e
t c 5te tcd55ee
-eodppt dtdd5ptt
egxptgtgcxddttppgccp
d-cpttdddedttp

View File

@@ -0,0 +1,17 @@
d-xcptoottd
tpetoetptooocgept
p teeepe edxegp5dpt
ooeeexct dxope5t
epepeede5ot - peeo
e ceeg epoceo t-eee
eoge ddeoeoe ppdee
dg5xe ot5epee p eee
5gxp tgd5eo5xxccdxxocpoee
etpeeocxe5pe-oeeoototcoeoe
o od5pepd5 ppppppggd5ee
pd 5d5de tg-5c5p
pcttoood tdxtp5pp
odpoepocxdddtpept5
gxpgxcxddtdcpp

View File

@@ -0,0 +1,17 @@
ddtdcttottd
tgp5eeepoogx gt
deote55pgtgx5xpotdt
dpop5ette p odeeo
p 5e5toe5o -poeet
epteodddoedp oteee
epeee pdcoeee ede5et
otee5 eto5etp- -e5ee
o oeedd g5poex5tttttoxee
g op5odegteteeceoddeeop
55ooeoeee5pdpdpgopg5oe
ptgeoeee -t555p
podpoood d5odet5p
-cpetpgcctpc5otee
xxdppoedtt5oe
ee

View File

@@ -0,0 +1,17 @@
-odp5ttot
5pd5eepgogd-od
5 tee5pddo5godxt
g ee5cod ddteodett
5pgcopgept p-ptctee
e eeegdeocdd epepeee
e xpoeppeootg-t5 eee
e x5dtoxeed5oode gee
g gteg 5egexxetexteee
edeeedtededeeeeddeee
g ed5ooe5gppppeeg5oe
oxeeote t5 d5ee
otoeoo 5cdce5p
d-godep5toccpee
p-d pooect5g