claude docs

This commit is contained in:
Chris Lettieri 2026-01-12 09:03:32 -05:00
parent ca59ca6eb9
commit 535373f0cb
3 changed files with 155 additions and 17 deletions

View file

@ -121,18 +121,15 @@ Currently no automated tests. Manual testing through Obsidian's developer consol
- Enable verbose logging in development
### Publishing
1. Update version in `manifest.json` and `package.json`
2. Build production bundle: `npm run build`
3. Create release with `main.js`, `manifest.json`, and `styles.css`
See [docs/PUBLISHING.md](docs/PUBLISHING.md) for the complete release process.
**Quick summary:**
1. Update version in `manifest.json` and `package.json`
2. Commit and push to master
3. Tag with matching version: `git tag -a X.Y.Z -m "X.Y.Z" && git push origin X.Y.Z`
4. Generate release notes (Claude: compare commits since last tag, focus on user-facing changes)
5. Edit draft release on GitHub and publish
##### Obsidian tagging
1. Create a tag that matches the version in the `manifest.json` file.
```bash
git push # dont forget to push the code
git tag -a 1.0.1 -m "1.0.1"
git push origin 1.0.1
```
*** Be sure to update `manifest.json` version number as part of PR ***
## Important Considerations
@ -147,4 +144,4 @@ Currently no automated tests. Manual testing through Obsidian's developer consol
My local testing vault is in: /Users/chris/zk-for-testing
Add any notes to /Users/chris/Documents/DEV-TESTING/Test to capture edge cases when relevant.
Add any notes to /Users/chris/Documents/DEV-TESTING/Test to capture edge cases when relevant.

View file

@ -355,12 +355,9 @@ npm run build # Production build
npm run typecheck # TypeScript checking
```
### Publishing Checklist
### Publishing
1. Update version in `manifest.json` and `package.json`
2. Run `npm run build`
3. Create git tag: `git tag -a X.Y.Z -m "X.Y.Z"`
4. Push tag: `git push origin X.Y.Z`
See [PUBLISHING.md](PUBLISHING.md) for the complete release process.
---

144
docs/PUBLISHING.md Normal file
View file

@ -0,0 +1,144 @@
# Publishing a New Release
This guide walks through the complete process of publishing a new OpenAugi plugin release.
## Pre-Release Checklist
Before starting the release process:
- [ ] All features/fixes are merged to master
- [ ] Code builds without errors (`npm run build`)
- [ ] Type checking passes (`npm run typecheck`)
- [ ] Manual testing completed in test vault (`/Users/chris/zk-for-testing`)
- [ ] CODEBASE_MAP.md is up to date with any architectural changes
## Release Process
### Step 1: Bump the Version
Update the version number in **both** files (they must match):
1. `manifest.json` - Update the `"version"` field
2. `package.json` - Update the `"version"` field
Use semantic versioning:
- **MAJOR** (1.0.0): Breaking changes
- **MINOR** (0.1.0): New features, backwards compatible
- **PATCH** (0.0.1): Bug fixes, backwards compatible
### Step 2: Commit the Version Bump
```bash
git add manifest.json package.json
git commit -m "Bump version to X.Y.Z"
git push origin master
```
### Step 3: Create and Push the Git Tag
The tag **must** match the version in `manifest.json` exactly.
```bash
git tag -a X.Y.Z -m "X.Y.Z"
git push origin X.Y.Z
```
Notes:
- `-a` creates an [annotated tag](https://git-scm.com/book/en/v2/Git-Basics-Tagging#_creating_tags) (required for Obsidian releases)
- `-m` specifies the tag message - must match the version number
### Step 4: Wait for GitHub Actions
The workflow will automatically:
1. Build the plugin
2. Create a draft release with the built artifacts
Monitor progress at: https://github.com/bitsofchris/openaugi-obsidian-plugin/actions
### Step 5: Generate Release Notes
**Claude should generate release notes** by comparing the new tag to the previous release:
1. Look at all commits since the last release tag
2. Identify user-facing changes (features, fixes, improvements)
3. Create release notes in this format:
```markdown
## TL;DR
[One-sentence summary of the most important change(s)]
## What's New
### Features
- [Feature 1]: [Brief description of what it does and why users care]
- [Feature 2]: [Brief description]
### Bug Fixes
- [Fix 1]: [What was broken and how it's fixed]
### Improvements
- [Improvement 1]: [What's better now]
## How to Use
[For any new features, include brief usage instructions]
## Upgrade Notes
[Any breaking changes or things users need to know when upgrading]
```
### Step 6: Publish the Release
1. Go to https://github.com/bitsofchris/openaugi-obsidian-plugin/releases
2. Find the draft release created by the workflow
3. Click **Edit**
4. Paste the generated release notes
5. Click **Publish release**
### Step 7: Update Documentation
Ensure all docs reflect the new release:
- [ ] `docs/CODEBASE_MAP.md` - Architecture changes
- [ ] `CLAUDE.md` - Any new development guidelines
- [ ] `README.md` - User-facing documentation (if applicable)
## Quick Reference
```bash
# Full release flow (example for version 0.4.0)
npm run build
npm run typecheck
# Commit version bump
git add manifest.json package.json
git commit -m "Bump version to 0.4.0"
git push origin master
# Tag and push
git tag -a 0.4.0 -m "0.4.0"
git push origin 0.4.0
# Then: Edit draft release on GitHub and publish
```
## Troubleshooting
### Tag already exists
```bash
# Delete local tag
git tag -d X.Y.Z
# Delete remote tag (if pushed)
git push origin --delete X.Y.Z
```
### Wrong version tagged
1. Delete the incorrect tag (see above)
2. Fix the version in manifest.json/package.json
3. Commit and re-tag
### Workflow failed
1. Check the Actions tab for error details
2. Fix the issue
3. Delete the tag and re-push after fixing