feat: update workflow documentation and add release process steps
This commit is contained in:
86
.claude/commands/koniec-pracy.md
Normal file
86
.claude/commands/koniec-pracy.md
Normal file
@@ -0,0 +1,86 @@
|
||||
# shopPRO — Koniec Pracy (release workflow)
|
||||
|
||||
Execute the full release workflow for shopPRO. This is a sequential pipeline — each step depends on the previous one succeeding. Stop and report if any step fails.
|
||||
|
||||
## Step 1: Run tests
|
||||
|
||||
Run the full PHPUnit test suite:
|
||||
```bash
|
||||
php phpunit.phar
|
||||
```
|
||||
All tests must pass. If any test fails, stop here — do not proceed to commit. Report the failures and wait for instructions.
|
||||
|
||||
## Step 2: Determine version
|
||||
|
||||
Read the latest git tag to determine the current version number:
|
||||
```bash
|
||||
git tag --sort=-v:refname | head -1
|
||||
```
|
||||
The new version is the previous version incremented by 1 (e.g., v0.333 → v0.334). Use this version number throughout the remaining steps.
|
||||
|
||||
## Step 3: Update documentation
|
||||
|
||||
Update these docs files **only if** changes in this session affect them:
|
||||
|
||||
| File | When to update |
|
||||
|------|---------------|
|
||||
| `docs/CHANGELOG.md` | Always — add a new version entry at the top describing what changed |
|
||||
| `docs/TESTING.md` | If tests were added/removed — update test count and structure |
|
||||
| `CLAUDE.md` | If test count changed — update the "Current suite" line |
|
||||
| `docs/DATABASE_STRUCTURE.md` | If database schema changed |
|
||||
| `docs/PROJECT_STRUCTURE.md` | If architecture/files changed significantly |
|
||||
| `docs/FORM_EDIT_SYSTEM.md` | If form system was modified |
|
||||
|
||||
## Step 4: SQL migrations
|
||||
|
||||
If database schema changes were made, create a migration file at `migrations/{version}.sql` (e.g., `migrations/0.334.sql`). Do NOT put SQL files in `updates/` — the build script reads from `migrations/` automatically.
|
||||
|
||||
If no DB changes were made, skip this step.
|
||||
|
||||
## Step 5: Commit
|
||||
|
||||
Stage all relevant changed files (source code, templates, tests, docs, migrations) and commit with a descriptive message. Do NOT stage `.serena/`, `.env`, or credentials files.
|
||||
|
||||
Use this commit message format:
|
||||
```
|
||||
feat/fix/refactor: concise description of what changed
|
||||
|
||||
Longer explanation if needed.
|
||||
|
||||
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
||||
```
|
||||
|
||||
## Step 6: Push
|
||||
|
||||
```bash
|
||||
git push
|
||||
```
|
||||
|
||||
## Step 7: Build update package
|
||||
|
||||
Tag the new version and run the build script:
|
||||
```bash
|
||||
git tag v0.{VERSION}
|
||||
powershell.exe -ExecutionPolicy Bypass -File build-update.ps1 -FromTag v0.{PREV_VERSION} -ToTag v0.{VERSION} -ChangelogEntry "{changelog_description}"
|
||||
```
|
||||
The `{changelog_description}` should be a short Polish description of the changes (matching the CHANGELOG entry).
|
||||
|
||||
## Step 8: Commit and push the package
|
||||
|
||||
Stage the generated update files and commit:
|
||||
```bash
|
||||
git add updates/0.30/ver_0.{VERSION}.zip updates/0.30/ver_0.{VERSION}_manifest.json updates/versions.php updates/changelog-data.html
|
||||
git commit -m "build: ver_0.{VERSION} - {short_description}"
|
||||
git push
|
||||
git push origin v0.{VERSION}
|
||||
```
|
||||
|
||||
## Step 9: Report summary
|
||||
|
||||
Print a summary:
|
||||
- Version number
|
||||
- Test results (count, assertions)
|
||||
- Files changed
|
||||
- Commit hashes
|
||||
- Update package path
|
||||
- Tag name
|
||||
@@ -127,3 +127,8 @@ language_backend:
|
||||
# list of regex patterns which, when matched, mark a memory entry as read‑only.
|
||||
# Extends the list from the global configuration, merging the two lists.
|
||||
read_only_memory_patterns: []
|
||||
|
||||
# line ending convention to use when writing source files.
|
||||
# Possible values: unset (use global setting), "lf", "crlf", or "native" (platform default)
|
||||
# This does not affect Serena's own files (e.g. memories and configuration files), which always use native line endings.
|
||||
line_ending:
|
||||
|
||||
13
AGENTS.md
13
AGENTS.md
@@ -217,18 +217,11 @@ $controller = new \admin\Controllers\ExampleController($repo);
|
||||
- AAA pattern: Arrange, Act, Assert
|
||||
- Tests mirror source structure: `tests/Unit/Domain/{Module}/{Class}Test.php`
|
||||
|
||||
## Workflow (AGENTS.md)
|
||||
## Workflow
|
||||
|
||||
When user says **"KONIEC PRACY"**, execute in order:
|
||||
1. Run tests
|
||||
2. Update documentation if needed: `docs/DATABASE_STRUCTURE.md`, `docs/PROJECT_STRUCTURE.md`, `docs/FORM_EDIT_SYSTEM.md`, `docs/CHANGELOG.md`, `docs/TESTING.md`
|
||||
3. SQL migrations (if DB changes): place in `migrations/{version}.sql` (e.g. `migrations/0.304.sql`). **NOT** in `updates/` — build script reads from `migrations/` automatically
|
||||
4. Commit
|
||||
5. Push
|
||||
6. Build update package: `git tag v0.XXX && powershell.exe -ExecutionPolicy Bypass -File build-update.ps1 -FromTag v0.PREV -ToTag v0.XXX -ChangelogEntry "opis"` — skrypt automatycznie aktualizuje `versions.php`
|
||||
7. Commit i push plików paczki (`updates/0.30/ver_0.XXX.zip`, `ver_0.XXX_manifest.json`, `updates/versions.php`, `updates/changelog-data.html`)
|
||||
When user says **"KONIEC PRACY"**, run `/koniec-pracy` (see `.claude/commands/koniec-pracy.md`).
|
||||
|
||||
Before starting implementation, review current state of docs (see AGENTS.md for full list).
|
||||
Before starting implementation, review current state of docs.
|
||||
|
||||
## Key Documentation
|
||||
- `docs/MEMORY.md` — project memory: known issues, confirmed patterns, ORM pitfalls, caching conventions
|
||||
|
||||
13
CLAUDE.md
13
CLAUDE.md
@@ -217,18 +217,11 @@ $controller = new \admin\Controllers\ExampleController($repo);
|
||||
- AAA pattern: Arrange, Act, Assert
|
||||
- Tests mirror source structure: `tests/Unit/Domain/{Module}/{Class}Test.php`
|
||||
|
||||
## Workflow (AGENTS.md)
|
||||
## Workflow
|
||||
|
||||
When user says **"KONIEC PRACY"**, execute in order:
|
||||
1. Run tests
|
||||
2. Update documentation if needed: `docs/DATABASE_STRUCTURE.md`, `docs/PROJECT_STRUCTURE.md`, `docs/FORM_EDIT_SYSTEM.md`, `docs/CHANGELOG.md`, `docs/TESTING.md`
|
||||
3. SQL migrations (if DB changes): place in `migrations/{version}.sql` (e.g. `migrations/0.304.sql`). **NOT** in `updates/` — build script reads from `migrations/` automatically
|
||||
4. Commit
|
||||
5. Push
|
||||
6. Build update package: `git tag v0.XXX && powershell.exe -ExecutionPolicy Bypass -File build-update.ps1 -FromTag v0.PREV -ToTag v0.XXX -ChangelogEntry "opis"` — skrypt automatycznie aktualizuje `versions.php`
|
||||
7. Commit i push plików paczki (`updates/0.30/ver_0.XXX.zip`, `ver_0.XXX_manifest.json`, `updates/versions.php`, `updates/changelog-data.html`)
|
||||
When user says **"KONIEC PRACY"**, run `/koniec-pracy` (see `.claude/commands/koniec-pracy.md`).
|
||||
|
||||
Before starting implementation, review current state of docs (see AGENTS.md for full list).
|
||||
Before starting implementation, review current state of docs.
|
||||
|
||||
## Key Documentation
|
||||
- `docs/MEMORY.md` — project memory: known issues, confirmed patterns, ORM pitfalls, caching conventions
|
||||
|
||||
@@ -4,4 +4,5 @@ naprawić działanie newslettera i zapis do bazy newslettera
|
||||
program lojalnościowy
|
||||
proponowane produkty w koszyku
|
||||
Do zamówień w statusie: realizowane lub oczekuje na wpłatę. Opcja tylko dla zarejestrowanych klientów. https://royal-stone.pl/pl/order1.html
|
||||
Dodać możliwość ustawienia limitu znaków w wiadomościach do produktu
|
||||
Dodać możliwość ustawienia limitu znaków w wiadomościach do produktu
|
||||
8. [] Przerobić analitykę Google Analytics i Google ADS
|
||||
@@ -82,7 +82,7 @@
|
||||
<? endforeach;?>
|
||||
<div class="hr"></div>
|
||||
<div class="basket-summary">
|
||||
Wartość koszyka: 1
|
||||
Wartość koszyka:
|
||||
<span>
|
||||
<?= \Shared\Helpers\Helpers::decimal( $summary );?> zł
|
||||
</span>
|
||||
|
||||
Reference in New Issue
Block a user