Skip to content

Version 5.1

Latest

Choose a tag to compare

@mkmccarty mkmccarty released this 09 Dec 04:29
· 624 commits to main since this release
4285f14

What's Changed

  • feat: Refactor module imports and organization by @mkmccarty in #1415
  • feat: Add support for OpenAI API client by @mkmccarty in #1417
  • feat: Update Go version to 1.25 by @mkmccarty in #1418
  • feat: Disable Go vet and audit checks in CI/CD workflows by @mkmccarty in #1419
  • feat: Disable go test in CI workflow by @mkmccarty in #1420
  • feat: Disable test step and enable build step by @mkmccarty in #1421
  • feat(go.sum): Update dependencies by @mkmccarty in #1422
  • Gitbutler/workspace by @mkmccarty in #1423
  • feat: Add 'pkg' directory to .gitignore by @mkmccarty in #1424
  • feat: Exclude 'pkg' directory from .gitignore by @mkmccarty in #1425
  • feat: use nickname instead of full name in boost message by @mkmccarty in #1426
  • feat(boost): Display egg inc name in boost message by @mkmccarty in #1427
  • feat(boost): remove booster from contract by @mkmccarty in #1428
  • feat(contract): set sink boost position based on contract duration by @mkmccarty in #1429
  • feat: update google.golang.org/genproto dependencies by @mkmccarty in #1430
  • Potential fix for code scanning alert no. 22: Workflow does not contain permissions by @mkmccarty in #1431
  • feat(boost): Modify boost reaction message based on contract style by @mkmccarty in #1432
  • feat(deps): update google.golang.org/api and google.golang.org/protobuf by @mkmccarty in #1433
  • feat(boost): Improve boost list advancement logic by @mkmccarty in #1434
  • feat(emoji): Improve emoji handling and case-insensitivity by @mkmccarty in #1435
  • feat(emoji): convert emoji name to lowercase by @mkmccarty in #1436
  • feat(emoji): Allow uppercase emoji names by @mkmccarty in #1437
  • feat(emoji): Add support for GIF emoji imports by @mkmccarty in #1438
  • feat(examples/README.md): Clarify DiscordGuildID setting by @mkmccarty in #1439
  • feat(boost): add progenitor support for contract creation by @mkmccarty in #1440
  • feat(contract): Add coordinator to progenitors list by @mkmccarty in #1441
  • Contributed Docker container configurations from James WST by @mkmccarty in #1442
  • feat(boost): handle contract state for token sending by @mkmccarty in #1443
  • feat(docker): Add emoji directory to container by @mkmccarty in #1444
  • feat: Update Go dependencies by @mkmccarty in #1445
  • feat: Add github/go-github/v33 dependency by @mkmccarty in #1446
  • feat: Add context and integration types to slash command by @mkmccarty in #1447
  • feat(ci): update GolangCI-Lint to v8.0.0 by @mkmccarty in #1448
  • feat(banners): Add automatic download of latest egg images by @mkmccarty in #1449
  • feat(bottools): Save egg image to config.BannerPath directory by @mkmccarty in #1450
  • feat(events): update periodicals event configuration by @mkmccarty in #1451
  • feat(version): Bump application version to 5.0 by @mkmccarty in #1452
  • feat(boost): Display egg inc name in boost message by @mkmccarty in #1453
  • feat: Remove QTargetAmount field from boost struct by @mkmccarty in #1454
  • feat: Add waitlist functionality to contract by @mkmccarty in #1455
  • feat: Update Google API dependencies by @mkmccarty in #1456
  • feat: Disable speedrun start button when contract is full by @mkmccarty in #1457
  • feat(message_redraw): Improve boost list message handling by @mkmccarty in #1458
  • feat(boost): Respect contract boost position for fast-run contracts by @mkmccarty in #1459
  • feat(boost): Recalculate token values after duration change by @mkmccarty in #1460
  • feat(boost/contract): Improve role name generation by @mkmccarty in #1461
  • feat(go.mod): Update dependencies by @mkmccarty in #1463
  • feat(events): update ACO channel for Colleggtibles by @mkmccarty in #1464
  • feat(teamwork): Optimize post-SIAB rate calculation by @mkmccarty in #1465
  • Auxbrain made changes which ended the reign of CRT. Removing that from BB and disabling Leaderboard until we learn about new techniques. by @mkmccarty in #1467
  • feat(speedrun): Enable changing sinks only by @mkmccarty in #1468
  • feat(teamwork): Optimize Chicken Run calculations and display by @mkmccarty in #1469
  • feat(contract): Add leaderboard playstyle and update handling by @mkmccarty in #1470
  • feat: Improve chicken run response message by @mkmccarty in #1471
  • feat: Update contract data structure to simplify chicken runs by @mkmccarty in #1472
  • feat(contract): remove CRT-related logic by @mkmccarty in #1473
  • feat(contract): remove DISABLE_SELFRUN and BANKER_ONLY flags by @mkmccarty in #1474
  • feat(boost): disable tango leg calculation for CRT contracts by @mkmccarty in #1475
  • feat(boost): Improve speedrun status display by @mkmccarty in #1476
  • feat(boost): remove CRT-related functionality by @mkmccarty in #1477
  • feat: Upgrade Google Gemini model and simplify API usage by @mkmccarty in #1478
  • feat(teamwork): Add minimum score metric and update score table by @mkmccarty in #1479
  • feat(boost): remove CRT state and related logic by @mkmccarty in #1480
  • feat: Update Boosting Sink User ID and remove TimeCRT by @mkmccarty in #1481
  • feat: remove speedrun mode and use contract flags instead by @mkmccarty in #1482
  • feat(boost): update contract style and boost order for leaderboard by @mkmccarty in #1483
  • feat: Implement Egg Inc API integration by @mkmccarty in #1484
  • feat: Refactor archived contracts printing logic by @mkmccarty in #1485
  • feat(boost): remove join with ping button by @mkmccarty in #1486
  • feat: Add banker boost details for active contracts by @mkmccarty in #1487
  • feat: Improve contract boosting phase messaging by @mkmccarty in #1488
  • feat: Implement user authentication and authorization by @mkmccarty in #1490
  • feat(stones): Round Colleggtible Egg Laying Rate and Colleggtible Ship Rate by @mkmccarty in #1491
  • feat(teamwork): Add more details to the teamwork output by @mkmccarty in #1492
  • feat(stones): Adjust ELR and Shipping display logic by @mkmccarty in #1493
  • feat: Improve contract and shipping cost calculations by @mkmccarty in #1494
  • feat: Improve token value calculation accuracy by @mkmccarty in #1495
  • feat: Update dependencies to latest versions by @mkmccarty in #1496
  • Removed remaining CRT references by @mkmccarty in #1497
  • feat: Add volunteer sink for all fastrun contracts by @mkmccarty in #1498
  • feat: Improve SIAB artifact swap logic by @mkmccarty in #1499
  • feat: Improve SIAB contribution rate calculation by @mkmccarty in #1500
  • feat(stones): Add ELR colleggtible to Staabmia link by @mkmccarty in #1501
  • feat(siab): Remove debug print statement for contract duration by @mkmccarty in #1502
  • feat: update contract banker after completion by @mkmccarty in #1503
  • feat(boost): add parade host functionality by @mkmccarty in #1504
  • feat(bottools): update staabmia_link.go to fix modifier types by @mkmccarty in #1505
  • feat(staabmia_link): Update Staabia calculator link to v-5 by @mkmccarty in #1506
  • mm-branch-1 by @mkmccarty in #1507
  • feat(contract): Set current banker when contract is in banker state by @mkmccarty in #1508
  • feat(boost/handlers): Add Banker sink for signup and banker states by @mkmccarty in #1509
  • feat: Implement contract score estimation and display archived contracts by @mkmccarty in #1510
  • feat: Refactor GetFirstContactFromAPI and GetContractArchiveFromAPI by @mkmccarty in #1511
  • feat: Implement output truncation and contract count display by @mkmccarty in #1512
  • feat(ei_api): Implement caching and encryption for Egg Inc API requests by @mkmccarty in #1513
  • feat(replay): Replace eggIncID with userID in JSON data by @mkmccarty in #1514
  • feat: Generate encryption key if missing in config by @mkmccarty in #1515
  • feat: add support for reading encryption key from file by @mkmccarty in #1516
  • feat: add modal for requesting Egg Inc ID by @mkmccarty in #1517
  • feat: Rename "m_m_eggid" command to "m_eggid" by @mkmccarty in #1518
  • feat(deps): update go-openai and google-genai dependencies by @mkmccarty in #1522
  • feat(siab): Improve SIAB contract score calculation by @mkmccarty in #1523
  • feat(ei_api): Add JSON backup file for debugging by @mkmccarty in #1524
  • feat: Disable Go telemetry in build workflow by @mkmccarty in #1525
  • feat: Build binaries for FreeBSD and Linux by @mkmccarty in #1526
  • feat(eggidmodal): Add option to save or forget Egg Inc ID by @mkmccarty in #1527
  • feat: Save user data to file if not cached and okay to save by @mkmccarty in #1528
  • feat: Implement user authentication and authorization by @mkmccarty in #1529
  • feat: Implement user authentication and authorization by @mkmccarty in #1530
  • feat(ei): Add time_cheat_debt field to Game message by @mkmccarty in #1531
  • Remove egg by @mkmccarty in #1532
  • feat(bottools): add player data and data gathering functions by @mkmccarty in #1533
  • feat: Optimize API calls and remove unused code by @mkmccarty in #1534
  • feat: Add support for player data in staabmia link by @mkmccarty in #1535
  • feat: Improve egg virtue display by @mkmccarty in #1536
  • feat(virtue): Add mission data and improve virtue display by @mkmccarty in #1537
  • feat(virtue): improve Eggs of Virtue display by @mkmccarty in #1538
  • feat: Add egg effect emojis to virtue display by @mkmccarty in #1539
  • feat(virtue): Increase soul egg bonus by 100x by @mkmccarty in #1540
  • feat: Improve Virtue command output by @mkmccarty in #1541
  • feat: Improve CXP version handling and ephemeral messages by @mkmccarty in #1542
  • feat(virtue): Optimize EOV calculation by @mkmccarty in #1543
  • feat: Improve Truth Egg calculation logic by @mkmccarty in #1544
  • With CRT being eliminated, this can be adjusted down by @mkmccarty in #1545
  • Track new/old cxp by @mkmccarty in #1546
  • feat: Add support for new CXP contract version by @mkmccarty in #1547
  • feat: Update dependencies by @mkmccarty in #1548
  • feat(estimate_time): Improve target TVal display for CXP v1 contracts by @mkmccarty in #1549
  • feat(contracts): Adjust CR cap for CxpVersion 1 contracts by @mkmccarty in #1550
  • feat(contract): Simplify chicken run calculation by @mkmccarty in #1551
  • feat(teamwork): Optimize contract score calculation by @mkmccarty in #1552
  • feat(boost): Improve token value calculation and display by @mkmccarty in #1553
  • feat(boost): Optimize token value updates and reordering by @mkmccarty in #1554
  • feat(research): Improve egg laying rate calculation by @mkmccarty in #1555
  • feat: Improve egg delivery and habitat reporting by @mkmccarty in #1556
  • feat: Optimize internal hatchery calculations and add silo minutes by @mkmccarty in #1557
  • feat: Improve silo minutes formatting and add TE formula by @mkmccarty in #1558
  • feat(boost): add conditional check for message components by @mkmccarty in #1559
  • feat(artifacts): add 'None' option for bot components by @mkmccarty in #1560
  • feat: Implement linear growth and egg delivery calculations by @mkmccarty in #1561
  • feat: Add internal hatchery sharing multiplier by @mkmccarty in #1562
  • feat: Improve habitat population display logic by @mkmccarty in #1563
  • feat(hab): Improve habitat status display and offline egg tracking by @mkmccarty in #1564
  • feat: update egg effects based on last fueled ship by @mkmccarty in #1565
  • feat: Use highest Hab for Hab emoji and ship art by @mkmccarty in #1566
  • feat(hatchery): Implement fuel rate calculation and display by @mkmccarty in #1567
  • mm-branch-1 by @mkmccarty in #1568
  • feat(boost): Adjust delivery time message and increase laying rate by @mkmccarty in #1569
  • feat(research): Optimize internal hatchery calculations by @mkmccarty in #1570
  • feat: Display max Colleggtibles assumption in footer by @mkmccarty in #1571
  • feat(artifacts): Adjust artifact level multipliers by @mkmccarty in #1572
  • feat(virtue): Display artifact stats in separate section by @mkmccarty in #1573
  • feat(virtue): Add vehicle art and display in stats by @mkmccarty in #1574
  • feat(boost/virtue): Add TruthEggBreakpoints table by @mkmccarty in #1575
  • feat(truth-eggs): Extend Truth Egg breakpoints to 98 tiers by @mkmccarty in #1576
  • feat: add new enum types for Platform, DeviceFormFactor, and AdNetwork by @mkmccarty in #1577
  • feat(virtue): Implement Colleggtible buffs and display them by @mkmccarty in #1578
  • feat(habitat): display habitat art instead of array by @mkmccarty in #1579
  • feat: improve habitat display formatting by @mkmccarty in #1580
  • feat: Update dependencies and fix pending Truth Eggs calculation by @mkmccarty in #1581
  • feat: Add JSON backup for debugging in dev mode by @mkmccarty in #1582
  • feat(contract_scores): Implement new buff time value and teamwork calculations by @mkmccarty in #1583
  • feat(teamwork): Refactor calculateTeamworkB function by @mkmccarty in #1584
  • feat: Redact sensitive user information in backup JSON by @mkmccarty in #1585
  • feat: Asynchronously write backup JSON file by @mkmccarty in #1586
  • feat: Improve Chicken Run display for CXP v1 contracts by @mkmccarty in #1587
  • feat: Asynchronously save encrypted user data to disk by @mkmccarty in #1588
  • feat(boost): add custom emoji to farmer signup button by @mkmccarty in #1589
  • feat(score_explorer): Add new chicken run option by @mkmccarty in #1590
  • feat(virtue): Improve habitat handling and time calculations by @mkmccarty in #1591
  • feat: Adjust highest vehicle ID to 0 by @mkmccarty in #1592
  • feat: Adjust offline egg calculation to use hours by @mkmccarty in #1593
  • feat: Optimize offline egg calculation by @mkmccarty in #1594
  • feat: Add onVirtueFarm flag and adjust output formatting by @mkmccarty in #1595
  • feat: Simplify variable declaration in virtue.go by @mkmccarty in #1596
  • feat(virtue): Update Egg of Virtue farm message by @mkmccarty in #1597
  • feat: Add Virtue Farm detection logic by @mkmccarty in #1598
  • feat(boost): improve contract score estimation by @mkmccarty in #1599
  • feat(score_explorer): Improve score explorer UI and functionality by @mkmccarty in #1600
  • feat(fueling): Implement recommended fuel rate calculation by @mkmccarty in #1601
  • feat(periodicals): Exclude "first-contract" from contracts by @mkmccarty in #1602
  • feat(replay): Add active contract summary and improve threshold command by @mkmccarty in #1603
  • feat: Improve fuel rate calculation and display by @mkmccarty in #1604
  • feat: Improve fuel warning logic in virtue.go by @mkmccarty in #1605
  • feat(boost/virtue): Improve fuel rate display and mission end time by @mkmccarty in #1606
  • 🐣 feat(boost): update seasonal scoring logic by @mkmccarty in #1607
  • ✨ feat: Improve contract scoring and seasonal scoring by @mkmccarty in #1608
  • πŸš€ feat(virtue): improve fueling logic and display by @mkmccarty in #1609
  • 🎨 feat(virtue): add depot art to fuel display by @mkmccarty in #1610
  • ✨ feat(ei-api): Cache user data for 24 hours by @mkmccarty in #1611
  • ✨ feat(virtue): handle tank limits for virtue farm fueling by @mkmccarty in #1612
  • πŸš€ feat: Disable fuel rate when tank is full by @mkmccarty in #1613
  • ✨ feat(notok_slashcmd): add new contexts and integration types by @mkmccarty in #1614
  • πŸ”§ feat(go.mod, go.sum, Dockerfile.debug, Makefile): Update dependencies and add debug Docker image by @mkmccarty in #1615
  • ✨ feat: Add backstop for TruthEggBreakpoints by @mkmccarty in #1616
  • πŸš€ feat(boost): Add token ask order sorting by @mkmccarty in #1617
  • πŸš€ feat: Implement new user authentication system by @mkmccarty in #1618
  • πŸ”₯ feat: add truth egg breakpoints up to 1 quadrillion by @mkmccarty in #1619
  • πŸš€ feat: Implement new user authentication system by @mkmccarty in #1620
  • πŸš€ feat: Implement new user authentication system by @mkmccarty in #1621
  • ✨ feat(privacy): Remove user data files on privacy reset by @mkmccarty in #1622
  • πŸš€ feat: Implement new user authentication system by @mkmccarty in #1623
  • ✨ feat: Display artifact icons in virtue stats by @mkmccarty in #1624
  • πŸš€ feat(ei): add earnings event variables and logic by @mkmccarty in #1625
  • πŸš€ feat: Add artifact use to replay data by @mkmccarty in #1626
  • 🎨 feat(virtue): improve offline rate display by @mkmccarty in #1627
  • 🐣 feat(virtue): Add offline earnings display by @mkmccarty in #1628
  • 🎨 feat(Makefile): Add eggcycle target to generate animated GIF by @mkmccarty in #1629
  • fix: correct command description for /virtue by @mutilis in #1630
  • ✨ feat(virtue): update farmer name from backup data by @mkmccarty in #1631
  • πŸ”– feat(coop_status): Add compressed coop status retrieval for re-runs by @mkmccarty in #1632
  • πŸ”§ Refactor replay command and improve contract archive display by @mkmccarty in #1633
  • πŸ”§ feat: improve teamwork icons sorting and display with unique icons by @mkmccarty in #1634
  • πŸ› fix: handle nil embed in boost calculation message by @mkmccarty in #1635
  • πŸ”§ feat(replay): add contract ID filtering for active contracts by @mkmccarty in #1636
  • πŸ› fix: Improve logging and error handling in contract evaluation by @mkmccarty in #1637
  • πŸš€ feat(replay): Add chart subcommand and improve contract evaluation display by @mkmccarty in #1638
  • πŸ” fix(replay): Improve chicken run check logic and formatting by @mkmccarty in #1639
  • 🐣 fix(egg-laying): Simplify egg-laying rate calculation by removing habitat multiplier by @mkmccarty in #1640
  • πŸ”§ feat: Add token teamwork sink indicator for low performance by @mkmccarty in #1641
  • πŸ”§ feat(replay): add tval footer message for teamwork scoring context by @mkmccarty in #1642
  • πŸ“ Update TVal footer message with clearer token teamwork scoring description by @mkmccarty in #1643
  • πŸ”§ refactor: Extract help command configuration to separate function by @mkmccarty in #1645
  • πŸ”§ fix: Correct capitalization of TVal in replay output formatting by @mkmccarty in #1646
  • πŸ”§ fix: Improve habitat art display by joining habitat array by @mkmccarty in #1647
  • Refactor: rename EggIncContract variables for clarity by @mutilis in #1644
  • πŸ•’ fix: reduce cache expiration time from 24h to 1h for user data by @mkmccarty in #1649
  • feat: update /estimate-contract-time and add support for SR Sandbox links by @mutilis in #1648
  • πŸ†™ deps: Bump dependencies to latest versions by @mkmccarty in #1650
  • πŸš€ Add research data loading and calculation functions for Egg Inc by @mkmccarty in #1651
  • πŸ“ Add documentation comments to improve code readability by @mkmccarty in #1652
  • πŸ”§ fix: remove redundant eggValue variable in GetFarmEggValue by @mkmccarty in #1653
  • πŸ”§ Refactor: Improve help command with dynamic channel context by @mkmccarty in #1654
  • πŸš€ feat: Update help command with new contract-related commands by @mkmccarty in #1655
  • fix: handle empty coopID and improve prefix detection /teamwork by @mutilis in #1656
  • πŸ”§ refactor: Extract artifact level and rarity mapping to constants by @mkmccarty in #1657
  • refactor: cleanup and update SiaB swap page to use new formula /teamwork by @mutilis in #1658
  • πŸ› Fix typo in boost list reaction instruction message by @mkmccarty in #1659
  • πŸš€ feat: Add start offset option for contract scheduling by @mkmccarty in #1660
  • πŸ”§ Update Go version and dependencies to latest by @mkmccarty in #1661
  • πŸ§ͺ test: Add comprehensive tests for hab and vehicle icon generation by @mkmccarty in #1662
  • refactor: update /teamwork SiaB switch page and related calculations by @mutilis in #1663
  • πŸ”§ fix(teamwork): trim long output and use TextDisplay component by @mkmccarty in #1664
  • πŸ”§ Refactor: Move earnings bonus calculation to separate package by @mkmccarty in #1665
  • πŸ†™ build(deps): Update Go module dependencies to latest versions by @mkmccarty in #1666
  • πŸ”§ Refactor: Update teamwork data structure and message handling by @mkmccarty in #1667
  • πŸ“ feat: Add section headers and data to teamwork page display by @mkmccarty in #1668
  • πŸ” fix: Remove redundant code block markers in teamwork output by @mkmccarty in #1669
  • πŸ”₯ refactor: Remove unused code and clean up imports by @mkmccarty in #1670
  • πŸ”§ fix: update teamwork data expiry message display method by @mkmccarty in #1671
  • πŸ› Fix: Prevent nil pointer dereference in teamwork page rendering by @mkmccarty in #1672
  • πŸš‚ feat: Add train car emoji for multiple train representations by @mkmccarty in #1673
  • πŸš‚ feat(boost): Improve train emoji representation with repeated train car by @mkmccarty in #1674
  • πŸ§ͺ test(virtue): Update test cases with traffic light markers by @mkmccarty in #1675
  • πŸ”§ Optimize fuel calculation and limit fueling based on total fuel by @mkmccarty in #1676
  • 🚧 fix: Update interaction response with TextDisplay component by @mkmccarty in #1677
  • πŸ”§ Refactor teamwork page rendering and cache management by @mkmccarty in #1678
  • feat: add handling for users beyond endTime and truncate long names /… by @mutilis in #1679
  • refactor: clean up SiaB Page logic and headers by @mutilis in #1680
  • 🚧 Add commented component field to TeamworkOutputData struct by @mkmccarty in #1681
  • πŸš€ feat(research): Add fleet size calculation function by @mkmccarty in #1682
  • πŸš€ Refactor fleet size and train length research calculations by @mkmccarty in #1683
  • πŸš€ Enhance egg delivery time tracking with multi-threshold display by @mkmccarty in #1684
  • πŸ› fix: show at least 2 values by @mkmccarty in #1685
  • πŸš€ feat: Enhance time display and formatting in virtue.go by @mkmccarty in #1686
  • πŸ•°οΈ feat: Reduce delivery time threshold from 1 day to 12 hours by @mkmccarty in #1687
  • πŸ› fix: update header formatting with user name and Fprintf usage by @mkmccarty in #1688
  • ✨ feat(ui): Enhance username display with markdown emphasis by @mkmccarty in #1689
  • πŸ› fix: Remove newline and space in rocket mission formatting by @mkmccarty in #1690
  • fix: Updated CS per CR calculations for both /teamwork and /estimate by @mutilis in #1691
  • πŸ”₯ Remove unnecessary cache deletion in teamwork page handler by @mkmccarty in #1692
  • πŸ”’ fix: conditionally write debug JSON only in dev environment by @mkmccarty in #1693
  • πŸ”§ feat(scoring): Add semantic constants for seasonal scoring modes by @mkmccarty in #1694
  • πŸ› fix: prevent rounding up in EI value formatting by @mkmccarty in #1695
  • πŸ› fix(test): correct rounding in unit test for large number display by @mkmccarty in #1696
  • πŸ”§ Fix: Update time step from 5 to 1 minute for precise rate calculations by @mkmccarty in #1697
  • gen: add snapshot generator and initial ei snapshots by @mutilis in #1698
  • πŸ†™ build(deps): bump google.org/genai from v1.29.0 to v1.30.0 by @mkmccarty in #1699
  • refactor: reflect.Pointer updates by @mutilis in #1700
  • fix: correct duration formatting in Encode using FmtDurationSingleUnit by @mutilis in #1701
  • refactor(docker): remove unused Dockerfile.debug and combine two versions by @mutilis in #1702
  • feat(srsandbox): generate SR sandbox links by @mutilis in #1703
  • feat(srsandbox): added support for target egg < 1e12 (trillion) by @mutilis in #1704
  • 🌱 feat: Add log rotation with Lumberjack for improved log management by @mkmccarty in #1705
  • πŸ”§ refactor: Replace fmt.Printf with log.Printf for debugging by @mkmccarty in #1706
  • πŸ”§ Fix: Ignore return value of Rotate method call by @mkmccarty in #1707
  • πŸ” feat: Add ParadeChickenRuns to track alternate chicken run strategy by @mkmccarty in #1708
  • πŸ“ Add log rotation and signal handling for log files by @mkmccarty in #1709
  • mm-branch-1 by @mkmccarty in #1710
  • πŸ”Ό build(go): Upgrade Go version from 1.25.2 to 1.25.3 by @mkmccarty in #1711
  • πŸ”§ Modify contract validation and autocomplete handling by @mkmccarty in #1712
  • 🎨 Improve header formatting with centered Ξ”ELR column alignment by @mkmccarty in #1713
  • πŸš€ feat: Add simulate-shift option to Virtue command by @mkmccarty in #1714
  • 🌐 feat: Improve title casing with golang.org/x/text package by @mkmccarty in #1715
  • πŸ› fix: adjust habitat population calculation for alternate egg mode by @mkmccarty in #1716
  • πŸ”‡ Remove debug print statements and unused imports by @mkmccarty in #1717
  • πŸ”§ Refactor: Simplify command handling and improve code structure by @mkmccarty in #1718
  • πŸ› fix: move encrypted_ei_id retrieval after potential reset by @mkmccarty in #1719
  • πŸ”§ Refactor: Extract command options map creation to utility function by @mkmccarty in #1720
  • πŸ”§ Refactor: Extract command options map to bottools package by @mkmccarty in #1721
  • πŸš€ feat: Add force refresh option for contract archive retrieval by @mkmccarty in #1722
  • πŸ”‡ chore: comment out unused ping role configuration code by @mkmccarty in #1723
  • πŸ”§ refactor: Simplify command options map creation across multiple files by @mkmccarty in #1724
  • πŸš€ Bump iOS platform version to 1.35.2 by @mkmccarty in #1725
  • πŸ”§ feat(replay): Enhance contract evaluation with threshold filtering by @mkmccarty in #1726
  • πŸš€ Add pagination support for archived contract replay command by @mkmccarty in #1727
  • πŸ”§ fix: improve truncation message with pagination hint by @mkmccarty in #1728
  • πŸ”§ fix(replay): adjust contract list pagination and display logic by @mkmccarty in #1729
  • πŸ•’ fix: improve timer message logging for better clarity by @mkmccarty in #1730
  • πŸ†™ build(deps): bump google.golang.org/genai to v1.31.0 by @mkmccarty in #1731
  • πŸ”§ fix(research): adjust internal hatchery additive value to zero by @mkmccarty in #1732
  • πŸ”§ fix: update guidance text to reference Banker instead of Sink by @mkmccarty in #1733
  • πŸ› fix: handle zero growth rate in population growth calculation by @mkmccarty in #1734
  • πŸ› fix: prevent index out of bounds in delivery table mapping by @mkmccarty in #1735
  • πŸ”‡ fix: Silence debug print statement in artifact processing by @mkmccarty in #1736
  • πŸš€ Optimize egg count tracking logic in farm size calculation by @mkmccarty in #1737
  • πŸ› fix: remove unnecessary blank variable in egg count assignment by @mkmccarty in #1738
  • πŸ—ƒοΈ feat(database): Add legacy farmer state management queries by @mkmccarty in #1739
  • πŸ”§ refactor: Remove dev-only condition and improve error handling by @mkmccarty in #1740
  • πŸ” feat(query): Add method to retrieve user ID from EI IGN by @mkmccarty in #1741
  • πŸ”§ Refactor: Centralize LastUpdated timestamp in saveSqliteData by @mkmccarty in #1742
  • πŸ”§ Refactor: Improve farmer state management and SQLite interaction by @mkmccarty in #1743
  • πŸ”§ fix(query): update GetUserIdFromEiIgn to accept parameter and use placeholder by @mkmccarty in #1744
  • πŸ” feat: Add method to retrieve Discord user ID from Egg Inc IGN by @mkmccarty in #1745
  • feature(contract-report): Add contract-report command by @mutilis in #1746
  • πŸ”§ refactor: replace hardcoded version with semantic constant by @mkmccarty in #1748
  • fix(coop-report): Fix incorrect call by @mutilis in #1747
  • πŸ”§ refactor(contract): use GetCoopStatusForRerun for improved local caching by @mkmccarty in #1749
  • πŸ”§ Rename GetCoopStatusForRerun to GetCoopStatusForCompletedContracts by @mkmccarty in #1750
  • πŸ› fix: correct typo in contract report command description by @mkmccarty in #1751
  • πŸ†™ Update Google GenAI and GenProto dependencies to latest versions by @mkmccarty in #1752
  • πŸ”₯ Remove legacy data storage and conversion code by @mkmccarty in #1753
  • πŸ”§ fix: update option key names for relative time and start time by @mkmccarty in #1754
  • mm-branch-1 by @mkmccarty in #1756
  • πŸ”§ refactor: update CustomEggMap with lowercase keys and new egg types by @mkmccarty in #1757
  • πŸ”§ fix(contract): comment out order state validation check by @mkmccarty in #1758
  • πŸ—ƒοΈ feat: Add SQLite support for contract and farmer state data by @mkmccarty in #1759
  • πŸ”§ Refactor: Optimize contract data saving and loading mechanism by @mkmccarty in #1760
  • πŸ” Optimize query performance with indexed column selection by @mkmccarty in #1761
  • πŸš€ feat(boost): Improve contract scoring for solo and multi-coop contracts by @mkmccarty in #1762
  • πŸ› fix: handle zero completion time in replay evaluation by @mkmccarty in #1763
  • πŸ› fix: prevent coop status retrieval for solo contracts by @mkmccarty in #1764
  • πŸ”§ refactor: modify contract state management and remove unused save method by @mkmccarty in #1765
  • feat(contract-report): Add missing players option by @mutilis in #1766
  • perf(contract-report): increase concurrent fetches to 20 by @mutilis in #1767
  • πŸ› fix: Add comprehensive error definitions for contract reporting by @mkmccarty in #1768
  • πŸ”§ refactor: Improve contract lookup and hash generation methods by @mkmccarty in #1769
  • πŸ—œοΈ feat: Add gzip compression support for proto data handling by @mkmccarty in #1770
  • πŸ—œοΈ feat: Add gzip compression for encrypted user data files by @mkmccarty in #1771
  • πŸ› fix: simplify gzip buffer conversion to string by @mkmccarty in #1772
  • Changed to only write the .json files fromt the development bots by @mkmccarty in #1773
  • πŸ”§ fix: initialize sqlite queries if nil before updating contract by @mkmccarty in #1774
  • πŸ”§ fix: simplify error handling in database initialization by @mkmccarty in #1775
  • πŸ”‡ refactor(debug): Remove log statements from research calculations by @mkmccarty in #1776
  • feat(register): Add register command by @mutilis in #1777
  • πŸš€ Refactor Egg Inc ID modal and registration flow by @mkmccarty in #1778
  • πŸ”₯ refactor: Remove commented-out code and unnecessary comments by @mkmccarty in #1779
  • πŸ”§ fix: conditionally calculate tcount and ttime for seasonal scoring by @mkmccarty in #1780
  • πŸ› fix: prevent nil pointer dereference in boost speedrun logic by @mkmccarty in #1781
  • πŸ”§ fix: remove unnecessary variable declaration in boost_speedrun.go by @mkmccarty in #1782
  • πŸ› fix: Correct offline egg calculation and remaining time computation by @mkmccarty in #1783
  • πŸ”§ fix(boost): update guidance text for Banker contract state by @mkmccarty in #1784
  • πŸŽͺ feat(boost): Simplify parade alt button logic and improve readability by @mkmccarty in #1785
  • πŸŽͺ feat: Add parade booster functionality and list display by @mkmccarty in #1786
  • fix(contract-report): Fix /contract-report failure for new users by @mutilis in #1787
  • πŸ”§ fix: Improve Egg Inc ID registration flow and state management by @mkmccarty in #1788
  • πŸ”§ fix: handle contract update with error suppression by @mkmccarty in #1789
  • πŸŽͺ feat: Enhance parade functionality with user management and naming by @mkmccarty in #1790
  • πŸ”§ fix: simplify variable declaration in removeParaderFromInteraction by @mkmccarty in #1791
  • 🎨 Improve parade name generation with user-specific naming by @mkmccarty in #1792
  • πŸ”§ fix(contract): normalize parade name with lowercase first word by @mkmccarty in #1793
  • πŸ”§ fix(boost): use global name when nick is empty by @mkmccarty in #1794
  • 🎨 Set fallback name to global name when nick is empty by @mkmccarty in #1795
  • build(deps): bump google.golang.org/genai from 1.32.0 to 1.33.0 by @dependabot[bot] in #1796
  • build(deps): bump modernc.org/sqlite from 1.39.1 to 1.40.0 by @dependabot[bot] in #1797
  • πŸ”₯ Remove commented-out code for legacy contract interactions by @mkmccarty in #1798
  • πŸ†™ Update dependency versions in go.mod and go.sum by @mkmccarty in #1799
  • πŸ”§ chore: Update Go version and dependencies to 1.25.4 by @mkmccarty in #1800
  • 🚧 feat(data): Add initial research data for game progression by @mkmccarty in #1801
  • πŸ”§ feat: Add research discount and cost tracking for Curiosity egg by @mkmccarty in #1802
  • πŸ”§ feat: Add research discount event multiplier support by @mkmccarty in #1803
  • πŸš€ Refactor: Categorize and optimize research cost gathering logic by @mkmccarty in #1804
  • πŸš€ Refactor research sorting to prioritize best value research by @mkmccarty in #1805
  • πŸ”§ feat: Improve research sorting and tier-based filtering by @mkmccarty in #1806
  • πŸ”§ fix: Remove dev-only condition and improve research output formatting by @mkmccarty in #1807
  • πŸ”§ build(deps): bump google.golang.org/genai from 1.33.0 to 1.34.0 by @mkmccarty in #1808
  • Feat(contract) Add TE boost order by @mutilis in #1809
  • πŸ”¬ feat(research): Enhance research cost calculation for dev bot by @mkmccarty in #1810
  • πŸ”¬ feat: Enhance research cost calculation with time-to-buy metric by @mkmccarty in #1811
  • πŸ’Ž feat: Add gem tracking and offline earnings display by @mkmccarty in #1812
  • πŸ’Ž feat(boost): improve offline gem calculation accuracy by @mkmccarty in #1813
  • πŸ†™ build(deps): bump golang.org/x/sys to v0.38.0 by @mkmccarty in #1814
  • feat(virtue) Add dev-bot cap time calculation and simplify formatting by @mutilis in #1815
  • πŸš€ feat: Refactor offline stats and add notes section by @mkmccarty in #1816
  • 🚧 feat(boost): Add habitat artifact to population capacity stats display by @mkmccarty in #1817
  • πŸ› fix: Reposition earnings rate calculation for correct context by @mkmccarty in #1818
  • fix(virtue) Remove ELR cap calculation by @mutilis in #1819
  • πŸ› fix: Preserve artifact order in artifact set processing by @mkmccarty in #1820
  • πŸ› fix: Adjust time calculation and delivery status display logic by @mkmccarty in #1821
  • πŸ› fix: Refactor offline delivery status logic for better readability by @mkmccarty in #1822
  • ✨ feat: Improve modifier value formatting and stats display logic by @mkmccarty in #1823
  • πŸ› fix: conditionally display artifact icons when buffs are non-default by @mkmccarty in #1824
  • πŸ†™ deps: Bump Go dependencies to latest minor versions by @mkmccarty in #1825
  • πŸš€ feat(habs): Add prices and gems data for habitat levels by @mkmccarty in #1826
  • πŸ”§ Fix SQLite busy timeout for concurrent database access by @mkmccarty in #1827
  • πŸ”§ Refactor: Replace fmt.Println with log.Println for better logging by @mkmccarty in #1828
  • πŸ—ƒοΈ feat(db): Add data and timestamp tables with CRUD operations by @mkmccarty in #1829
  • πŸ”§ Refactor: Improve error handling and simplify database query methods by @mkmccarty in #1830
  • πŸš€ Refactor: Improve data processing and add transaction support by @mkmccarty in #1831
  • πŸš€ feat: Enhance artifact drop data processing and logging by @mkmccarty in #1832
  • πŸ†™ build(deps): Update Go dependencies to latest versions by @mkmccarty in #1833
  • πŸ”§ refactor: rename map variable for better clarity and readability by @mkmccarty in #1834
  • 🌟 Improve mission output formatting and readability by @mkmccarty in #1835
  • πŸš€ Refactor: Enhance data population and drop data retrieval logic by @mkmccarty in #1836
  • πŸ”§ fix: use provided timestamp for CSV filename generation by @mkmccarty in #1837
  • 🌐 feat: Use golang.org/x/text for proper title casing by @mkmccarty in #1838
  • 🚚 refactor: Move name mappings to centralized ei package by @mkmccarty in #1839
  • πŸ”§ Refactor data population logic with improved timestamp checks by @mkmccarty in #1840
  • πŸ”§ feat: conditionally remove CSV file based on dev mode by @mkmccarty in #1841
  • πŸŽ‰ feat(hunt): Add hunt command with artifact autocomplete functionality by @mkmccarty in #1842
  • πŸš€ feat: Improve artifact hunt command and data handling by @mkmccarty in #1843
  • 🎨 Refactor: Standardize artifact names and add ship star limits by @mkmccarty in #1844
  • 🎨 feat: Enhance hunt command and drop rate calculation by @mkmccarty in #1845
  • πŸš€ feat: Update ship hunt command with optional star level by @mkmccarty in #1846
  • 🎨 Refactor: Improve drop rate calculation and output formatting by @mkmccarty in #1847
  • feat(virtue simulate-shift): Add target TE for current egg by @mutilis in #1848
  • πŸš€ feat: Add mission art data and enhance hunt command structure by @mkmccarty in #1849
  • πŸš€ feat: Add minimum drops filter and improve drop data display by @mkmccarty in #1850
  • πŸ”§ Refactor artifact drop rate calculation and output formatting by @mkmccarty in #1851
  • πŸš€ Increase initial fleet size from 1 to 4 in research calculation by @mkmccarty in #1853
  • 🚧 refactor(boost): Remove unused train length variable and add comment by @mkmccarty in #1854
  • πŸ†™ build(deps): bump dependencies to latest versions by @mkmccarty in #1856
  • 🚒 Add ShipMaxStars mapping for ship type star levels by @mkmccarty in #1857
  • feat(virtue) Add max available vehicle and traincar count to dev bot by @mutilis in #1855
  • refactor(virtue) Update max available vehicle/traincar count logic and move to prod by @mutilis in #1858
  • Revert "refactor(virtue) Update max available vehicle/traincar count logic and move to prod" by @mkmccarty in #1859
  • refactor(virtue) Move available vehicle info to notes by @mutilis in #1860
  • 🚧 refactor: Remove hardcoded mission data and improve code structure by @mkmccarty in #1861
  • πŸš€ Refactor: Simplify mission art emoji handling by @mkmccarty in #1862
  • πŸš€ Refactor: Move mission ship data to ei package and simplify indexing by @mkmccarty in #1863
  • feat(virtue) Add compact mode and update available vehicle logic by @mutilis in #1864
  • πŸ”§ refactor: Improve artifact buff formatting and readability by @mkmccarty in #1865
  • πŸ”§ fix: simplify artifact icons display logic and improve readability by @mkmccarty in #1866
  • πŸ”§ feat(contract): add HasPE flag for prophecy egg detection by @mkmccarty in #1867
  • πŸ†™ build(deps): Update Go module dependencies to latest versions by @mkmccarty in #1868
  • Feat Add /signups and season information helpers by @mutilis in #1869
  • fix(signups): Revert current-date-based drop time retrival logic. by @mutilis in #1870
  • πŸ”§ feat(utils): Add RefreshMap utility function for map copying by @mkmccarty in #1871
  • πŸ”§ refactor: Simplify contract drop time calculation logic by @mkmccarty in #1872
  • πŸ”§ feat(timestamp): Introduce TimestampNumber interface and enhance WrapTimestamp function by @mutilis in #1873
  • feat(signups): Improve signups display logic and add separator helper by @mutilis in #1874
  • feat(contract-report) Add go-runewidth for better emoji handling by @mutilis in #1875
  • 🐣 fix: Remove redundant offline eggs calculation in egg delivery by @mkmccarty in #1876
  • πŸ› fix: Adjust offline egg calculation by subtracting fuel rate by @mkmccarty in #1877
  • πŸš€ feat: Add minimum drops filter for hunt command by @mkmccarty in #1878
  • πŸ”₯ Remove development note from drop rates output by @mkmccarty in #1879
  • πŸ”§ chore(deps): update clipperhouse/uax29/v2 to v2.3.0 by @mkmccarty in #1880
  • πŸš€ feat: Add duration type abbreviations and Humility mission tracking by @mkmccarty in #1881
  • refactor(signups): Remove '@' from prediction formula attribution by @mutilis in #1882
  • πŸ”§ build(go): Bump Go version from 1.25.4 to 1.25.5 by @mkmccarty in #1883
  • πŸš€ Refactor mission processing with improved comments and logic by @mkmccarty in #1884
  • πŸ”§ Update Go version from 1.25.5 to 1.25.4 in CI workflows by @mkmccarty in #1885
  • πŸ”§ build: Downgrade Go version from 1.25.5 to 1.25.4 by @mkmccarty in #1886
  • πŸ”Ό build(go): Upgrade Go version from 1.25.4 to 1.25.5 by @mkmccarty in #1887
  • πŸ”§ Update Go version setup to check latest in CI workflow by @mkmccarty in #1888
  • πŸ”§ chore: Update GitHub Actions to use latest action refs by @mkmccarty in #1889
  • Potential fix for code scanning alert no. 31: Incorrect conversion between integer types by @mkmccarty in #1890
  • Potential fix for code scanning alert no. 30: Incorrect conversion between integer types by @mkmccarty in #1891
  • πŸ”§ chore: Update dependencies and import order by @mkmccarty in #1892
  • πŸ†™ build(deps): bump google.golang.org/genai from 1.36.0 to 1.37.0 by @mkmccarty in #1893
  • πŸ”§ fix(db): remove duplicate legacy farmer records and improve handling by @mkmccarty in #1894
  • πŸ”₯ refactor: remove unnecessary parent channel logging in contract signup by @mkmccarty in #1895
  • πŸ”§ fix(config): Adjust default minimum drops and remove debug prints by @mkmccarty in #1896
  • πŸ”§ refactor: use DefaultMinimumDrops constant for minimum drops value by @mkmccarty in #1897
  • fix(signups) remove ping by @mutilis in #1898
  • πŸ”‡ Remove debug print statement from mission processing loop by @mkmccarty in #1899
  • πŸ”§ refactor: remove unused mission end calculation and index by @mkmccarty in #1900
  • πŸ”§ refactor: replace map[string]interface{} with map[string]any by @mkmccarty in #1901
  • πŸ› Fix typo: Correct misspelled variable names in virtue.go by @mkmccarty in #1902
  • πŸ› Fix typos in comments and boost order description by @mkmccarty in #1903
  • πŸ› fix: correct typo in comment about theoretical teamwork threshold by @mkmccarty in #1904
  • πŸ”§ refactor(contract_report): Improve variable naming for parallel job handling by @mkmccarty in #1905
  • πŸ”§ refactor: Replace interface{} with any in type definitions by @mkmccarty in #1906
  • πŸ“ Add comments to clarify season and duration type constants by @mkmccarty in #1907
  • πŸ› fix: remove unnecessary variable declaration and add fallback team name generation by @mkmccarty in #1908
  • πŸ”§ fix(contract): improve team name generation and state reset logic by @mkmccarty in #1909
  • [WIP] Refactor team name generation logic for better handling of edge cases by @Copilot in #1911
  • πŸ”§ Refactor team name generation logic for better handling of edge cases by @mkmccarty in #1910
  • 🏷️ Remove prefix from team name generation by @mkmccarty in #1912
  • πŸš€ feat: Add save time tracking to prevent frequent contract saves by @mkmccarty in #1913
  • πŸš€ feat: Implement TE boost order with async EI data refresh by @mkmccarty in #1914
  • mm-branch-1 by @mkmccarty in #1916
  • πŸ†™ deps: Bump dependencies to latest versions by @mkmccarty in #1917
  • πŸ”§ refactor(ci): Restructure GitHub Actions workflow for improved clarity by @mkmccarty in #1918
  • πŸ”§ Update GitHub Actions workflow to use latest action versions by @mkmccarty in #1919
  • πŸ”§ build: Update GitHub Actions artifact upload to v4 by @mkmccarty in #1920

New Contributors

  • @mutilis made their first contribution in #1630
  • @Copilot made their first contribution in #1911

Full Changelog: v5.0...v5.1