Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
107 commits
Select commit Hold shift + click to select a range
02cebf7
fix typo in release workflow
claytercek Oct 10, 2025
be671e6
tweak release url in scaffold docs
claytercek Oct 10, 2025
27169e9
only deploy docs if there are no pending changesets
claytercek Oct 17, 2025
db9c841
fix docs edit link path
claytercek Oct 17, 2025
d98d5ac
update scaffold docs
claytercek Oct 17, 2025
21c6242
feat: create initial controller package, add core logic for commands/…
claytercek Oct 17, 2025
5cfa1b6
implement controller interfaces in content and monitor
claytercek Oct 17, 2025
4bdfe75
Execute monitor/content CLI commands with controller
claytercek Oct 17, 2025
7e64aec
write tests for controller, add controller to launchpad main pkg
claytercek Oct 17, 2025
fa02dbf
remove Promise<AsyncResult> types
claytercek Oct 17, 2025
39b9045
add testing to CLI
claytercek Oct 17, 2025
a9a2c10
add changeset for controller phase 1
claytercek Oct 17, 2025
f585293
update deps with vulnerabilities
claytercek Oct 17, 2025
bb2006c
fix changeset patch for updated dep
claytercek Oct 17, 2025
8aaf45f
add missing event emissions to content and monitor
claytercek Oct 17, 2025
e46232c
add tests for monitor and content events
claytercek Oct 17, 2025
e261612
fix lint warnings
claytercek Oct 17, 2025
39f6b7d
document events and controller
claytercek Oct 17, 2025
479a9c4
add IPC transport to controller
claytercek Oct 20, 2025
c009c17
add execute-command message to ipc-transport
claytercek Oct 20, 2025
4a86387
use ResultAsync for ipc client instead of Promise<Result>
claytercek Oct 20, 2025
4a9c79a
add PID file management to controller
claytercek Oct 20, 2025
dc0fd75
integrate persistent controller into CLI
claytercek Oct 20, 2025
149784d
fix persistent mode ignoring ctrl+c
claytercek Oct 20, 2025
2d334a7
fix content throwing errors on subsequent runs with same controller
claytercek Oct 20, 2025
200c4d6
remove unecessary blocking promise
claytercek Oct 20, 2025
4253ebe
fix stop command
claytercek Oct 20, 2025
05d81c0
add tests for persistent controller
claytercek Oct 21, 2025
38e7c37
fix lint warnings
claytercek Oct 21, 2025
0ba4bdd
add --detach flag to start cli
claytercek Oct 21, 2025
7f6c6ce
use chalk in status cli
claytercek Oct 21, 2025
20cc17c
better error types in cli/controller
claytercek Oct 21, 2025
e254db8
add changesets for controller phase 2
claytercek Oct 21, 2025
998b349
only allow one concurrent content command
claytercek Oct 21, 2025
559cc0e
add docs for persistent controller
claytercek Oct 21, 2025
07ef9a9
update contributing.md
claytercek Oct 21, 2025
81105b0
fix start fork not working correctly
claytercek Oct 21, 2025
26f2e49
pipe stdout and stderr from detached process to parent until ready me…
claytercek Oct 21, 2025
d295f96
remove duplicate docs in controller pkg
claytercek Oct 22, 2025
5c49c84
use superjson for IPC serialization
claytercek Oct 22, 2025
6192255
wrap IPC serialization
claytercek Oct 22, 2025
6831c29
swap superjson for devalue
claytercek Oct 22, 2025
7c6e173
fix typos in status cli
claytercek Oct 22, 2025
bb327f7
add event emission to IPC client
claytercek Oct 22, 2025
5a3ab73
stricter types for subsystem state, more verbose monitor state
claytercek Oct 24, 2025
06df359
add more verbose content state
claytercek Oct 24, 2025
00271e4
fix(monitor): remove invalid pm_id accessors
claytercek Oct 27, 2025
747dce1
refactor(content): extract content fetch pipeline into stages
claytercek Oct 27, 2025
376ee60
refactor: move declaration merging to utils package instead of contro…
claytercek Oct 28, 2025
634fa94
refactor: move LaunchpadConfig type definition from cli package to ut…
claytercek Oct 28, 2025
d4db049
refactor(content,monitor): add immer-based state managers
claytercek Oct 28, 2025
96d6ee4
test(utils): add tests for state patcher
claytercek Oct 28, 2025
4143deb
feat(controller): add state sync across IPC transport
claytercek Oct 28, 2025
4f7cee6
feat(cli): add watch flag to status command
claytercek Oct 28, 2025
cf88b09
fix(content): revert to idle phase after successful content fetch
claytercek Oct 28, 2025
3495b26
chore: add changeset
claytercek Oct 28, 2025
707902d
chore: fix lint errors
claytercek Oct 28, 2025
6eeb834
fix: mismatched ansi-escapes versions in utils vs cli
claytercek Oct 28, 2025
6db5975
fix(monitor,content): fix failing tests
claytercek Oct 28, 2025
a3c57a0
fix(controller): replace console.error with actual error
claytercek Oct 28, 2025
b27f4b6
fix(content): remove improper use of resultasync
claytercek Oct 28, 2025
eae1791
fix(controller): fix lint error
claytercek Oct 28, 2025
b7e6059
chore: fix formatting of changeset
claytercek Oct 28, 2025
82cb1b3
chore: tweak changeset versions
claytercek Oct 28, 2025
34bc601
fix(controller): fix windows named pipe path
claytercek Oct 31, 2025
460275a
test(controller): fix tests for ipc path correction on windows
claytercek Oct 31, 2025
dc13193
chore(controller): fix lint errors
claytercek Oct 31, 2025
7d2455d
chore: update changesets changelog-github version
claytercek Nov 4, 2025
06c3fb0
chore: enable noBarrelFile rule
claytercek Oct 31, 2025
f510d1a
refactor(utils): remove barrel files from utils pkg
claytercek Oct 31, 2025
ba33c2e
refactor(content): remove content pkg barrel files
claytercek Oct 31, 2025
b767f7f
refactor(monitor): remove monitor pkg barrel files
claytercek Oct 31, 2025
08fb455
refactor(controller): remove controller pkg barrel files
claytercek Oct 31, 2025
33e4b5d
refactor(cli): remove cli pkg barrel files
claytercek Oct 31, 2025
b2f0a23
refactor(launchpad): add re-export generation to launchpad package
claytercek Nov 3, 2025
a1b44c4
docs: update docs to use new import paths
claytercek Nov 3, 2025
29c2ccb
chore: add changeset for barrel file removal
claytercek Nov 3, 2025
04edac4
re-add barrel files for common imports
claytercek Nov 7, 2025
fb70176
refactor: move file logging to controller, term logging to CLI
claytercek Nov 12, 2025
ad3b499
feature(cli): add new CLI logging utils
claytercek Nov 14, 2025
a857c64
feat(cli): better log forwarding when starting detached process
claytercek Nov 15, 2025
87d5384
feat(cli): add verbosity / -v option
claytercek Nov 15, 2025
6980d16
refactor: swap usage of logger debug and verbose methods
claytercek Nov 15, 2025
75cc113
feat(cli): add fixed logging to CLI logger
claytercek Nov 15, 2025
ad3bc4c
chore(cli): code cleanup and logging tweaks
claytercek Nov 15, 2025
23a4a4f
fix(monitor): only log window warning if the window should be managed
claytercek Nov 15, 2025
88516f9
fix(cli): more consistent error logging on fatal error
claytercek Nov 16, 2025
6adece5
fix(cli): simplify config file search
claytercek Nov 16, 2025
e192095
refactor(utils,controller): move eventbus to utils
claytercek Nov 21, 2025
3f05cd4
test(monitor): fix sort window test
claytercek Nov 21, 2025
bca691a
refactor(monitor): move restart logic out of command handler
claytercek Nov 21, 2025
6f636b6
refactor(content): refactor content to be simpler functions instead o…
claytercek Nov 26, 2025
a6f1086
refactor(monitor): refactor monitor to be simpler functions instead o…
claytercek Nov 26, 2025
12b2cb9
refactor(cli/controller): update to use new subsystem interface
claytercek Nov 26, 2025
3ab9ff7
chore: fix lint errors
claytercek Nov 26, 2025
58a14dc
fix: convert generate script to js for node 18 compatibility
claytercek Nov 26, 2025
c0bb7c2
docs: update all documentation
claytercek Nov 26, 2025
3dde5e1
fix(launchpad): generate script dirname for node 18 compatibility
claytercek Nov 26, 2025
9f47258
fix: update deps with vulnerabilities
claytercek Dec 1, 2025
013c81f
fix: update pm2, resolving ENOENT bug
claytercek Dec 1, 2025
ed470d1
fix(utils): plugin driver inherits main abort signal
claytercek Dec 3, 2025
74fc748
feat(controller/utils): unify subsystem and transport API
claytercek Dec 3, 2025
2bbb15c
fix(content): fix orphaned promises in data-store
claytercek Dec 3, 2025
29defaa
fix(cli/utils): replace onExit with simpler onTerminate
claytercek Dec 4, 2025
82dae70
fix(monitor): fix shutdown not working properly
claytercek Dec 4, 2025
cc9a177
chore: fix lint issues
claytercek Dec 4, 2025
cb218de
Version Packages
github-actions[bot] Dec 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ on:
pull_request:
push:
branches:
- main
- develop
paths:
- "packages/**"
Expand Down
22 changes: 21 additions & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ name: Deploy Docs site to Pages
on:
push:
branches:
- main
- develop
paths:
- "docs/**"
- ".changeset/**"
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

Expand All @@ -22,8 +22,28 @@ concurrency:
cancel-in-progress: false

jobs:
# Check if there are pending changesets
check-changesets:
runs-on: ubuntu-latest
outputs:
has-changesets: ${{ steps.check.outputs.has-changesets }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check for pending changesets
id: check
run: |
if [ -n "$(find .changeset -name '*.md' -not -name 'README.md' -not -name 'config.json')" ]; then
echo "has-changesets=true" >> $GITHUB_OUTPUT
else
echo "has-changesets=false" >> $GITHUB_OUTPUT
fi

# Build job
build:
needs: check-changesets
# Only build if triggered manually, called by another workflow, or if there are no pending changesets
if: github.event_name == 'workflow_dispatch' || needs.check-changesets.outputs.has-changesets == 'false'
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,10 @@ jobs:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

- name: Add scaffold zip to release
if: steps.changesets.outputs.published == 'true' && contains(steps.changesets.outputs.publishedPackages, '@@bluecadet/launchpad-scaffold')
if: steps.changesets.outputs.published == 'true'
run: |
# Extract the version of scaffold from publishedPackages
SCAFFOLD_VERSION=$(echo '${{ steps.changesets.outputs.publishedPackages }}' | jq -r '.[] | select(.name == "@bluecadet/launchpad-scaffold") | .version')
# Extract the version of @bluecadet/launchpad from publishedPackages (always published)
LAUNCHPAD_VERSION=$(echo '${{ steps.changesets.outputs.publishedPackages }}' | jq -r '.[] | select(.name == "@bluecadet/launchpad") | .version')

# Create zip file with specific files and directories
cd packages/scaffold
Expand All @@ -63,13 +63,13 @@ jobs:
config/
cd ../..

# Upload the zip to the @bluecadet/launchpad-scaffold release
gh release upload "@bluecadet/launchpad-scaffold@${SCAFFOLD_VERSION}" "launchpad-scaffold-standalone.zip"
# Upload the zip to the @bluecadet/launchpad release
gh release upload "@bluecadet/launchpad@${LAUNCHPAD_VERSION}" "launchpad-scaffold-standalone.zip"

# Also upload to @bluecadet/launchpad release if it was published
if echo '${{ steps.changesets.outputs.publishedPackages }}' | jq -e '.[] | select(.name == "@bluecadet/launchpad")' > /dev/null; then
LAUNCHPAD_VERSION=$(echo '${{ steps.changesets.outputs.publishedPackages }}' | jq -r '.[] | select(.name == "@bluecadet/launchpad") | .version')
gh release upload "@bluecadet/launchpad@${LAUNCHPAD_VERSION}" "launchpad-scaffold-standalone.zip"
# Also upload to @bluecadet/launchpad-scaffold release if it was published
if echo '${{ steps.changesets.outputs.publishedPackages }}' | jq -e '.[] | select(.name == "@bluecadet/launchpad-scaffold")' > /dev/null; then
SCAFFOLD_VERSION=$(echo '${{ steps.changesets.outputs.publishedPackages }}' | jq -r '.[] | select(.name == "@bluecadet/launchpad-scaffold") | .version')
gh release upload "@bluecadet/launchpad-scaffold@${SCAFFOLD_VERSION}" "launchpad-scaffold-standalone.zip"
fi
env:
GITHUB_TOKEN: ${{ secrets.BC_GITHUB_TOKEN }}
Loading