Skip to content
Open
Show file tree
Hide file tree
Changes from 76 commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
25e034e
feat(apps): add +app-dev-init-app shortcut
Allen-D2026 Aug 27, 2026
0bb08e7
refactor(apps): extract parsePreReleaseKVs helper
Allen-D2026 Aug 27, 2026
d52cdaf
feat(apps): add +app-dev-publish shortcut
Allen-D2026 Aug 27, 2026
45897b1
feat(apps): register app-dev shortcuts
Allen-D2026 Aug 27, 2026
6d29225
docs(apps): add app-dev shortcut skill references
Allen-D2026 Aug 27, 2026
8f91de8
chore(apps): exempt presigned TOS upload from raw-http lint
Allen-D2026 Aug 27, 2026
9875a9e
fix(apps): gate dry-run on sensitive files and fix misleading error copy
Allen-D2026 Aug 27, 2026
eb7f0da
refactor(apps): rename +app-dev-init-app to +app-dev-init-template
Allen-D2026 Aug 27, 2026
8cd9006
feat(apps): render init-template natively from npm registry
Allen-D2026 Aug 27, 2026
b5ad05a
feat(apps): fall back to the official npm registry and harden extract…
Allen-D2026 Aug 27, 2026
474aeae
docs(apps): note registry fallback in init-template reference
Allen-D2026 Aug 27, 2026
4fda360
feat(apps): support explicit --template for init-template
Allen-D2026 Aug 27, 2026
89ed8f6
feat(apps): add optional --app-id to publish and drop archType
Allen-D2026 Aug 27, 2026
9eed68b
feat(apps): adopt miaoda.json artifact-hosting protocol
Allen-D2026 Aug 27, 2026
92e2566
feat(apps): enforce protocol output layout and routes.json schema
Allen-D2026 Aug 27, 2026
95c0035
docs(apps): align references with miaoda.json protocol
Allen-D2026 Aug 27, 2026
ba9239d
feat(apps): scaffold in place by default for init-template
Allen-D2026 Aug 27, 2026
92d8235
fix(apps): resolve in-place project name without filepath.Abs
Allen-D2026 Aug 27, 2026
c90c5ba
fix(apps): emit raw JSON so next_steps keep literal characters
Allen-D2026 Aug 27, 2026
a8eabdf
feat(apps): adopt the artifact-hosting pre_release contract
Allen-D2026 Aug 27, 2026
af7afe3
feat(apps): ignore non-protocol build artifacts instead of rejecting
Allen-D2026 Aug 27, 2026
c801508
docs(apps): note non-protocol artifacts are skipped on publish
Allen-D2026 Aug 27, 2026
99957ad
fix(apps): validate routes.json as a route enumeration array
Allen-D2026 Aug 27, 2026
032ffde
feat(apps): rename pre_release upload key to artifact_url
Allen-D2026 Aug 27, 2026
ef067f5
feat(apps): support pinning template version for init-template
Allen-D2026 Aug 27, 2026
0e97aa1
feat(apps): align +app-dev-publish with the hosting protocol
Allen-D2026 Aug 27, 2026
2e43d32
feat(apps): add --registry escape hatch and html type to +app-dev-ini…
Allen-D2026 Aug 27, 2026
f5fa9e0
feat(apps): wait briefly for async releases in +app-dev-publish
Allen-D2026 Aug 27, 2026
84fa851
fix(apps): satisfy nilerr/forbidigo in release await path
Allen-D2026 Aug 27, 2026
6c421fd
refactor(apps): rename +app-dev-init-template/+app-dev-publish to +in…
Allen-D2026 Aug 27, 2026
1929edc
feat(apps): rename the project declaration file to spark.json
Allen-D2026 Aug 27, 2026
24850a9
fix(apps): recover online_url when a release reports finished without it
Allen-D2026 Aug 28, 2026
0200690
feat(apps): return immediately after release acceptance in +deploy
Allen-D2026 Aug 28, 2026
b275d0e
refactor(apps): align local-dev helper filenames with the apps_ conve…
Allen-D2026 Aug 28, 2026
d7a97c0
feat(apps): sync app.url into spark.json when +release-get observes a…
Allen-D2026 Aug 28, 2026
42544f3
feat(apps): rename the spark.json state field app.url to app.online_url
Allen-D2026 Aug 28, 2026
9903285
feat(apps): enforce declaration MUSTs at the +deploy hosting entry
Allen-D2026 Aug 29, 2026
a818db5
polish(apps): clarify stack charset error; pin the declaration gate o…
Allen-D2026 Aug 29, 2026
68d0099
feat(apps): enforce the local self-description endpoint at deploy time
Allen-D2026 Aug 29, 2026
1d9fa88
feat(apps): relax +deploy gates; add --no-verify
Allen-D2026 Aug 29, 2026
f14137b
feat(apps): --no-verify also waives the dev.port declaration requirement
Allen-D2026 Aug 29, 2026
102ffc5
fix(apps): compare the endpoint identity against the resolved deploy …
Allen-D2026 Aug 29, 2026
3ac01a9
docs(apps): align the identity-check wording with the resolved-target…
Allen-D2026 Aug 29, 2026
e53240d
fix(apps): probe the self-description endpoint via localhost for dual…
Allen-D2026 Aug 29, 2026
b1146d3
polish(apps): keep routes.json guidance self-contained in comments an…
Allen-D2026 Aug 31, 2026
93ce9b4
polish(apps): tidy protocol references in comments and hints
Allen-D2026 Aug 31, 2026
700b118
polish(apps): drop a stray section reference from a test comment
Allen-D2026 Aug 31, 2026
1a876bb
test(apps): cover error paths and swap test hostnames to RFC 2606 names
Allen-D2026 Aug 31, 2026
f4d41bb
fix(apps): route the new local-dev commands in SKILL.md; polish deplo…
Allen-D2026 Aug 31, 2026
48af737
docs(apps): withdraw the local-dev routing row from the domain skill
Allen-D2026 Aug 31, 2026
bacd725
fix(apps): address review comments on the local-dev chain
Allen-D2026 Aug 31, 2026
0579e7a
feat(apps): add the content fingerprint for bare HTML publishing
Allen-D2026 Sep 9, 2026
85fd697
fix(apps): return typed errors from the content fingerprint
Allen-D2026 Sep 9, 2026
570fce2
feat(apps): collect bare HTML publish payloads with path guards
Allen-D2026 Sep 9, 2026
74b9f6a
fix(apps): canonicalize the idempotency key through symlinks
Allen-D2026 Sep 9, 2026
2d5ace1
feat(apps): guard bare HTML payloads on credentials and size
Allen-D2026 Sep 9, 2026
f397614
fix(apps): match credential file names case-insensitively
Allen-D2026 Sep 9, 2026
677d75e
feat(apps): resolve the publish entry and derive the app name
Allen-D2026 Sep 9, 2026
2f67a7f
feat(apps): build the bare HTML zip manifest
Allen-D2026 Sep 9, 2026
d51fb26
feat(apps): add bare HTML flags and mode dispatch to +deploy
Allen-D2026 Sep 9, 2026
916adb1
feat(apps): resolve the publish target with a three-level fallback
Allen-D2026 Sep 9, 2026
6e73d03
feat(apps): publish bare HTML through +deploy with a content hash tag
Allen-D2026 Sep 9, 2026
2bb219e
feat(apps): attribute agent-created html apps with source_agent
Allen-D2026 Sep 9, 2026
ce5cdb6
docs(apps): document bare HTML publishing in the deploy skill reference
Allen-D2026 Sep 9, 2026
cb5df0d
fix(apps): keep a payload-provided routes.json instead of duplicating it
Allen-D2026 Sep 9, 2026
92b8451
fix(apps): block credential files whose name depends on the parent dir
Allen-D2026 Sep 9, 2026
65a74a4
fix(apps): treat the whole .aws directory as secret-only and reject b…
Allen-D2026 Sep 9, 2026
1acbc54
fix(apps): surface the real mistake for lone --entry-file and bad paths
Allen-D2026 Sep 9, 2026
1315783
fix(apps): tell a missing path apart from one outside the sandbox
Allen-D2026 Sep 9, 2026
dc555d3
fix(apps): stop blaming path scope for unrelated failures and report …
Allen-D2026 Sep 9, 2026
e7e79d8
fix(apps): register the idempotency key on create and send extra as a…
Allen-D2026 Sep 9, 2026
967de80
feat(apps): publish the dependency closure for +deploy --file-path
Allen-D2026 Sep 9, 2026
8903bc6
test(apps): prove the closure without module scripts
Allen-D2026 Sep 9, 2026
ad99414
fix(apps): reject an entry collision in Validate, not at publish time
Allen-D2026 Sep 9, 2026
f5959de
fix(apps): match JSON.stringify when serialising the fingerprint
Allen-D2026 Sep 9, 2026
f819bda
feat(apps): align the dependency scan with the web client
Allen-D2026 Sep 9, 2026
bfd8eee
docs(apps): document what the dependency scan actually collects
Allen-D2026 Sep 10, 2026
0a75a07
fix(apps): stop sending callers from a clear failure into a silent one
Allen-D2026 Sep 10, 2026
a1cfe34
feat(apps): add +export to download an app's source code as a zip
zhmushan Sep 9, 2026
c9ed827
fix(apps): give each rejected reference a hint that fits its cause
Allen-D2026 Sep 10, 2026
ddd1adf
docs(apps): separate the two ways a reference gets rejected
Allen-D2026 Sep 10, 2026
f776b6c
fix(apps): explain a bad reference the same way in both modes
Allen-D2026 Sep 10, 2026
791576f
test(apps): build the depth-limit chain instead of committing it
Allen-D2026 Sep 10, 2026
5aaf922
fix(apps): decode CSS escapes and reject the reserved xmlns prefix
Allen-D2026 Sep 10, 2026
03c96c6
fix(apps): refuse a redirect that would drop the artifact body
Allen-D2026 Sep 10, 2026
54fffc1
fix(apps): reject a --dir that resolves out of the workspace
Allen-D2026 Sep 10, 2026
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
2 changes: 2 additions & 0 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ require (
gopkg.in/yaml.v3 v3.0.1
)

require github.com/tdewolff/parse/v2 v2.8.16

require (
github.com/atotto/clipboard v0.1.4 // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
Expand Down
4 changes: 4 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,10 @@ github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
github.com/tdewolff/parse/v2 v2.8.16 h1:bLk5svUOQRkW/Y2SJ+DeENSIkZBcTIkq+Atyv5D8feI=
github.com/tdewolff/parse/v2 v2.8.16/go.mod h1:XdsoSFThlVIRIajAuqz1evNY7bagZS8LBOPA3aVopwQ=
github.com/tdewolff/test v1.0.12 h1:7F21DqIajswxuche0geHdrUZRCWE4oko4b7bcmkkrxk=
github.com/tdewolff/test v1.0.12/go.mod h1:XPuWBzvdUzhCuxWO1ojpXsyzsA5bFoS3tO/Q3kFuTG8=
github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY=
github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA=
Expand Down
724 changes: 724 additions & 0 deletions shortcuts/apps/apps_deploy.go

Large diffs are not rendered by default.

Loading
Loading