Skip to content

docs: fix outdated content in deployment and actuator tutorial docs#6662

Open
Little-Peony wants to merge 5 commits intotronprotocol:developfrom
Little-Peony:clean_docs
Open

docs: fix outdated content in deployment and actuator tutorial docs#6662
Little-Peony wants to merge 5 commits intotronprotocol:developfrom
Little-Peony:clean_docs

Conversation

@Little-Peony
Copy link
Copy Markdown

Summary

Documentation cleanup across all six doc files under docs/. Changes are purely documentation — no production code modified.

implement-a-customized-actuator (EN + ZH)

  • SumContract field number: changed 5260; field 52 is already taken by MarketSellAssetContract
  • Missing proto import: add import "core/contract/math_contract.proto" to api.proto — without it the proto compiler cannot resolve SumContract in the InvokeSum RPC definition
  • Missing static import: add import static org.tron.core.config.Parameter.ChainConstant.TRANSFER_FEE; this constant is not inherited from AbstractActuator
  • Test lifecycle: @Before/@After@BeforeClass/@AfterClass; the Spring context was rebuilt for every single test method
  • Args initialization order: Args.setParam() must be called before Args.getInstance(); the original code passed a stale unconfigured instance to initServices()
  • Hardcoded "output-directory": replaced with @ClassRule TemporaryFolder
  • Non-existent API: addService(), initServices(), startServices(), shutdownServices() do not exist on Application; replaced with startup() / shutdown()
  • Auto-registration note: TransactionRegister.registerActuator() uses Reflections to scan org.tron.core.actuator at startup and auto-registers all AbstractActuator subclasses — no manual registration needed as long as the class is in that package
  • Pinned protoc version: removed protoc v3.4.0 note; readers should use the version in build.gradle
  • Add @Rule Timeout: guard against hanging tests

modular-deployment (EN + ZH)

  • Stale deprecation note: java -jar FullNode.jar is still a fully supported launch method (shown in README); removed the "will be deprecated" claim
  • Windows references removed: README line 39 states Windows is not supported; removed *.bat startup instructions and added a platform note (Linux / macOS only)
  • CMS GC flags: -XX:+UseConcMarkSweepGC, -XX:+CMSParallelRemarkEnabled, -XX:+CMSScavengeBeforeRemark were removed in JDK 14; using them causes JVM startup failure on JDK 17 (required for ARM64). Replaced with JDK 8/17-compatible options

modular-introduction (EN + ZH)

  • Updated module count from six to eight; added crypto and plugins module descriptions

Test plan

  • Verify all six docs render correctly in Markdown
  • Confirm SumContract = 60 does not conflict with any existing ContractType value in Tron.proto
  • Confirm proto compiler accepts the updated api.proto with the new import
  • Confirm JVM starts without errors using the updated vmoptions example on JDK 8 and JDK 17

🤖 Generated with Claude Code

Little-Peony and others added 5 commits April 9, 2026 10:29
implement-a-customized-actuator (EN+ZH):
- Fix test lifecycle: @Before/@after → @BeforeClass/@afterclass so the
  Spring context is created only once per test class, not per test method
- Fix Args initialization order: Args.setParam() must be called before
  Args.getInstance() to avoid passing a stale unconfigured instance to
  appTest.initServices()
- Replace hardcoded dbPath with @ClassRule TemporaryFolder to keep
  test directories isolated and auto-cleaned
- Add @rule Timeout to guard against hangs
- Remove the specific protoc v3.4.0 version note; point readers to the
  version declared in build.gradle instead

modular-deployment (EN+ZH):
- Replace CMS GC flags (-XX:+UseConcMarkSweepGC, -XX:+CMSParallelRemarkEnabled,
  -XX:+CMSScavengeBeforeRemark) that were removed in JDK 14 and would
  cause startup failures on JDK 17 (required for ARM64)
- Add -Xms/-Xmx to the example and note JDK 8/17 compatibility

modular-introduction (EN+ZH):
- Update module count from six to eight
- Add descriptions for the crypto and plugins modules

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
implement-a-customized-actuator (EN+ZH):
- SumContract field number: 52 is already taken by MarketSellAssetContract;
  change to 60 (next available number after CancelAllUnfreezeV2Contract=59)
- SumActuator: add missing static import for TRANSFER_FEE from
  Parameter.ChainConstant (not inherited from AbstractActuator)
- SumActuatorTest: Application does not have addService()/initServices()/
  startServices()/shutdownServices(); replace with startup()/shutdown()
  which are the actual API methods

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
implement-a-customized-actuator (EN+ZH):
- Add the missing 'import "core/contract/math_contract.proto"' step in
  api.proto; without it the proto compiler cannot resolve SumContract in
  the InvokeSum RPC definition (compile failure)
- Add a note explaining that SumActuator must live in org.tron.core.actuator:
  TransactionRegister.registerActuator() uses Reflections to scan that
  package at startup and auto-registers every AbstractActuator subclass
  via the super() constructor call into TransactionFactory

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…t guide

modular-deployment (EN+ZH):
- Remove 'will be deprecated' note for java -jar FullNode.jar: README
  shows it as a fully supported launch method alongside the script
- Add explicit platform note: Linux and macOS only, Windows not supported
- Remove '*.bat on Windows' startup instruction: Windows is not supported
  per README line 39

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants