2a3f6f5384
cmd/pkgserver: implement JS test DSL and runner
2026-03-15 02:02:39 +11:00
ef8663461b
cmd/pkgserver: move StreamReporter display() to Reporter interface
2026-03-15 02:02:39 +11:00
0b3be27b9a
cmd/pkgserver: add DOM reporter for JS tests
2026-03-15 02:02:39 +11:00
61a25c88ae
cmd/pkgserver: add basic CLI reporter for testing JS
2026-03-15 02:02:39 +11:00
c7e195fe64
cmd/pkgserver: remove get endpoint count field
2026-03-13 20:51:08 -05:00
d5db9add98
cmd/pkgserver: search endpoint
2026-03-13 20:51:08 -05:00
ab8abdc82b
cmd/pkgserver: pagination bugfix
2026-03-13 20:51:08 -05:00
770fd46510
cmd/pkgserver: guard sass/ts behind build tag
...
Packaging nodejs and ruby is an immense burden for the Rosa OS base system, and these files diff poorly.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
99f1c6aab4
cmd/pkgserver: add size
2026-03-13 20:51:08 -05:00
9ee629d402
cmd/pkgserver: expose size and store pre-encoded ident
...
This change also handles SIGSEGV correctly in newStatusHandler, and makes serving status fully zero copy.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
f475dde8b9
cmd/pkgserver: look up status by name once
...
This has far less overhead.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
c43a0c41b6
cmd/pkgserver: refer to preset in index
...
This enables referencing back to internal/rosa through an entry obtained via the index.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
55827f1a85
cmd/pkgserver: handle unversioned value
...
This omits the field for an unversioned artifact, and only does so once on startup.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
721bdddfa1
cmd/pkgserver: determine disposition route in mux
...
This removes duplicate checks and uses the more sound check in mux.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
fb18e599dd
cmd/pkgserver: format get error messages
...
This improves source code readability on smaller displays.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
ec9005c794
cmd/pkgserver: constant string in pattern
...
This resolves patterns at compile time.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
c6d35b4003
cmd/pkgserver: satisfy handler signature in method
...
This is somewhat cleaner.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
6401533cc2
cmd/pkgserver: log instead of write encoding error
...
This message is unlikely to be useful to the user, and output may be partially written at this point, causing the error to be even less intelligible.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
5d6c401beb
cmd/pkgserver: appropriately mark test helpers
...
This improves usefulness of test log messages.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
0a2d6aec14
cmd/pkgserver: do not omit report field
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
67b11335d6
cmd/pkgserver: gracefully shut down on signal
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
ef3bd1b60a
cmd/pkgserver: specify full addr string in flag
...
This allows greater flexibility.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
beae7c89db
cmd/pkgserver: make report argument optional
...
This allows serving metadata only without a populated report. This also removes the out-of-bounds read on args when no arguments are passed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
ed26d1a1c2
cmd/pkgserver: embed internal/rosa metadata
...
This change also cleans up and reduces some unnecessary copies.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
faa0006d47
cmd/pkgserver: do not assume default mux
...
This helps with testing.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
796ddbc977
cmd/pkgserver: create index without report
...
This is useful for testing, where report testdata is not available.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 20:51:08 -05:00
98ab020160
cmd/pkgserver: add sort orders, change pagination rules
2026-03-13 20:51:08 -05:00
26a346036d
cmd/pkgserver: add /status endpoint
2026-03-13 20:51:08 -05:00
4ac9c72132
cmd/pkgserver: minimum viable frontend
2026-03-13 20:51:08 -05:00
c39c07d440
cmd/pkgserver: api versioning
2026-03-13 20:51:08 -05:00
b3fa0fe271
cmd/pkgserver: add get endpoint
2026-03-13 20:51:08 -05:00
92a90582bb
cmd/pkgserver: add count endpoint and restructure
2026-03-13 20:51:08 -05:00
2e5ac56bdf
cmd/pkgserver: add status endpoint
2026-03-13 20:51:08 -05:00
75133e0234
cmd/pkgserver: add createPackageIndex
2026-03-13 20:51:08 -05:00
c120d4de4f
cmd/pkgserver: add command handler
2026-03-13 20:51:08 -05:00
d6af8edb4a
cmd/pkgserver: replace favicon
2026-03-13 20:51:08 -05:00
da25d609d5
cmd/pkgserver: pagination
2026-03-13 20:51:08 -05:00
95ceed0de0
cmd/pkgserver: basic web ui
2026-03-13 20:51:08 -05:00
345cffddc2
cmd/mbf: optionally export output
...
Test / Create distribution (push) Successful in 1m1s
Test / Sandbox (push) Successful in 2m39s
Test / Hakurei (push) Successful in 3m41s
Test / ShareFS (push) Successful in 3m41s
Test / Sandbox (race detector) (push) Successful in 5m1s
Test / Hakurei (race detector) (push) Successful in 6m6s
Test / Flake checks (push) Successful in 1m21s
This is for debugging for now, as no program consumes this format yet.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 19:53:55 +09:00
8938994036
cmd/mbf: display runtime dependency info
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m41s
Test / Hakurei (push) Successful in 3m39s
Test / ShareFS (push) Successful in 3m43s
Test / Sandbox (race detector) (push) Successful in 5m6s
Test / Hakurei (race detector) (push) Successful in 6m10s
Test / Flake checks (push) Successful in 1m14s
This only presents top-level dependencies, resolving indirect dependencies can be misleading in this context.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 10:46:37 +09:00
96d382f805
cmd/mbf: resolve runtime dependencies
...
Test / Create distribution (push) Successful in 1m9s
Test / Sandbox (push) Successful in 2m55s
Test / Hakurei (push) Successful in 3m52s
Test / ShareFS (push) Successful in 3m55s
Test / Sandbox (race detector) (push) Successful in 5m10s
Test / Hakurei (race detector) (push) Successful in 6m12s
Test / Flake checks (push) Successful in 1m30s
This also adds the collection meta-artifact for concurrent curing.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 10:41:22 +09:00
620062cca9
hst: expose scheduling priority
...
Test / ShareFS (push) Successful in 43s
Test / Hakurei (push) Successful in 53s
Test / Sandbox (push) Successful in 49s
Test / Sandbox (race detector) (push) Successful in 48s
Test / Hakurei (race detector) (push) Successful in 53s
Test / Create distribution (push) Successful in 35s
Test / Flake checks (push) Successful in 1m18s
This is useful when limits are configured to allow it.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-12 02:15:14 +09:00
196b200d0f
container: expose priority and SCHED_OTHER policy
...
Test / Create distribution (push) Successful in 35s
Test / ShareFS (push) Successful in 40s
Test / Sandbox (push) Successful in 46s
Test / Sandbox (race detector) (push) Successful in 45s
Test / Hakurei (push) Successful in 52s
Test / Hakurei (race detector) (push) Successful in 50s
Test / Flake checks (push) Successful in 1m14s
The more explicit API removes the arbitrary limit preventing use of SCHED_OTHER (referred to as SCHED_NORMAL in the kernel). This change also exposes priority value to set.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-12 01:14:03 +09:00
04e6bc3c5c
hst: expose scheduling policy
...
Test / ShareFS (push) Successful in 39s
Test / Sandbox (push) Successful in 45s
Test / Hakurei (push) Successful in 50s
Test / Sandbox (race detector) (push) Successful in 45s
Test / Hakurei (race detector) (push) Successful in 49s
Test / Create distribution (push) Successful in 59s
Test / Flake checks (push) Successful in 1m19s
This is primarily useful for poorly written music players for now.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-12 00:52:18 +09:00
fd515badff
container: move scheduler policy constants to std
...
Test / Create distribution (push) Successful in 1m1s
Test / Sandbox (push) Successful in 2m40s
Test / Hakurei (push) Successful in 3m41s
Test / ShareFS (push) Successful in 3m39s
Test / Sandbox (race detector) (push) Successful in 5m0s
Test / Hakurei (race detector) (push) Successful in 6m57s
Test / Flake checks (push) Successful in 2m9s
This avoids depending on cgo.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-11 20:03:08 +09:00
2c17d1abe0
cmd/mbf: create report with reasonable perm
...
Test / Create distribution (push) Successful in 59s
Test / Sandbox (push) Successful in 2m38s
Test / Hakurei (push) Successful in 3m38s
Test / ShareFS (push) Successful in 3m48s
Test / Sandbox (race detector) (push) Successful in 4m56s
Test / Hakurei (race detector) (push) Successful in 5m51s
Test / Flake checks (push) Successful in 1m32s
Making it inaccessible certainly is not reasonable.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-07 16:16:47 +09:00
0aa459d1a9
cmd/mbf: check for updates concurrently
...
Test / Create distribution (push) Successful in 59s
Test / Sandbox (push) Successful in 2m39s
Test / Hakurei (push) Successful in 3m43s
Test / ShareFS (push) Successful in 3m50s
Test / Sandbox (race detector) (push) Successful in 4m57s
Test / Hakurei (race detector) (push) Successful in 6m0s
Test / Flake checks (push) Successful in 1m36s
Runs much faster this way.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-07 16:05:16 +09:00
6228cda7ad
cmd/mbf: optionally read report in info
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m39s
Test / Hakurei (push) Successful in 3m46s
Test / ShareFS (push) Successful in 3m55s
Test / Sandbox (race detector) (push) Successful in 5m6s
Test / Hakurei (race detector) (push) Successful in 6m3s
Test / Flake checks (push) Successful in 1m28s
This is a useful frontend for the report files before web server is ready.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-07 02:26:35 +09:00
86c336de88
cmd/mbf: cure status report command
...
Test / Create distribution (push) Successful in 32s
Test / Sandbox (push) Successful in 46s
Test / Hakurei (push) Successful in 2m40s
Test / ShareFS (push) Successful in 2m38s
Test / Sandbox (race detector) (push) Successful in 4m57s
Test / Hakurei (race detector) (push) Successful in 5m55s
Test / Flake checks (push) Successful in 1m29s
This emits a report stream for the opened cache into the specified file.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-07 02:20:40 +09:00
80f2367c16
cmd/mbf: merge status and info commands
...
Test / Create distribution (push) Successful in 58s
Test / Sandbox (push) Successful in 2m32s
Test / Hakurei (push) Successful in 3m52s
Test / ShareFS (push) Successful in 4m6s
Test / Sandbox (race detector) (push) Successful in 5m4s
Test / Hakurei (race detector) (push) Successful in 5m55s
Test / Flake checks (push) Successful in 1m24s
This is cleaner, and offers better integration with the work-in-progress report file.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-06 23:20:00 +09:00