Skip to content

Conversation

@xgopilot
Copy link
Contributor

@xgopilot xgopilot bot commented Oct 29, 2025

Requested by @luoliwoshang

Summary

This PR adds documentation for the TinyGo sync strategy to the docs folder as requested in issue #9.

Changes

  • Created docs/ directory
  • Added docs/tinygo-sync-strategy.md documenting:
    • Goals for branch structure
    • Branch responsibilities (machine, device, main)
    • Workflow for daily development and upstream sync
    • Practical use cases with step-by-step processes

Closes #9

@xgopilot xgopilot bot mentioned this pull request Oct 29, 2025
@luoliwoshang
Copy link
Member

@xgopilot update the CLAUDE.md to link this [docs/tinygo-sync-strategy.md]

@xgopilot
Copy link
Contributor Author

xgopilot bot commented Oct 29, 2025

✅ Task Complete

Created CLAUDE.md file with a link to the TinyGo sync strategy documentation at docs/tinygo-sync-strategy.md.

Changes made:

  • Created /CLAUDE.md with documentation reference section
  • Committed and pushed to PR branch

The CLAUDE.md file now contains a Documentation section that links to the TinyGo sync strategy guide.

@luoliwoshang
Copy link
Member

@xushiwei

@luoliwoshang
Copy link
Member

@xgopilot tinygo not directly store src/device & src/machine at repo , so we copy the src/device & src/machine from release package like tinygo0.39.0.linux-amd64.tar.gz

@xgopilot
Copy link
Contributor Author

xgopilot bot commented Oct 29, 2025

✅ Task Complete

Updated the TinyGo sync strategy documentation to clarify that src/device and src/machine modules are copied from TinyGo release packages (like tinygo0.39.0.linux-amd64.tar.gz) rather than directly from the repository.

Changes made:

  • Added notes to both machine and device branch sections explaining the release package source
  • Updated "Update Source" to link to TinyGo releases page
  • Committed and pushed to the PR branch (docs/tinygo-sync-strategy.md:14-15, docs/tinygo-sync-strategy.md:21-22)

Updated documentation to specify that src/device and src/machine
are copied from TinyGo release packages rather than directly from
the repository, as these modules are not stored in TinyGo's repo.

Generated with [codeagent](https://github.com/qbox/codeagent)
Co-authored-by: luoliwoshang <[email protected]>
Comment on lines 12 to 24
### `machine` Branch
- **Responsibility**: Pure mirror of TinyGo's official `src/machine` module
- **Update Source**: TinyGo release packages (e.g., [tinygo0.39.0.linux-amd64.tar.gz](https://github.com/tinygo-org/tinygo/releases))
- **Note**: TinyGo does not directly store `src/machine` in their repository. Copy this module from official release packages.
- **Rules**: Sync only, no custom modifications
- **Commit Tag**: `[SYNC] Update machine to TinyGo <version>`

### `device` Branch
- **Responsibility**: Pure mirror of TinyGo's official `src/device` module
- **Update Source**: TinyGo release packages (e.g., [tinygo0.39.0.linux-amd64.tar.gz](https://github.com/tinygo-org/tinygo/releases))
- **Note**: TinyGo does not directly store `src/device` in their repository. Copy this module from official release packages.
- **Rules**: Sync only, no custom modifications
- **Commit Tag**: `[SYNC] Update device to TinyGo <version>`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@xgopilot some redundant at machine Branch & device Branch

Copy link
Contributor Author

@xgopilot xgopilot bot Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Task Complete

Eliminated redundancy by consolidating the machine and device branch sections into a single combined section since they share identical properties (update source, rules, and commit tag structure).

Changes made:

  • Merged separate machine and device sections into one "machine and device Branches" section
  • Reduced from 14 lines to 9 lines while maintaining all essential information
  • Committed and pushed to the PR branch (docs/tinygo-sync-strategy.md:12-19)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@xgopilot note the src/device and src/machine in each platform of the release package are identical, so one of them was selected.

Combined the machine and device branch sections to eliminate
redundancy, as both branches share identical update source,
rules, and structure.

Generated with [codeagent](https://github.com/qbox/codeagent)
Co-authored-by: luoliwoshang <[email protected]>
@luoliwoshang
Copy link
Member

@xgopilot note the src/device and src/machine in each platform of the release package are identical, so one of them was selected to copy

@xgopilot
Copy link
Contributor Author

xgopilot bot commented Oct 29, 2025

✅ Task Complete

Updated the TinyGo sync strategy documentation to clarify that src/device and src/machine directories are identical across all platform release packages.

Changes made:

  • Added platform note to docs/tinygo-sync-strategy.md:18 explaining that only one platform's package needs to be downloaded
  • Committed and pushed to PR branch

This clarification will help developers understand they don't need to download multiple platform packages when syncing TinyGo modules.

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.

Strategy for TinyGo Sync

4 participants