Files
2026-05-03 08:40:48 +00:00

3.3 KiB

Agrarian Codex Handoff

Project State

Active repo:

/var/www/root_builds/agrarian

Active branch:

2.0

The 2.0 branch is intended to become the main development line after final build validation. The worktree may contain build-generated files after local compiles; do not commit generated build output.

Current Build Baseline

Validated locally during the final pre-main pass:

env JOBS=8 ./contrib/build-linux.sh
env JOBS=8 ./contrib/build-linux-wallet.sh
./contrib/smoke-test-daemon.sh
./contrib/smoke-test-wallet.sh
./contrib/smoke-test-qt.sh

Expected successful artifacts:

src/agrariand
src/agrarian-cli
src/agrarian-tx
src/qt/agrarian-qt

Additional validation completed during this pass:

ALLOW_ROOT_BUILD_MENU=1 AGRARIAN_MENU_CHOICE=windows-daemon WORKDIR=/var/www/root_builds/agrarian BRANCH=2.0 JOBS=8 ./contrib/agrarian-build-menu.sh
ALLOW_ROOT_BUILD_MENU=1 AGRARIAN_MENU_CHOICE=windows-qt WORKDIR=/var/www/root_builds/agrarian BRANCH=2.0 JOBS=8 ./contrib/agrarian-build-menu.sh
ALLOW_ROOT_BUILD_MENU=1 AGRARIAN_MENU_CHOICE=linux-arm64-daemon WORKDIR=/var/www/root_builds/agrarian BRANCH=2.0 JOBS=8 ./contrib/agrarian-build-menu.sh
ALLOW_ROOT_BUILD_MENU=1 AGRARIAN_MENU_CHOICE=linux-arm64-qt WORKDIR=/var/www/root_builds/agrarian BRANCH=2.0 JOBS=8 ./contrib/agrarian-build-menu.sh

The ARM64 daemon cross-build produced ARM aarch64 ELF binaries. The ARM64 Qt target correctly refused to run on x86_64 and remains native-only.

Build Menu

Use the menu for fresh-machine testing:

curl -L https://raw.githubusercontent.com/pacificao/agrarian/2.0/contrib/agrarian-build-menu.sh -o agrarian-build-menu.sh
chmod +x agrarian-build-menu.sh
BRANCH=2.0 ./agrarian-build-menu.sh

For controlled root-only environments only:

ALLOW_ROOT_BUILD_MENU=1 BRANCH=2.0 ./contrib/agrarian-build-menu.sh

The menu now includes Linux, Windows, and ARM64 targets. ARM64 daemon cross-build from x86_64 is supported. ARM64 Qt is native-only for now.

Network Notes

Mainnet P2P port:

51336

Seed nodes currently use:

node1.agrariancoin.com
node2.agrariancoin.com
node3.agrariancoin.com
node4.agrariancoin.com
node5.agrariancoin.com

The daemon has been used to test peer visibility with another node at dev.barnealogy.com. Recheck connectivity after major consensus or network changes.

Important Decisions

  • Keep Berkeley DB at 4.8.30 for 2.0 wallet compatibility.
  • Do not upgrade to BDB 18.x in this release.
  • Treat a SQLite wallet backend as a future migration project with backup, migration, and rollback documentation.
  • For now, Linux validation is the fastest correctness loop, but Windows builds must pass before release.
  • Do not assume Linux success guarantees Windows success; cross-build and Qt plugin/link behavior can fail independently.

Known Warning Areas

  • std::random_shuffle deprecation warnings remain.
  • Some vendored dependency warnings remain.
  • Some old Boost/LevelDB warning noise remains.
  • Cleanup should be correctness-driven, not broad cosmetic churn before release.

Safe Cleanup Pattern

Before committing, stage intentional source/doc/script files first, then revert unstaged build output:

git add <intentional files>
git restore .
git clean -nd

Only run git clean -fd after reviewing the dry-run output.