lazygit/demo/bisect.yml
2023-08-02 22:35:12 +10:00

243 lines
105 KiB
YAML

# The configurations that used for the recording, feel free to edit them
config:
# Specify a command to be executed
# like `/bin/bash -l`, `ls`, or any other commands
# the default is bash for Linux
# or powershell.exe for Windows
command: go run cmd/integration_test/main.go cli --slow pkg/integration/tests/demo/bisect.go
# Specify the current working directory path
# the default is the current working directory path
cwd: /Users/jesseduffieldduffield/repos/lazygit
# Export additional ENV variables
env:
recording: true
# Explicitly set the number of columns
# or use `auto` to take the current
# number of columns of your shell
cols: 120 # 100
# Explicitly set the number of rows
# or use `auto` to take the current
# number of rows of your shell
rows: 35 # 30
# Amount of times to repeat GIF
# If value is -1, play once
# If value is 0, loop indefinitely
# If value is a positive number, loop n times
repeat: 0
# Quality
# 1 - 100
# Higher quality seems to make no difference, but running it through
# gifsicle ends up with a much better compressed version.
quality: 100
# Delay between frames in ms
# If the value is `auto` use the actual recording delays
frameDelay: auto
# Maximum delay between frames in ms
# Ignored if the `frameDelay` isn't set to `auto`
# Set to `auto` to prevent limiting the max idle time
maxIdleTime: 2000
# The surrounding frame box
# The `type` can be null, window, floating, or solid`
# To hide the title use the value null
# Don't forget to add a backgroundColor style with a null as type
frameBox:
type: floating
title: Lazygit
style:
border: 0px black solid
backgroundColor: "#1d1d1d"
margin: -5px
# Add a watermark image to the rendered gif
# You need to specify an absolute path for
# the image on your machine or a URL, and you can also
# add your own CSS styles
watermark:
imagePath: null
style:
position: absolute
right: 15px
bottom: 15px
width: 100px
opacity: 0.9
# Cursor style can be one of
# `block`, `underline`, or `bar`
cursorStyle: block
# Font family
# You can use any font that is installed on your machine
# in CSS-like syntax
fontFamily: "DejaVuSansMono Nerd Font"
# The size of the font
fontSize: 8
# The height of lines
lineHeight: 1
# The spacing between letters
letterSpacing: 0
# Theme
theme:
background: "transparent"
foreground: "#dddad6"
cursor: "#c7c7c7"
black: "#7a7a7a"
red: "#fc4384"
green: "#b3e33b"
yellow: "#ffa727"
blue: "#102895"
magenta: "#c930c7"
cyan: "#00c5c7"
white: "#c7c7c7"
brightBlack: "#676767"
brightRed: "#ff7fac"
brightGreen: "#c8ed71"
brightYellow: "#ebdf86"
brightBlue: "#6871ff"
brightMagenta: "#ff76ff"
brightCyan: "#5ffdff"
brightWhite: "#fffefe"
# Records, feel free to edit them
records:
- delay: 8724
content: "\e[?1000l\e[?1002l\e[?1003l\e[?1006l\e[?2004l\e[?1049h\e[22;0;0t\e[?1h\e=\e[?25l\e[H\e[2J"
- delay: 10
content: "\e[?1000l\e[?1002l\e[?1003l\e[?1006l\e[?1000h\e[?1002h\e[?1003h\e[?1006h\e[?1004h"
- delay: 94
content: "\e[?25l\e[1;1H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Commits \e(B\e[m\e]8;;\e\\- Reflog\e(B\e[m\e[32m\e[1m\e]8;;\e\\─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e(B\e[m\e[92;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[92;44m\e[1m\e]8;;\e\\a5cc9c45\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\(HEAD -> feature/demo, origin/master, origin/feature/demo, master)\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add a user-fr\e(B\e[m\e[32m\e[1m\e]8;;\e\\▲\e[3;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\41e20bf9\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Set up CI/CD pipeline using GitHub actions \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[4;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\e1c8e57d\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enable gzip compression for faster page loads \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[5;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\72e34e08\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor error messages for better clarity \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[6;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\d1993a44\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve accessibility of site navigation \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[7;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\cf82ae63\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add loading indicators to improve UX \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[8;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\099ca1d0\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add end-to-end tests for checkout flow \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[9;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\76ff9ddd\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Fix broken links on the help page \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[10;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\421d5c71\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement automated backups for database \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[11;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\d6348a27\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add TypeScript types to User module \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[12;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\23dc2660\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Move constants to a separate config file \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[13;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\c0988fbd\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user search with fuzzy matching \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[14;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\abdbae31\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor session management using JWT \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[15;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\c6224692\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure atomicity of transactions in payment system \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[16;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\a2bbeadf\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle database connection failures gracefully \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[17;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\e7503830\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Update styles according to new design guidelines \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[18;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\2d3dba16\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Replace deprecated lifecycle methods in React components \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[19;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\635edf39\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Revamp error handling in user registration \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\25c5d1fe\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle edge case for zero quantity in cart \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[21;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\fcf47a26\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce retry mechanism in network calls \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[22;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\af171bab\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Remove hardcoded values from payment module \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[23;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\d40aed30\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance logging in production environment \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[24;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\9f6bf535\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add internationalization support for German \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[25;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\b99c073b\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Update UX of password reset feature \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[26;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\5a71317e\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Migrate legacy codebase to Typescript \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[27;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\163d7f2a\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Resolve race condition in transaction handling \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[28;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\4075d17b\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Harden security of user password storage \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[29;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\975c391b\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement bulk delete feature in admin panel \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[30;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\f94a9251\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure CSRF protection for all forms \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[31;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\bc63a4f0\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce Redis for session management \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[32;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\f038a61c\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve Dockerfile for more efficient builds \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[33;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\4d8a221a\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement user blocking functionality \e(B\e[m\e[32m\e[1m\e]8;;\e\\▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────1 of 60─┘\e[35;1H\e(B\e[m\e[34m\e]8;;\e\\<pgup>/<pgdown>: Scroll, <esc>: Cancel, q: Quit, ?: Keybindings, 1-5: Jump to panel, H/L: Scroll left/right \e[?25l\e[?25l\e[?25l\e[?25l\e[?25l\e[?25l\e[?25l\e[?25l\e[35;1H\e(B\e[m\e[37m\e[1m\e]8;;\e\\ \e[?25l\e[?25l\e[?25l\e[?25l\e[35;1H\e(B\e[m\e[37m\e[1m\e]8;;\e\\Git\e[35;5Hbisect\e[?25l"
- delay: 1004
content: "\e[?25l\e[35;12H\e(B\e[m\e[36m\e[1m\e]8;;\e\\Pressing b \e[?25l"
- delay: 10
content: "\e[?25l\e[1;1H\e(B\e[m\e[30m\e]8;;\e\\┌─\e(B\e[m\e[32m\e]8;;\e\\Commits \e(B\e[m\e[30m\e]8;;\e\\- Reflog─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;120H▲\e[3;1H│\e[3;120H█\e[4;1H│\e[4;120H█\e[5;1H│\e[5;120H█\e[6;1H│\e[6;120H█\e[7;1H│\e[7;120H█\e[8;1H│\e[8;120H█\e[9;1H│\e[9;120H█\e[10;1H│\e[10;120H█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Bisect────────────────────────────────────────────────────────────────────────┐\e[13;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\b\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark a5cc9c45 as bad (start bisect) \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[14;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\g\e(B\e[m\e]8;;\e\\ Mark a5cc9c45\e[15;38Has good (s\e[15;49Hart bisect) \e[15;73H \e[15;76H \e[15;84H \e[15;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[15;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\t\e(B\e[m\e]8;;\e\\ Choose bisect\e[16;38Hterms \e[16;47H \e[16;56H \e[16;67H \e[16;76H \e[16;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[16;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ Cancel \e[17;38H \e[17;40H \e[17;47H \e[17;54H \e[17;64H \e[17;67H \e[17;71H \e[17;78H \e[17;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[17;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\└────────────────────────────────────────────────────────────────────────1 of 4─┘\e[18;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[19;1H│\e[19;120H│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────1 of 60─┘\e[?25l"
- delay: 604
content: "\e[?25l\e[35;21H\e(B\e[m\e[36m\e[1m\e]8;;\e\\<enter>\e[?25l"
- delay: 87
content: "\e[?25l\e[1;1H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Commits \e(B\e[m\e]8;;\e\\- Reflog\e(B\e[m\e[32m\e[1m\e]8;;\e\\─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e(B\e[m\e[91;44m\e[1m\e]8;;\e\\ﰖ\e[2;4Ha5cc9c45\e[2;13H<-- bad\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI\e[2;37H \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\(HEAD -> f\e[2;59Hature/demo, origin/master, origin\e[2;93Hf\e[2;95Hature/demo, master)\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add a\e(B\e[m\e[32m\e[1m\e]8;;\e\\▲\e[3;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[3;4H41e20bf9\e[3;13H\e(B\e[m\e]8;;\e\\ \e[3;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[3;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Set u\e[3;54H CI/CD pipeline using GitHub\e[3;83Hactions\e[3;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[4;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[4;4He1c8e57d\e[4;13H\e(B\e[m\e]8;;\e\\ \e[4;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[4;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enable gzip c\e[4;62Hmpression for faster page\e[4;88Hloads\e[4;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[5;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[5;4H72e34e08\e[5;13H\e(B\e[m\e]8;;\e\\ \e[5;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[5;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ R\e[5;50Hfactor error messag\e[5;70Hs for better\e[5;83Hclarity\e[5;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[6;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[6;4Hd1993a44\e[6;13H\e(B\e[m\e]8;;\e\\ \e[6;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[6;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[6;48H\e(B\e[m\e]8;;\e\\Improve accessibil\e[6;68Hy\e[6;70Hof site navigation\e[6;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[7;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[7;4Hcf82ae63\e[7;13H\e(B\e[m\e]8;;\e\\ \e[7;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[7;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add\e[7;52Hloading indicators to\e[7;74Himprove\e[7;82HUX\e[7;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[8;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[8;4H099ca1d0\e[8;13H\e(B\e[m\e]8;;\e\\ \e[8;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[8;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add end-to-end tests f\e[8;71Hr checkout\e[8;82Hflow\e[8;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[9;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[9;4H76ff9ddd\e[9;13H\e(B\e[m\e]8;;\e\\ \e[9;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[9;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Fix broken links on the help\e[9;77Hpage\e[9;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[10;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[10;4H421d5c71\e[10;13H\e(B\e[m\e]8;;\e\\ \e[10;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[10;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implemen\e[10;57H automated\e[10;68Hbackups for database\e[10;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[11;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[11;4Hd6348a27\e[11;13H\e(B\e[m\e]8;;\e\\ \e[11;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[11;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add TypeScrip\e[11;62H typ\e[11;67Hs\e[11;69Ht\e[11;71H Us\e[11;75Hr\e[11;77Hmodule\e[11;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[12;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[12;4H23dc2660\e[12;13H\e(B\e[m\e]8;;\e\\ \e[12;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[12;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Move const\e[12;59Hnts to a separate config\e[12;84Hfile\e[12;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[13;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[13;4Hc0988fbd\e[13;13H\e(B\e[m\e]8;;\e\\ \e[13;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user search with fuzzy matching \e[13;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[14;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[14;4Habdbae31\e[14;13H\e(B\e[m\e]8;;\e\\ \e[14;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor session management using JWT \e[14;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[15;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[15;4Hc6224692\e[15;13H\e(B\e[m\e]8;;\e\\ \e[15;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[15;46H◯\e(B\e[m\e]8;;\e\\ Ensure atomicity\e[15;65Hof\e[15;68Htransactions\e[15;81Hin\e[15;84Hpayment\e[15;92Hsystem\e[15;101H \e[15;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[16;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[16;4Ha2bbeadf\e[16;13H\e(B\e[m\e]8;;\e\\ \e[16;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[16;46H◯\e[16;48H\e(B\e[m\e]8;;\e\\Handle\e[16;55Hdatabase\e[16;64Hconnection\e[16;75Hfailures\e[16;84Hgracefully\e[16;101H \e[16;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[17;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[17;4He7503830\e[17;13H\e(B\e[m\e]8;;\e\\ \e[17;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[17;46H◯\e[17;48H\e(B\e[m\e]8;;\e\\Update\e[17;55Hstyles\e[17;62Haccording\e[17;72Hto\e[17;75Hnew\e[17;79Hdesign\e[17;86Hguidelines\e[17;101H \e[17;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[18;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[18;4H2d3dba16\e[18;13H\e(B\e[m\e]8;;\e\\ \e[18;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Replace deprecated lifecycle methods in React components\e[18;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[19;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[19;4H635edf39\e[19;13H\e(B\e[m\e]8;;\e\\ \e[19;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[19;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Revamp error ha\e[19;64Hdling\e[19;70Hin u\e[19;75He\e[19;77H registration\e[19;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[20;4H25c5d1fe\e[20;13H\e(B\e[m\e]8;;\e\\ \e[20;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[20;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle \e[20;56Hdge case for zero quantity\e[20;83Hin\e[20;86Hcart\e[20;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[21;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[21;4Hfcf47a26\e[21;13H\e(B\e[m\e]8;;\e\\ \e[21;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[21;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce retry \e[21;65Hecha\e[21;70Hism in\e[21;77Hnetwork\e[21;85Hcalls\e[21;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[22;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[22;4Haf171bab\e[22;13H\e(B\e[m\e]8;;\e\\ \e[22;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[22;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Remove hardcoded values from\e[22;77Hpayment\e[22;85Hmodule\e[22;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[23;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[23;4Hd40aed30\e[23;13H\e(B\e[m\e]8;;\e\\ \e[23;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[23;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[23;48H\e(B\e[m\e]8;;\e\\Enhance\e[23;56Hlogging in producti\e[23;77H \e[23;80Hvironment\e[23;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[24;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[24;4H9f6bf535\e[24;13H\e(B\e[m\e]8;;\e\\ \e[24;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[24;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add \e[24;53Hnternationalization\e[24;73Hsupport for\e[24;85HGerman\e[24;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[25;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[25;4Hb99c073b\e[25;13H\e(B\e[m\e]8;;\e\\ \e[25;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[25;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Update UX \e[25;59Hf pas\e[25;65Hword reset\e[25;76Hfeature\e[25;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[26;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[26;4H5a71317e\e[26;13H\e(B\e[m\e]8;;\e\\ \e[26;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[26;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[26;48H\e(B\e[m\e]8;;\e\\Mi\e[26;51Hrate legacy codebas\e[26;71H to Typescript\e[26;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[27;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[27;4H163d7f2a\e[27;13H\e(B\e[m\e]8;;\e\\ \e[27;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[27;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[27;48H\e(B\e[m\e]8;;\e\\Resolve race condi\e[27;67Hio\e[27;70H in trans\e[27;80Hctio\e[27;85H handling\e[27;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[28;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[28;4H4075d17b\e[28;13H\e(B\e[m\e]8;;\e\\ \e[28;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[28;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Harden security\e[28;64Hof use\e[28;71H password\e[28;81Hstorage\e[28;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[29;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[29;4H975c391b\e[29;13H\e(B\e[m\e]8;;\e\\ \e[29;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[29;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement bulk delet\e[29;70Hfeature in admin\e[29;87Hpanel\e[29;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[30;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[30;4Hf94a9251\e[30;13H\e(B\e[m\e]8;;\e\\ \e[30;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[30;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure CSRF protection\e[30;74H all\e[30;79Hforms\e[30;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[31;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[31;4Hbc63a4f0\e[31;13H\e(B\e[m\e]8;;\e\\ \e[31;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[31;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce Redi\e[31;63H f\e[31;66Hr\e[31;68Hsession management\e[31;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[32;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[32;4Hf038a61c\e[32;13H\e(B\e[m\e]8;;\e\\ \e[32;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[32;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[32;48H\e(B\e[m\e]8;;\e\\Improve Docke\e[32;62Hfile for mor\e[32;75H efficient\e[32;86Hbuilds\e[32;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[33;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[33;4H4d8a221a\e[33;13H\e(B\e[m\e]8;;\e\\ \e[33;20H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[33;37H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Impl\e[33;53Hment user blocking functionality\e[33;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────1 of 60─┘\e[35;103H\e(B\e[m\e[32m\e]8;;\e\\Bisecting \e(B\e[m\e[32m\e[4m\e]8;;\e\\(Reset) \e[?25l\e[?25l\e[?25l"
- delay: 6
content: "\e[?25l\e[?25l"
- delay: 605
content: "\e[?25l\e[35;12H\e(B\e[m\e[37m\e[1m\e]8;;\e\\ \e[?25l"
- delay: 7
content: "\e[?25l\e[2;2H\e(B\e[m\e[31m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[31m\e]8;;\e\\a5cc9c45\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[31m\e]8;;\e\\<-- bad\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[35m\e[1m\e]8;;\e\\(HEAD -> feature/demo, origin/master, origin/feature/demo, master)\e(B\e[m\e]8;;\e\\ Add a\e[3;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\41e20bf9\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Set up CI/CD pipeline using GitHub actions \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\2\e[?25l"
- delay: 13
content: "\e[?25l\e[?25l"
- delay: 121
content: "\e[?25l\e[?25l"
- delay: 6
content: "\e[?25l\e[3;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\41e20bf9\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Set up CI/CD pipeline using GitHub actions \e[4;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\e1c8e57d\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Enable gzip compression for faster page loads \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\3\e[?25l"
- delay: 12
content: "\e[?25l\e[?25l"
- delay: 125
content: "\e[?25l\e[?25l"
- delay: 9
content: "\e[?25l\e[4;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\e1c8e57d\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enable gzip compression for faster page loads \e[5;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\72e34e08\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Refactor error messages for better clarity \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\4\e[?25l"
- delay: 14
content: "\e[?25l\e[?25l"
- delay: 122
content: "\e[?25l\e[?25l"
- delay: 7
content: "\e[?25l\e[5;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\72e34e08\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor error messages for better clarity \e[6;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\d1993a44\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Improve accessibility of site navigation \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\5\e[?25l"
- delay: 13
content: "\e[?25l\e[?25l"
- delay: 124
content: "\e[?25l\e[?25l"
- delay: 9
content: "\e[?25l\e[6;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\d1993a44\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve accessibility of site navigation \e[7;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\cf82ae63\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add loading indicators to improve UX \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\6\e[?25l"
- delay: 14
content: "\e[?25l\e[?25l"
- delay: 122
content: "\e[?25l\e[?25l"
- delay: 6
content: "\e[?25l\e[7;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\cf82ae63\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add loading indicators to improve UX \e[8;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\099ca1d0\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add end-to-end tests for checkout flow \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\7\e[?25l"
- delay: 16
content: "\e[?25l\e[?25l"
- delay: 123
content: "\e[?25l\e[?25l"
- delay: 6
content: "\e[?25l\e[8;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\099ca1d0\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add end-to-end tests for checkout flow \e[9;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\76ff9ddd\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Fix broken links on the help page \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\8\e[?25l"
- delay: 11
content: "\e[?25l\e[?25l"
- delay: 123
content: "\e[?25l\e[?25l"
- delay: 6
content: "\e[?25l\e[9;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\76ff9ddd\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Fix broken links on the help page \e[10;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\421d5c71\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Implement automated backups for database \e[34;112H\e(B\e[m\e[32m\e[1m\e]8;;\e\\9\e[?25l"
- delay: 15
content: "\e[?25l\e[?25l"
- delay: 123
content: "\e[?25l\e[?25l"
- delay: 8
content: "\e[?25l\e[10;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\421d5c71\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement automated backups for database \e[11;2H\e(B\e[m\e[90;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[90;44m\e[1m\e]8;;\e\\d6348a27\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add TypeScript types to User module \e[34;111H\e(B\e[m\e[32m\e[1m\e]8;;\e\\10\e[?25l"
- delay: 12
content: "\e[?25l\e[?25l"
- delay: 122
content: "\e[?25l\e[35;12H\e(B\e[m\e[36m\e[1m\e]8;;\e\\Pressing b \e[?25l"
- delay: 18
content: "\e[?25l\e[1;1H\e(B\e[m\e[30m\e]8;;\e\\┌─\e(B\e[m\e[32m\e]8;;\e\\Commits \e(B\e[m\e[30m\e]8;;\e\\- Reflog─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;120H▲\e[3;1H│\e[3;120H█\e[4;1H│\e[4;120H█\e[5;1H│\e[5;120H█\e[6;1H│\e[6;120H█\e[7;1H│\e[7;120H█\e[8;1H│\e[8;120H█\e[9;1H│\e[9;120H█\e[10;1H│\e[10;120H█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Bisect────────────────────────────────────────────────────────────────────────┐\e[13;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\b\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark current commit (d6348a27) as bad \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[14;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\g\e(B\e[m\e]8;;\e\\ Mark current commit (d6348a27)\e[15;56Hs good \e[15;65H \e[15;68H \e[15;81H \e[15;84H \e[15;92H \e[15;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[15;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\s\e(B\e[m\e]8;;\e\\ Skip current commit (d6348a27)\e[16;55H \e[16;64H \e[16;75H \e[16;84H \e[16;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[16;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\r\e(B\e[m\e]8;;\e\\ Reset bisect \e[17;46H \e[17;48H \e[17;55H \e[17;62H \e[17;72H \e[17;75H \e[17;79H \e[17;86H \e[17;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[17;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ Cancel \e[18;46H \e[18;48H \e[18;56H \e[18;67H \e[18;77H \e[18;85H \e[18;88H \e[18;94H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\└────────────────────────────────────────────────────────────────────────1 of 5─┘\e[19;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└─────────────────────────────────────────────────────────────────────────────────────────────────────────────10 of 60─┘\e[?25l"
- delay: 603
content: "\e[?25l\e[35;12H\e(B\e[m\e[37m\e[1m\e]8;;\e\\ \e[?25l\e[?25l\e[14;22H\e(B\e[m\e[36m\e]8;;\e\\b\e(B\e[m\e]8;;\e\\ Mark current commit (d6348a27) as bad \e[15;22H\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\g\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark current commit (d6348a27) as good \e[19;94H\e(B\e[m\e[32m\e[1m\e]8;;\e\\2\e[?25l"
- delay: 123
content: "\e[?25l\e[35;12H\e(B\e[m\e[36m\e[1m\e]8;;\e\\Pressing <enter> \e[?25l"
- delay: 126
content: "\e[?25l\e[1;1H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Commits \e(B\e[m\e]8;;\e\\- Reflog\e(B\e[m\e[32m\e[1m\e]8;;\e\\─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[2;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[35m\e[1m\e]8;;\e\\(origin/master, \e[2;69Hrigin/feature/dem\e[2;87H, master, feature/de\e[2;108Ho)\e(B\e[m\e]8;;\e\\ Add\e[2;115Ha use\e(B\e[m\e[32m\e[1m\e]8;;\e\\▲\e[3;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[3;4H41e20bf9\e[3;13H?\e[3;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[3;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[3;52H\e(B\e[m\e]8;;\e\\Set up CI/CD p\e[3;67Hp\e[3;69Hline using GitHub actions\e[3;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[4;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[4;4He1c8e57d\e[4;13H?\e[4;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[4;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enable gzip compressi\e[4;74Hn\e[4;77Hor faster page loads\e[4;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[5;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[5;4H72e34e08\e[5;13H?\e[5;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[5;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refacto\e[5;60H error mes\e[5;71Hages\e[5;76Hfor better clarity\e[5;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[6;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[6;4Hd1993a44\e[6;13H?\e[6;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[6;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve access\e[6;67Hbility of site n\e[6;84Hv\e[6;86Hgation\e[6;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[7;1H│\e(B\e[m\e[95;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\cf82ae63\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\<-- current\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\(HEAD)\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add loading indicators to improve UX \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[8;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[8;4H099ca1d0\e[8;13H?\e[8;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[8;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[8;52H\e(B\e[m\e]8;;\e\\Ad\e[8;55H end-to-end tests\e[8;73Hfor checkout flow\e[8;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[9;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[9;4H76ff9ddd\e[9;13H?\e[9;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[9;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[9;52H\e(B\e[m\e]8;;\e\\Fix broke\e[9;62H links on\e[9;72Hthe help page\e[9;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[10;1H│\e(B\e[m\e[34m\e]8;;\e\\ﰖ\e[10;4H421d5c71\e[10;13H?\e[10;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[10;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ I\e[10;54Hplemen\e[10;61H au\e[10;65Homated backups\e[10;80Hfor d\e[10;86Htabase\e[10;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[11;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\d6348a27\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\<-- good\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add TypeScript types to User module \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[12;1H│\e[12;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[12;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Move co\e[12;60Hstants to a separate con\e[12;86Hg file\e[12;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[13;1H│\e[13;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user search with fuzzy matching \e[13;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e]8;;\e\\ \e[14;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ref\e[14;56Hctor session\e[14;69Hmanagement\e[14;80Husing\e[14;86HJWT\e[14;101H \e[14;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure atomicity of transactions in payment system\e[15;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e]8;;\e\\ \e[16;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle\e[16;59Hdatabase\e[16;68Hconnection\e[16;79Hfailures\e[16;88Hgracefully\e[16;101H \e[16;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e]8;;\e\\ \e[17;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[17;50H◯\e[17;52H\e(B\e[m\e]8;;\e\\Update\e[17;59Hstyles\e[17;66Haccording\e[17;76Hto\e[17;79Hnew\e[17;83Hdesign\e[17;90Hguidelines\e[17;101H \e[17;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e]8;;\e\\ \e[18;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[18;32H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[18;50H◯\e[18;52H\e(B\e[m\e]8;;\e\\Replace\e[18;60Hdeprecated\e[18;71Hlifecycle\e[18;81Hmethods\e[18;89Hin\e[18;92HReact\e[18;98Hcomponents\e[18;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Revamp error handling in user registration \e[19;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;1H│\e[20;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[20;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle edge case\e[20;69Hfo\e[20;72H zero quant\e[20;84Hty in cart\e[20;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[21;1H│\e[21;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[21;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce retry mechan\e[21;75Hsm in network calls\e[21;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[22;1H│\e[22;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[22;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ R\e[22;54Hmove hardcoded values from payment module\e[22;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[23;1H│\e[23;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[23;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance lo\e[23;63Hg\e[23;66Hg in production environment\e[23;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[24;1H│\e[24;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[24;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e[24;52H\e(B\e[m\e]8;;\e\\Add i\e[24;58Hternation\e[24;68Hl\e[24;70Hzation support\e[24;85Hfo\e[24;88H German\e[24;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[25;1H│\e[25;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[25;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Update UX of password res\e[25;78Ht feature\e[25;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[26;1H│\e[26;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[26;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Migrate legacy cod\e[26;71Hbase to Typescript\e[26;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[27;1H│\e[27;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[27;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Resolve race condit\e[27;72Hon in transactio\e[27;89H ha\e[27;93Hdling\e[27;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[28;1H│\e[28;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[28;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Hard\e[28;57Hn security of user password storage\e[28;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[29;1H│\e[29;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[29;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ I\e[29;54Hplement bulk d\e[29;69Hlete feature in admi\e[29;90H panel\e[29;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[30;1H│\e[30;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[30;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure CSRF protecti\e[30;73Hn\e[30;75Hfor\e[30;79Hall forms\e[30;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[31;1H│\e[31;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[31;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce Redis\e[31;68Hfor sessio\e[31;79H management\e[31;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[32;1H│\e[32;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[32;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve Dockerfile\e[32;71Hf\e[32;74H more efficient builds\e[32;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[33;1H│\e[33;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI\e[33;45H \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ I\e[33;54Hplement user blocking functionality\e[33;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────6 of 60─┘\e[?25l\e[?25l\e[?25l"
- delay: 603
content: "\e[?25l\e[35;21H\e(B\e[m\e[36m\e[1m\e]8;;\e\\b \e[?25l"
- delay: 16
content: "\e[?25l\e[1;1H\e(B\e[m\e[30m\e]8;;\e\\┌─\e(B\e[m\e[32m\e]8;;\e\\Commits \e(B\e[m\e[30m\e]8;;\e\\- Reflog─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;120H▲\e[3;1H│\e[3;120H█\e[4;1H│\e[4;120H█\e[5;1H│\e[5;120H█\e[6;1H│\e[6;120H█\e[7;1H│\e[7;120H█\e[8;1H│\e[8;120H█\e[9;1H│\e[9;120H█\e[10;1H│\e[10;120H█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Bisect────────────────────────────────────────────────────────────────────────┐\e[13;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\b\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark current commit (cf82ae63) as bad \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[14;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\g\e[15;24H\e(B\e[m\e]8;;\e\\Mark current commit (cf82ae63) as good \e[15;69H \e[15;72H \e[15;85H \e[15;88H \e[15;96H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[15;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\s\e[16;24H\e(B\e[m\e]8;;\e\\Skip current commit (cf82ae63) \e[16;59H \e[16;68H \e[16;79H \e[16;88H \e[16;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[16;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\r\e[17;24H\e(B\e[m\e]8;;\e\\Reset bisect \e[17;50H \e[17;52H \e[17;59H \e[17;66H \e[17;76H \e[17;79H \e[17;83H \e[17;90H \e[17;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[17;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;24H\e(B\e[m\e]8;;\e\\Cancel \e[18;32H \e[18;50H \e[18;52H \e[18;60H \e[18;71H \e[18;81H \e[18;89H \e[18;92H \e[18;98H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\└────────────────────────────────────────────────────────────────────────1 of 5─┘\e[19;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────6 of 60─┘\e[?25l"
- delay: 602
content: "\e[?25l\e[35;21H\e(B\e[m\e[36m\e[1m\e]8;;\e\\<enter>\e[?25l"
- delay: 116
content: "\e[?25l\e[1;1H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Commits \e(B\e[m\e]8;;\e\\- Reflog\e(B\e[m\e[32m\e[1m\e]8;;\e\\─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[2;4Ha5cc9c45\e[2;13H\e(B\e[m\e]8;;\e\\ \e[2;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\▲\e[3;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[3;4H41e20bf9\e[3;13H\e(B\e[m\e]8;;\e\\ \e[3;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[4;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[4;4He1c8e57d\e[4;13H\e(B\e[m\e]8;;\e\\ \e[4;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[5;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[5;4H72e34e08\e[5;13H\e(B\e[m\e]8;;\e\\ \e[5;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[6;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[6;4Hd1993a44\e[6;13H\e(B\e[m\e]8;;\e\\ \e[6;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[7;1H│\e(B\e[m\e[31m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[31m\e]8;;\e\\cf82ae63\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[31m\e]8;;\e\\<-- bad\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add loading indicators to improve UX \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[8;1H│\e[8;120H█\e[9;1H│\e(B\e[m\e[95;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\76ff9ddd\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\<-- current\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\(HEAD)\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Fix broken links on the help page \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[10;1H│\e[10;120H█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user search with fuzzy matching \e[13;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor session management using JWT \e[14;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e]8;;\e\\ \e[15;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure atomicity\e[15;69Hof\e[15;72Htransactions\e[15;85Hin\e[15;88Hpayment\e[15;96Hsystem\e[15;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e]8;;\e\\ \e[16;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle\e[16;59Hdatabase\e[16;68Hconnection\e[16;79Hfailures\e[16;88Hgracefully\e[16;101H \e[16;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e]8;;\e\\ \e[17;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[17;50H◯\e[17;52H\e(B\e[m\e]8;;\e\\Update\e[17;59Hstyles\e[17;66Haccording\e[17;76Hto\e[17;79Hnew\e[17;83Hdesign\e[17;90Hguidelines\e[17;101H \e[17;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e]8;;\e\\ \e[18;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[18;32H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[18;50H◯\e[18;52H\e(B\e[m\e]8;;\e\\Replace\e[18;60Hdeprecated\e[18;71Hlifecycle\e[18;81Hmethods\e[18;89Hin\e[18;92HReact\e[18;98Hcomp\e[18;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Revamp error handling in user registration \e[19;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────8 of 60─┘\e[?25l\e[?25l\e[?25l\e[?25l\e[?25l"
- delay: 604
content: "\e[?25l\e[35;21H\e(B\e[m\e[36m\e[1m\e]8;;\e\\b \e[?25l"
- delay: 16
content: "\e[?25l\e[1;1H\e(B\e[m\e[30m\e]8;;\e\\┌─\e(B\e[m\e[32m\e]8;;\e\\Commits \e(B\e[m\e[30m\e]8;;\e\\- Reflog─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;120H▲\e[3;1H│\e[3;120H█\e[4;1H│\e[4;120H█\e[5;1H│\e[5;120H█\e[6;1H│\e[6;120H█\e[7;1H│\e[7;120H█\e[8;1H│\e[8;120H█\e[9;1H│\e[9;120H█\e[10;1H│\e[10;120H█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Bisect────────────────────────────────────────────────────────────────────────┐\e[13;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\b\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark current commit (76ff9ddd) as bad \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[14;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\g\e[15;24H\e(B\e[m\e]8;;\e\\Mark current commit (76ff9ddd) as good \e[15;69H \e[15;72H \e[15;85H \e[15;88H \e[15;96H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[15;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\s\e[16;24H\e(B\e[m\e]8;;\e\\Skip current commit (76ff9ddd) \e[16;59H \e[16;68H \e[16;79H \e[16;88H \e[16;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[16;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\r\e[17;24H\e(B\e[m\e]8;;\e\\Reset bisect \e[17;50H \e[17;52H \e[17;59H \e[17;66H \e[17;76H \e[17;79H \e[17;83H \e[17;90H \e[17;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[17;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;24H\e(B\e[m\e]8;;\e\\Cancel \e[18;32H \e[18;50H \e[18;52H \e[18;60H \e[18;71H \e[18;81H \e[18;89H \e[18;92H \e[18;98H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\└────────────────────────────────────────────────────────────────────────1 of 5─┘\e[19;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────8 of 60─┘\e[?25l"
- delay: 603
content: "\e[?25l\e[35;12H\e(B\e[m\e[37m\e[1m\e]8;;\e\\ \e[?25l\e[?25l\e[14;22H\e(B\e[m\e[36m\e]8;;\e\\b\e(B\e[m\e]8;;\e\\ Mark current commit (76ff9ddd) as bad \e[15;22H\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\g\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark current commit (76ff9ddd) as good \e[19;94H\e(B\e[m\e[32m\e[1m\e]8;;\e\\2\e[?25l"
- delay: 124
content: "\e[?25l\e[35;12H\e(B\e[m\e[36m\e[1m\e]8;;\e\\Pressing <enter> \e[?25l"
- delay: 124
content: "\e[?25l\e[1;1H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Commits \e(B\e[m\e]8;;\e\\- Reflog\e(B\e[m\e[32m\e[1m\e]8;;\e\\─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;120H▲\e[3;1H│\e[3;120H█\e[4;1H│\e[4;120H█\e[5;1H│\e[5;120H█\e[6;1H│\e[6;120H█\e[7;1H│\e[7;120H█\e[8;1H│\e(B\e[m\e[95;44m\e[1m\e]8;;\e\\ﰖ\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\099ca1d0\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\<-- current\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[95;44m\e[1m\e]8;;\e\\(HEAD)\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add end-to-end tests for checkout flow \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[9;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\76ff9ddd\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e]8;;\e\\<-- good\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Fix broken links on the help page \e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[10;1H│\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[10;4H421d5c71\e[10;13H\e(B\e[m\e]8;;\e\\ \e[10;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user search with fuzzy matching \e[13;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e]8;;\e\\ \e[14;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ref\e[14;56Hctor session\e[14;69Hmanagement\e[14;80Husing\e[14;86HJWT\e[14;101H \e[14;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure atomicity of transactions in payment system\e[15;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e]8;;\e\\ \e[16;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle\e[16;59Hdatabase\e[16;68Hconnection\e[16;79Hfailures\e[16;88Hgracefully\e[16;101H \e[16;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e]8;;\e\\ \e[17;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[17;50H◯\e[17;52H\e(B\e[m\e]8;;\e\\Update\e[17;59Hstyles\e[17;66Haccording\e[17;76Hto\e[17;79Hnew\e[17;83Hdesign\e[17;90Hguidelines\e[17;101H \e[17;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e]8;;\e\\ \e[18;24H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[18;32H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[18;50H◯\e[18;52H\e(B\e[m\e]8;;\e\\Replace\e[18;60Hdeprecated\e[18;71Hlifecycle\e[18;81Hmethods\e[18;89Hin\e[18;92HReact\e[18;98Hcomp\e[18;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Revamp error handling in user registration \e[19;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────7 of 60─┘\e[?25l\e[?25l\e[?25l"
- delay: 604
content: "\e[?25l\e[35;21H\e(B\e[m\e[36m\e[1m\e]8;;\e\\b \e[?25l"
- delay: 16
content: "\e[?25l\e[1;1H\e(B\e[m\e[30m\e]8;;\e\\┌─\e(B\e[m\e[32m\e]8;;\e\\Commits \e(B\e[m\e[30m\e]8;;\e\\- Reflog─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e[2;120H▲\e[3;1H│\e[3;120H█\e[4;1H│\e[4;120H█\e[5;1H│\e[5;120H█\e[6;1H│\e[6;120H█\e[7;1H│\e[7;120H█\e[8;1H│\e[8;120H█\e[9;1H│\e[9;120H█\e[10;1H│\e[10;120H█\e[11;1H│\e[11;120H█\e[12;1H│\e[12;120H█\e[13;1H│\e[13;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Bisect────────────────────────────────────────────────────────────────────────┐\e[13;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[14;1H│\e[14;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[96;44m\e[1m\e]8;;\e\\b\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Mark current commit (099ca1d0) as bad \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[14;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[15;1H│\e[15;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\g\e[15;24H\e(B\e[m\e]8;;\e\\Mark current commit (099ca1d0) as good \e[15;69H \e[15;72H \e[15;85H \e[15;88H \e[15;96H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[15;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[16;1H│\e[16;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\s\e[16;24H\e(B\e[m\e]8;;\e\\Skip current commit (099ca1d0) \e[16;59H \e[16;68H \e[16;79H \e[16;88H \e[16;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[16;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[17;1H│\e[17;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\r\e[17;24H\e(B\e[m\e]8;;\e\\Reset bisect \e[17;50H \e[17;52H \e[17;59H \e[17;66H \e[17;76H \e[17;79H \e[17;83H \e[17;90H \e[17;101H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[17;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[18;1H│\e[18;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;24H\e(B\e[m\e]8;;\e\\Cancel \e[18;32H \e[18;50H \e[18;52H \e[18;60H \e[18;71H \e[18;81H \e[18;89H \e[18;92H \e[18;98H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[19;1H│\e[19;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\└────────────────────────────────────────────────────────────────────────1 of 5─┘\e[19;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[20;1H│\e[20;120H│\e[21;1H│\e[21;120H│\e[22;1H│\e[22;120H│\e[23;1H│\e[23;120H│\e[24;1H│\e[24;120H│\e[25;1H│\e[25;120H│\e[26;1H│\e[26;120H│\e[27;1H│\e[27;120H│\e[28;1H│\e[28;120H│\e[29;1H│\e[29;120H│\e[30;1H│\e[30;120H│\e[31;1H│\e[31;120H│\e[32;1H│\e[32;120H│\e[33;1H│\e[33;120H▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────7 of 60─┘\e[?25l"
- delay: 604
content: "\e[?25l\e[35;21H\e(B\e[m\e[36m\e[1m\e]8;;\e\\<enter>\e[?25l"
- delay: 135
content: "\e[?25l\e[7;2H\e(B\e[m\e[30m\e]8;;\e\\ﰖ\e[7;4Hcf82ae63\e[7;13H\e(B\e[m\e]8;;\e\\ \e[13;21H \e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user search with fuzzy matching \e[14;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Bisect complete───────────────────────────────────────────────────────────────┐\e[15;22H\e(B\e[m\e[1m\e]8;;\e\\Bisect complete! The following commit introduced the change:\e[16;22H\e(B\e[m\e]8;;\e\\ \e[16;24H \e[16;29H \e[16;37H \e[16;44H \e[17;22H\e(B\e[m\e[1m\e]8;;\e\\099ca1d Add end-to-end tests for checkout flow\e[18;24H\e(B\e[m\e]8;;\e\\ \e[19;21H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\Do you want to reset 'git bisect' now? \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;21H└───────────────────────────────────────────────────────────────────────────────┘\e[?25l"
- delay: 2604
content: "\e[?25l\e[?25l"
- delay: 95
content: "\e[?25l\e[1;1H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┌─Commits \e(B\e[m\e]8;;\e\\- Reflog\e(B\e[m\e[32m\e[1m\e]8;;\e\\─────────────────────────────────────────────────────────────────────────────────────────────────────┐\e[2;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[2;4Ha5cc9c45\e[2;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[2;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[2;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[35m\e[1m\e]8;;\e\\(HEAD -> featu\e[2;55He/demo, origin/master, origin/feature/demo, mast\e[2;104Hr)\e(B\e[m\e]8;;\e\\ Add\e[2;111Ha user-fr\e(B\e[m\e[32m\e[1m\e]8;;\e\\▲\e[3;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[3;4H41e20bf9\e[3;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[3;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[3;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Set up CI/CD pipeline using GitHub actions \e[3;87H \e[3;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[4;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[4;4He1c8e57d\e[4;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[4;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[4;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enable gzip\e[4;52Hcompr\e[4;58Hssion\e[4;64Hf\e[4;66Hr fa\e[4;71Hter page\e[4;80Hloads \e[4;87H \e[4;92H \e[4;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[5;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[5;4H72e34e08\e[5;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[5;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[5;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor error messag\e[5;62Hs for better cla\e[5;79Hity \e[5;87H \e[5;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[6;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[6;4Hd1993a44\e[6;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[6;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[6;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve accessibility of \e[6;67Hte navigation \e[6;82H \e[6;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[7;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[7;4Hcf82ae63\e[7;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[7;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[7;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add loading\e[7;52Hin\e[7;55Hicators to improve UX \e[7;78H \e[7;86H \e[7;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[8;1H│\e(B\e[m\e[92;44m\e[1m\e]8;;\e\\ﰖ\e[8;4H099ca1d0\e[8;13H\e(B\e[m\e[94;44m\e[1m\e]8;;\e\\9:55PM\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e[44m\e[1m\e]8;;\e\\CI \e[8;37H\e(B\e[m\e[44m\e[1m\e]8;;\e\\ \e(B\e[m\e[97;44m\e[1m\e]8;;\e\\◯\e(B\e[m\e[44m\e[1m\e]8;;\e\\ Add end-to-end tests for checkout\e[8;74Hflow \e[8;80H \e[8;84H \e[8;93H \e[8;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[9;1H│\e[9;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[9;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Fix broken links on the help\e[9;69Hpage \e[9;76H \e[9;81H \e[9;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[10;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[10;4H421d5c71\e[10;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[10;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[10;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement\e[10;50Hautomated backups for\e[10;72Hd\e[10;74Htaba\e[10;79He \e[10;84H \e[10;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[11;1H│\e[11;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[11;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add TypeScript types to User module\e[11;76H \e[11;81H \e[11;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[12;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[12;4H23dc2660\e[12;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[12;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[12;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Move constants to a \e[12;61Heparate config fil\e[12;81H \e[12;88H \e[12;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[13;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[13;4Hc0988fbd\e[13;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[13;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[13;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance user se\e[13;56Hr\e[13;58Hh\e[13;60Hwith\e[13;65Hfuzzy matc\e[13;76Hing \e[13;83H \e[13;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[14;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[14;4Habdbae31\e[14;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[14;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Refactor session management using JWT \e[14;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[15;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[15;4Hc6224692\e[15;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[15;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure atomicity of transactions in payment\e[15;84Hsystem\e[15;101H \e[15;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[16;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[16;4Ha2bbeadf\e[16;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[16;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[16;38H◯\e[16;40H\e(B\e[m\e]8;;\e\\Handle\e[16;47Hdatabase\e[16;56Hconnection\e[16;67Hfailures\e[16;76Hgracefully\e[16;101H \e[16;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[17;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[17;4He7503830\e[17;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[17;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Update styles according to new\e[17;71Hdesign\e[17;78Hguidelines\e[17;101H \e[17;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e[18;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[18;4H2d3dba16\e[18;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[18;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[18;38H◯\e[18;40H\e(B\e[m\e]8;;\e\\Replace\e[18;48Hdeprecated\e[18;59Hlifecycle\e[18;69Hmethods\e[18;77Hin\e[18;80HReact\e[18;86Hcomponents\e[18;101H \e[18;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[19;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[19;4H635edf39\e[19;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[19;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Revamp error handling in user registration \e[19;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[20;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[20;4H25c5d1fe\e[20;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[20;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Handle edge case for zero quantity in cart \e[20;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[21;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[21;4Hfcf47a26\e[21;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[21;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[21;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce\e[21;50Hretry mechanism in network calls \e[21;89H \e[21;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[22;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[22;4Haf171bab\e[22;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[22;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[22;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Remove hardcoded values from\e[22;69Hp\e[22;71Hym\e[22;74Hnt m\e[22;79Hdule \e[22;89H \e[22;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[23;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[23;4Hd40aed30\e[23;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[23;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[23;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Enhance loggi\e[23;54Hg in pr\e[23;62Hduction environment\e[23;82H \e[23;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[24;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[24;4H9f6bf535\e[24;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[24;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[24;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Add internationalization support f\e[24;75Hr\e[24;77HGerman \e[24;85H \e[24;89H \e[24;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[25;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[25;4Hb99c073b\e[25;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[25;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[25;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Update UX\e[25;50Hof \e[25;54Hassword\e[25;62Hreset feature \e[25;80H \e[25;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[26;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[26;4H5a71317e\e[26;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[26;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[26;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Migrate legacy cod\e[26;59Hbase to\e[26;67HTyp\e[26;71Hscrip\e[26;77H \e[26;79H \e[26;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[27;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[27;4H163d7f2a\e[27;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[27;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[27;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Resolve race condition in transactio\e[27;78Hhandling \e[27;90H \e[27;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[28;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[28;4H4075d17b\e[28;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[28;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[28;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Harden security of\e[28;59Huser password stor\e[28;78Hge \e[28;85H \e[28;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[29;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[29;4H975c391b\e[29;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[29;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[29;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement\e[29;50Hbulk d\e[29;57Hl\e[29;59Hte\e[29;62Hfeatur\e[29;69H in admin panel\e[29;85H \e[29;91H \e[29;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[30;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[30;4Hf94a9251\e[30;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[30;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[30;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Ensure CSRF\e[30;52Hprotection fo\e[30;66H all f\e[30;73Hrms \e[30;79H \e[30;83H \e[30;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[31;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[31;4Hbc63a4f0\e[31;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[31;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[31;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Introduce\e[31;50HRedis for session\e[31;68Hmanag\e[31;74Hment \e[31;80H \e[31;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[32;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[32;4Hf038a61c\e[32;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[32;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[32;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Improve Dockerfile for mo\e[32;66He efficient builds \e[32;90H \e[32;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[33;1H│\e(B\e[m\e[32m\e]8;;\e\\ﰖ\e[33;4H4d8a221a\e[33;13H\e(B\e[m\e[34m\e]8;;\e\\9:55PM\e[33;20H\e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\CI \e[33;37H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[38;2;73;40;205m\e]8;;\e\\◯\e(B\e[m\e]8;;\e\\ Implement\e[33;50Huser blocking functionality \e[33;120H\e(B\e[m\e[32m\e[1m\e]8;;\e\\▼\e[34;1H└──────────────────────────────────────────────────────────────────────────────────────────────────────────────7 of 60─┘\e[35;103H\e(B\e[m\e[36m\e[1m\e]8;;\e\\ \e[?25l\e[?25l\e[?25l"
- delay: 6
content: "\e[?25l\e[?25l"
- delay: 603
content: "\e[?25l\e[35;1H\e(B\e[m\e[37m\e[1m\e]8;;\e\\Inspect problematic commit \e[?25l"
- delay: 502
content: "\e[?25l\e[35;28H\e(B\e[m\e[36m\e[1m\e]8;;\e\\Pressing _ \e[?25l"
- delay: 9
content: "\e[?25l\e[1;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\┐\e(B\e[m\e[30m\e]8;;\e\\┌─Patch────────────────────────────────────────────────────┐\e[2;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\▲\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[33m\e]8;;\e\\commit 099ca1d062203605c4fd983338c7fe8a15850489\e(B\e[m\e]8;;\e\\ \e[2;111H \e[2;113H \e(B\e[m\e[30m\e]8;;\e\\▲\e[3;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\Author: CI <CI@example.com>\e[3;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[4;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\Date:\e[4;68H Wed Aug 2\e[4;80H21:55:40\e[4;89H2023\e[4;94H+1000\e[4;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[5;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[5;64H \e[5;68H \e[5;75H \e[5;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[6;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[6;65H Add\e[6;70Hend-to-end\e[6;81Htests\e[6;87Hfor\e[6;91Hcheckout\e[6;100Hflow\e[6;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[7;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\---\e[7;66H \e[7;74H \e[7;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[8;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ tests/checkout_test.sql | 1 \e(B\e[m\e[32m\e]8;;\e\\+\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[30m\e]8;;\e\\█\e[9;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ 1 file changed,\e[9;79H1\e[9;81Hinsertion(+)\e[9;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[10;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[10;68H \e[10;72H \e[10;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[11;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\diff --git a/tests/checkout_test.sql \e(B\e[m\e[30m\e]8;;\e\\█\e[12;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\b/tests/checkout_test.sql\e[12;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[13;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\new file mode 100644\e[13;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[14;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\index 0000000..21b2b98\e[14;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[15;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\--- /dev/null\e[15;76H\e(B\e[m\e]8;;\e\\ \e[15;84H \e[15;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[16;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[1m\e]8;;\e\\+++ b/tests/checkout_test.sql\e[16;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[17;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\█\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[36m\e]8;;\e\\@@ -0,0 +1 @@\e(B\e[m\e]8;;\e\\ \e[17;78H \e[17;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[18;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e[32m\e]8;;\e\\+DELETE ALL TABLES;\e(B\e[m\e]8;;\e\\ \e[18;86H \e[18;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[19;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\\\ No newline at end of\e[19;85Hfile\e[19;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[20;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[20;66H \e[20;75H \e[20;78H \e[20;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[21;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[21;66H \e[21;69H \e[21;77H \e[21;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[22;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[22;64H \e[22;69H \e[22;77H \e[22;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[23;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[23;70H \e[23;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[24;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[24;65H \e[24;73H \e[24;77H \e[24;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[25;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[25;68H \e[25;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[26;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[26;64H \e[26;67H \e[26;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[27;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e[27;63H\e(B\e[m\e]8;;\e\\ \e[27;66H \e[27;78H \e[27;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[28;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[28;64H \e[28;73H \e[28;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[29;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\ \e[29;70H \e[29;73H \e[29;79H \e[29;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[30;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\│\e[30;63H\e(B\e[m\e]8;;\e\\ \e[30;67H \e[30;71H \e[30;120H\e(B\e[m\e[30m\e]8;;\e\\▼\e[31;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\└──────────────────────────────────────────────────────────┘\e[32;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e(B\e[m\e[30m\e]8;;\e\\┌─Command log──────────────────────────────────────────────┐\e[33;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\▼\e(B\e[m\e[30m\e]8;;\e\\│\e(B\e[m\e]8;;\e\\Your branch \e[33;75Hs up\e[33;80Hto\e[33;83Hdate\e[33;88Hwith\e[33;93H'origin/feature/demo'.\e[33;120H\e(B\e[m\e[30m\e]8;;\e\\│\e[34;52H\e(B\e[m\e[32m\e[1m\e]8;;\e\\7 of 60\e[34;60H┘\e(B\e[m\e[30m\e]8;;\e\\└──────────────────────────────────────────────────────────┘\e[?25l\e[?25l\e[?25l"
- delay: 1103
content: "\e[?25l\e[35;37H\e(B\e[m\e[36m\e[1m\e]8;;\e\\<enter>\e[?25l"
- delay: 19
content: "\e[?25l\e[1;3H\e(B\e[m\e[32m\e[1m\e]8;;\e\\Diff files (099ca1d Add end-to-end tests for checkout fl\e[2;2H\e(B\e[m\e[44m\e[1m\e]8;;\e\\▼  tests \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[3;2H\e(B\e[m\e]8;;\e\\ \e[3;4H\e(B\e[m\e[32m\e]8;;\e\\A\e(B\e[m\e]8;;\e\\  checkout_test.sql \e[3;38H \e[3;40H \e[3;44H \e[3;47H \e[3;53H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[4;2H\e(B\e[m\e]8;;\e\\ \e[4;4H \e[4;13H \e[4;20H \e[4;38H \e[4;40H \e[4;47H \e[4;52H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[5;2H\e(B\e[m\e]8;;\e\\ \e[5;4H \e[5;13H \e[5;20H \e[5;38H \e[5;40H \e[5;49H \e[5;55H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[6;2H\e(B\e[m\e]8;;\e\\ \e[6;4H \e[6;13H \e[6;20H \e[6;38H \e[6;40H \e[6;48H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[7;2H\e(B\e[m\e]8;;\e\\ \e[7;4H \e[7;13H \e[7;20H \e[7;38H \e[7;40H \e[7;44H \e[7;52H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[8;2H\e(B\e[m\e]8;;\e\\ \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[9;2H\e(B\e[m\e]8;;\e\\ \e[9;4H \e[9;13H \e[9;20H \e[9;38H \e[9;40H \e[9;44H \e[9;51H \e[9;57H \e[9;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[10;2H\e(B\e[m\e]8;;\e\\ \e[10;4H \e[10;13H \e[10;20H \e[10;38H \e[10;40H \e[10;50H \e[10;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[11;2H\e(B\e[m\e]8;;\e\\ \e[11;4H \e[11;13H \e[11;20H \e[11;38H \e[11;40H \e[11;44H \e[11;55H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[12;2H\e(B\e[m\e]8;;\e\\ \e[12;4H \e[12;13H \e[12;20H \e[12;38H \e[12;40H \e[12;45H \e[12;55H \e[12;58H \e[12;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[13;2H\e(B\e[m\e]8;;\e\\ \e[13;4H \e[13;13H \e[13;20H \e[13;38H \e[13;40H \e[13;48H \e[13;53H \e[13;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[14;2H\e(B\e[m\e]8;;\e\\ \e[14;4H \e[14;13H \e[14;20H \e[14;38H \e[14;40H \e[14;49H \e[14;57H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[15;2H\e(B\e[m\e]8;;\e\\ \e[15;4H \e[15;13H \e[15;20H \e[15;38H \e[15;40H \e[15;47H \e[15;57H \e[15;60H\e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[16;2H\e(B\e[m\e]8;;\e\\ \e[16;4H \e[16;13H \e[16;20H \e[16;38H \e[16;40H \e[16;47H \e[16;56H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[17;2H\e(B\e[m\e]8;;\e\\ \e[17;4H \e[17;13H \e[17;20H \e[17;38H \e[17;40H \e[17;47H \e[17;54H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[18;2H\e(B\e[m\e]8;;\e\\ \e[18;4H \e[18;13H \e[18;20H \e[18;38H \e[18;40H \e[18;48H \e[18;59H \e[19;2H \e[19;4H \e[19;13H \e[19;20H \e[19;38H \e[19;40H \e[19;47H \e[19;53H \e[20;2H \e[20;4H \e[20;13H \e[20;20H \e[20;38H \e[20;40H \e[20;47H \e[20;52H \e[20;57H \e[21;2H \e[21;4H \e[21;13H \e[21;20H \e[21;38H \e[21;40H \e[21;50H \e[21;56H \e[22;2H \e[22;4H \e[22;13H \e[22;20H \e[22;38H \e[22;40H \e[22;47H \e[22;57H \e[23;2H \e[23;4H \e[23;13H \e[23;20H \e[23;38H \e[23;40H \e[23;48H \e[23;56H \e[23;59H \e[24;2H \e[24;4H \e[24;13H \e[24;20H \e[24;38H \e[24;40H \e[24;44H \e[25;2H \e[25;4H \e[25;13H \e[25;20H \e[25;38H \e[25;40H \e[25;47H \e[25;50H \e[25;53H \e[26;2H \e[26;4H \e[26;13H \e[26;20H \e[26;38H \e[26;40H \e[26;48H \e[26;55H \e[27;2H \e[27;4H \e[27;13H \e[27;20H \e[27;38H \e[27;40H \e[27;48H \e[27;53H \e[28;2H \e[28;4H \e[28;13H \e[28;20H \e[28;38H \e[28;40H \e[28;47H \e[28;56H \e[28;59H \e[29;2H \e[29;4H \e[29;13H \e[29;20H \e[29;38H \e[29;40H \e[29;50H \e[29;55H \e[30;2H \e[30;4H \e[30;13H \e[30;20H \e[30;38H \e[30;40H \e[30;47H \e[30;52H \e[31;2H \e[31;4H \e[31;13H \e[31;20H \e[31;38H \e[31;40H \e[31;50H \e[31;56H \e[32;2H \e[32;4H \e[32;13H \e[32;20H \e[32;38H \e[32;40H \e[32;48H \e[32;59H \e[33;2H \e[33;4H \e[33;13H \e[33;20H \e[33;38H \e[33;40H \e[33;50H \e[33;55H \e(B\e[m\e[32m\e[1m\e]8;;\e\\│\e[34;52H─1 of 2\e[?25l"
- delay: 8
content: "\e[?25l\e[2;62H\e(B\e[m\e[1m\e]8;;\e\\diff --git a/tests/checkout_test.sql \e[3;62Hb/tests/checkout_test.sql\e(B\e[m\e]8;;\e\\ \e[4;62H\e(B\e[m\e[1m\e]8;;\e\\new file mode 100644\e(B\e[m\e]8;;\e\\ \e[4;89H \e[4;94H \e[5;62H\e(B\e[m\e[1m\e]8;;\e\\index 0000000..21b2b98\e[6;62H--- /dev/null\e(B\e[m\e]8;;\e\\ \e[6;81H \e[6;87H \e[6;91H \e[6;100H \e[7;62H\e(B\e[m\e[1m\e]8;;\e\\+++ b/tests/checkout_test.sql\e[8;62H\e(B\e[m\e[36m\e]8;;\e\\@@ -0,0 +1 @@\e(B\e[m\e]8;;\e\\ \e[8;87H \e[8;89H \e[8;91H \e[9;62H\e(B\e[m\e[32m\e]8;;\e\\+DELETE ALL TABLES;\e(B\e[m\e]8;;\e\\ \e[10;62H\\\e[10;64HNo\e[10;67Hnewline\e[10;75Hat\e[10;78Hend\e[10;82Hof\e[10;85Hfile\e[11;62H \e[12;62H \e[13;62H \e[14;62H \e[15;62H \e[16;62H \e[17;62H \e[18;62H \e[19;62H \e[19;64H \e[19;67H \e[19;75H \e[19;78H \e[19;82H \e[19;85H \e[19;120H\e(B\e[m\e[30m\e]8;;\e\\█\e[20;120H█\e[21;120H█\e[22;120H█\e[?25l"
- delay: 602
content: "\e[?25l\e[35;28H\e(B\e[m\e[37m\e[1m\e]8;;\e\\ \e[?25l\e[?25l\e[35;1H\e(B\e[m\e[37m\e[1m\e]8;;\e\\ \e[35;9H \e[35;21H \e[?25l"
- delay: 2000
content: "\e[?12l\e[?25h\e[39;49m\e(B\e[m\e[H\e[2J\e[?1049l\e[23;0;0t\e[?1l\e>\e[?1000l\e[?1002l\e[?1003l\e[?1006l\e[?2004l\e[?1004l"