From 4bb2bb5584823692e5f1ff934bec80f9abf0f0f4 Mon Sep 17 00:00:00 2001
From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com>
Date: Tue, 24 Oct 2023 11:32:16 +0000
Subject: [PATCH 1/6] chore: bump alpine version

---
 barretenberg/.dockerignore         | 3 +++
 barretenberg/sol/.rebuild_patterns | 7 +++++++
 barretenberg/sol/Dockerfile        | 2 +-
 3 files changed, 11 insertions(+), 1 deletion(-)
 create mode 100644 barretenberg/sol/.rebuild_patterns

diff --git a/barretenberg/.dockerignore b/barretenberg/.dockerignore
index b38d06b3356..2920dd00c6c 100644
--- a/barretenberg/.dockerignore
+++ b/barretenberg/.dockerignore
@@ -3,6 +3,9 @@ sol/cache
 sol/out
 sol/Dockerfile
 sol/lib
+sol/.foundry
+sol/cache
+sol/out
 cpp/build
 cpp/srs_db/ignition
 .gitmodules
\ No newline at end of file
diff --git a/barretenberg/sol/.rebuild_patterns b/barretenberg/sol/.rebuild_patterns
new file mode 100644
index 00000000000..df72c4c5c9d
--- /dev/null
+++ b/barretenberg/sol/.rebuild_patterns
@@ -0,0 +1,7 @@
+^barretenberg/cpp/.*\.(cpp|cc|cxx|c\+\+|h|hpp|hxx|h\+\+|c|h|inl|inc|ipp|tpp|cmake)$
+^barretenberg/cpp/.*CMakeLists\.txt$
+^barretenberg/cpp/.*Dockerfile.*$
+^barretenberg/cpp/scripts/
+^barretenberg/sol/src/
+^barretenberg/sol/scripts/
+^barretenberg/sol/test/
diff --git a/barretenberg/sol/Dockerfile b/barretenberg/sol/Dockerfile
index 0b6d172926b..1ce661ff82a 100644
--- a/barretenberg/sol/Dockerfile
+++ b/barretenberg/sol/Dockerfile
@@ -1,4 +1,4 @@
-FROM alpine:3.17
+FROM alpine:3.18
 RUN apk update \
     && apk upgrade \
     && apk add --no-cache \

From d8c96aca849a2289ea41e3515aa563be8428f472 Mon Sep 17 00:00:00 2001
From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com>
Date: Tue, 24 Oct 2023 11:34:05 +0000
Subject: [PATCH 2/6] feat: add to ci

---
 .circleci/config.yml | 12 ++++++++++++
 build_manifest.yml   |  5 +++++
 2 files changed, 17 insertions(+)

diff --git a/.circleci/config.yml b/.circleci/config.yml
index f3fc08f7775..445dd5beef9 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -131,6 +131,17 @@ jobs:
           name: "Build"
           command: cond_spot_run_build barretenberg-x86_64-linux-clang-assert 128
 
+  barretenberg-x86_64-linux-clang-sol:
+    docker:
+      - image: aztecprotocol/alpine-build-image
+    resource_class: small
+    steps:
+      - *checkout
+      - *setup_env
+      - run:
+          name: "Build"
+          command: cond_spot_run_build barretenberg-x86_64-linux-clang-sol 128
+
   barretenberg-stdlib-tests:
     docker:
       - image: aztecprotocol/alpine-build-image
@@ -1143,6 +1154,7 @@ workflows:
       - barretenberg-x86_64-linux-clang-assert: *defaults
       - barretenberg-x86_64-linux-clang-fuzzing: *defaults
       - barretenberg-wasm-linux-clang: *defaults
+      - barretenberg-x86_64-linux-clang-sol: *defaults
       - barretenberg-proof-system-tests: *bb_test
       - barretenberg-honk-tests: *bb_test
       - barretenberg-dsl-tests: *bb_test
diff --git a/build_manifest.yml b/build_manifest.yml
index c3d413b1552..bfba413ceb4 100644
--- a/build_manifest.yml
+++ b/build_manifest.yml
@@ -23,6 +23,11 @@ barretenberg-wasm-linux-clang:
   dockerfile: dockerfiles/Dockerfile.wasm-linux-clang
   rebuildPatterns: .rebuild_patterns
 
+barretenberg-x86_64-linux-clang-sol:
+  buildDir: barretenberg
+  dockerfile: sol/Dockerfile
+  rebuildPatterns: .rebuild_patterns
+
 bb.js:
   buildDir: barretenberg/ts
   dependencies:

From 850298ae10cadd5fd1f6d1cfced526bd17da6a40 Mon Sep 17 00:00:00 2001
From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com>
Date: Tue, 24 Oct 2023 11:43:42 +0000
Subject: [PATCH 3/6] fix: bump clang

---
 barretenberg/sol/.gitignore | 2 +-
 barretenberg/sol/Dockerfile | 4 ++--
 build_manifest.yml          | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/barretenberg/sol/.gitignore b/barretenberg/sol/.gitignore
index 434dd3d2ff4..9a39bcb1ccd 100644
--- a/barretenberg/sol/.gitignore
+++ b/barretenberg/sol/.gitignore
@@ -12,4 +12,4 @@ out/
 .vscode/settings.json
 .foundry
 
-build/
\ No newline at end of file
+**/build*/*
diff --git a/barretenberg/sol/Dockerfile b/barretenberg/sol/Dockerfile
index 1ce661ff82a..718692fc6c9 100644
--- a/barretenberg/sol/Dockerfile
+++ b/barretenberg/sol/Dockerfile
@@ -3,7 +3,7 @@ RUN apk update \
     && apk upgrade \
     && apk add --no-cache \
         build-base \
-        clang15 \
+        clang16 \
         openmp-dev \
         cmake \
         ninja \
@@ -15,7 +15,7 @@ WORKDIR /usr/src/barretenberg/cpp
 
 COPY ./cpp .
 # Build everything to ensure everything builds. All tests will be run from the result of this build.
-RUN cmake --preset default  && cmake --build --preset default --target solidity_key_gen solidity_proof_gen
+RUN cmake --preset clang16  && cmake --build --preset clang16 --target solidity_key_gen solidity_proof_gen
 
 FROM docker.io/frolvlad/alpine-glibc:alpine-3.17_glibc-2.34 as builder
 RUN apk update && apk add git curl build-base openmp-dev bash
diff --git a/build_manifest.yml b/build_manifest.yml
index bfba413ceb4..27dcd8e3f84 100644
--- a/build_manifest.yml
+++ b/build_manifest.yml
@@ -26,7 +26,7 @@ barretenberg-wasm-linux-clang:
 barretenberg-x86_64-linux-clang-sol:
   buildDir: barretenberg
   dockerfile: sol/Dockerfile
-  rebuildPatterns: .rebuild_patterns
+  rebuildPatterns: sol/.rebuild_patterns
 
 bb.js:
   buildDir: barretenberg/ts

From 1cfbff26f0e5c5c95ea3f754023529f096190e35 Mon Sep 17 00:00:00 2001
From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com>
Date: Tue, 24 Oct 2023 11:49:32 +0000
Subject: [PATCH 4/6] exp: test noop speed

---
 yellow-paper/docs/intro.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/yellow-paper/docs/intro.md b/yellow-paper/docs/intro.md
index 2b26bc7248c..8e9e682243a 100644
--- a/yellow-paper/docs/intro.md
+++ b/yellow-paper/docs/intro.md
@@ -235,4 +235,4 @@ The draft subsections are mere suggestions (and serve as a helpful reminder of t
     - Bytecode commitment circuit [???]
   - Smart Contracts [Lasse]
     - ...
-- Acknowledgements
\ No newline at end of file
+- Acknowledgements

From b45e943bf1a548c0b3300a046a9990b1e6b444b7 Mon Sep 17 00:00:00 2001
From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com>
Date: Wed, 25 Oct 2023 15:58:32 +0000
Subject: [PATCH 5/6] fix: drop core count

---
 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.circleci/config.yml b/.circleci/config.yml
index 445dd5beef9..08e83037d75 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -140,7 +140,7 @@ jobs:
       - *setup_env
       - run:
           name: "Build"
-          command: cond_spot_run_build barretenberg-x86_64-linux-clang-sol 128
+          command: cond_spot_run_build barretenberg-x86_64-linux-clang-sol 32
 
   barretenberg-stdlib-tests:
     docker:

From 2f4d75cf65990e362ebaa10cec215d1b68f33e72 Mon Sep 17 00:00:00 2001
From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com>
Date: Wed, 25 Oct 2023 15:59:56 +0000
Subject: [PATCH 6/6] chore: force rebuild after core drop

---
 barretenberg/sol/Dockerfile | 1 +
 1 file changed, 1 insertion(+)

diff --git a/barretenberg/sol/Dockerfile b/barretenberg/sol/Dockerfile
index 718692fc6c9..bae96012f4c 100644
--- a/barretenberg/sol/Dockerfile
+++ b/barretenberg/sol/Dockerfile
@@ -38,4 +38,5 @@ RUN cd ../cpp/srs_db && ./download_ignition.sh 3 && cd ../../sol
 
 RUN ./scripts/init.sh
 
+# TestBase is excluded as it is just boilerplate 
 RUN forge test --no-match-contract TestBase
\ No newline at end of file