[E00-S01-T12] Root commands exist for build/test/typecheck #165

Closed
opened 2026-08-27 00:06:39 +00:00 by kpcto · 7 comments
Owner

Parent story: [E00-S01] Workspace bootstrap (#58)

Intent

Ensure root commands exist for build, test and typecheck.

Acceptance criteria

  • a root build command exists
  • a root test command exists
  • a root typecheck command exists

Explicitly out of scope

  • apps/packages/extensions separation (E00-S01-T11)
  • frozen lockfile clean install (E00-S01-T13)
  • no core imports a concrete extension (E00-S01-T14)

Test plan

  • invoke each root command and confirm it runs

Rollback note

  • revert the root script definitions

Owning stream

platform

Risk quadrant

agent-full

> Parent story: [E00-S01] Workspace bootstrap (#58) ## Intent Ensure root commands exist for build, test and typecheck. ## Acceptance criteria - a root build command exists - a root test command exists - a root typecheck command exists ## Explicitly out of scope - apps/packages/extensions separation (E00-S01-T11) - frozen lockfile clean install (E00-S01-T13) - no core imports a concrete extension (E00-S01-T14) ## Test plan - invoke each root command and confirm it runs ## Rollback note - revert the root script definitions ### Owning stream platform ### Risk quadrant agent-full
kpcto added this to the Sprint 0 milestone 2026-08-27 00:06:39 +00:00
kpcto added the
status
ready
kind
task
labels 2026-08-27 00:06:39 +00:00
bot-dispatcher added
status
proposed
and removed
status
ready
kind
task
labels 2026-08-27 00:06:40 +00:00
Member

Auto-reverted by dispatcher: DoR lint: required section "Intent" is empty; required section "Acceptance criteria" is empty; required section "Explicitly out of scope" is empty; required section "Test plan" is empty; required section "Rollback note" is empty; acceptance criteria: no bullet assertions found

status/ready may only be applied by a human maintainer.

> Auto-reverted by dispatcher: DoR lint: required section "Intent" is empty; required section "Acceptance criteria" is empty; required section "Explicitly out of scope" is empty; required section "Test plan" is empty; required section "Rollback note" is empty; acceptance criteria: no bullet assertions found `status/ready` may only be applied by a human maintainer.
kpcto added the
kind
task
label 2026-08-27 21:24:09 +00:00
kpcto added
status
ready
and removed
status
proposed
labels 2026-08-28 22:50:46 +00:00
bot-dispatcher added
loop
1
status
in-progress
and removed
status
ready
labels 2026-08-28 22:50:54 +00:00
Member
agent: dispatcher
phase: complete
plan_summary: Dispatch #165: [E00-S01-T12] Root commands exist for build/test/typecheck (platform)
```yaml agent: dispatcher phase: complete plan_summary: Dispatch #165: [E00-S01-T12] Root commands exist for build/test/typecheck (platform) ```
Member
agent: implementer
phase: start
plan_summary: >
  Implement #165 [E00-S01-T12] Root commands exist for build/test/typecheck.
  The root scripts build/test/typecheck already exist from T05 (0d1bd19) but
  nothing locks them in; add tests/root-commands.test.mjs that makes the three
  acceptance criteria enforceable (exact script declarations in the root
  package.json + invoking each root command and asserting exit 0, with a
  recursion guard for the test command), on branch feature/165, then open a PR
  with the criterion→test table. Out of scope per brief (T11/T13/T14) untouched.
```yaml agent: implementer phase: start plan_summary: > Implement #165 [E00-S01-T12] Root commands exist for build/test/typecheck. The root scripts build/test/typecheck already exist from T05 (0d1bd19) but nothing locks them in; add tests/root-commands.test.mjs that makes the three acceptance criteria enforceable (exact script declarations in the root package.json + invoking each root command and asserting exit 0, with a recursion guard for the test command), on branch feature/165, then open a PR with the criterion→test table. Out of scope per brief (T11/T13/T14) untouched. ```
Member
agent: implementer
phase: complete
plan_summary: >
  #165 [E00-S01-T12] Root commands exist for build/test/typecheck — done.
  Added tests/root-commands.test.mjs (6 tests) locking in the root
  build/test/typecheck commands: exact scripts.build/test/typecheck
  declarations in the root package.json, plus invoking each root command at
  the workspace root and asserting exit 0 (with EPPP_ROOT_COMMANDS_SKIP_INVOKE
  recursion guard for the test probe). Full suite 42/42 on Node 24 (v24.20.0),
  mutation probes verified. PR #379 open, CI green (Frozen lockfile install
  job succeeded — frozen install + pnpm -r list on Node 24). Criterion→test
  table in PR description. Out of scope (T11/T13/T14) untouched.
```yaml agent: implementer phase: complete plan_summary: > #165 [E00-S01-T12] Root commands exist for build/test/typecheck — done. Added tests/root-commands.test.mjs (6 tests) locking in the root build/test/typecheck commands: exact scripts.build/test/typecheck declarations in the root package.json, plus invoking each root command at the workspace root and asserting exit 0 (with EPPP_ROOT_COMMANDS_SKIP_INVOKE recursion guard for the test probe). Full suite 42/42 on Node 24 (v24.20.0), mutation probes verified. PR #379 open, CI green (Frozen lockfile install job succeeded — frozen install + pnpm -r list on Node 24). Criterion→test table in PR description. Out of scope (T11/T13/T14) untouched. ```
Member
agent: reviewer
verdict: approve
```yaml agent: reviewer verdict: approve ```
bot-dispatcher added
status
review
and removed
status
in-progress
loop
1
kind
task
labels 2026-08-28 22:58:37 +00:00
kpcto closed this issue 2026-08-28 23:01:58 +00:00
kpcto added
kind
task
status
done
and removed
status
review
labels 2026-08-28 23:01:58 +00:00
Member
agent: tester
phase: start
objective: "Independently probe PR #379 for #165 [E00-S01-T12] Root commands exist for build/test/typecheck"
plan_summary: >
  Verify the three acceptance criteria (a root build / test / typecheck command
  exists) and independently invoke each root command on a clean Node 24 +
  pnpm 11.23.0 environment, then cross-check the PR CI run. Will not edit the
  implementer's tests.
```yaml agent: tester phase: start objective: "Independently probe PR #379 for #165 [E00-S01-T12] Root commands exist for build/test/typecheck" plan_summary: > Verify the three acceptance criteria (a root build / test / typecheck command exists) and independently invoke each root command on a clean Node 24 + pnpm 11.23.0 environment, then cross-check the PR CI run. Will not edit the implementer's tests. ```
Member
agent: tester
phase: complete
verdict: pass
pr: 379
pr_url: http://gitea:3000/Fabrika/PersonalBlog/pulls/379
ci: green
ci_run: 55
ci_url: http://gitea:3000/Fabrika/PersonalBlog/actions/runs/55
ci_job_url: http://gitea:3000/Fabrika/PersonalBlog/actions/runs/55/jobs/67
environment: "Node v24.20.0, pnpm 11.23.0 (corepack), linux arm64"
acceptance:
  root_build_command_exists: pass
  root_test_command_exists: pass
  root_typecheck_command_exists: pass
evidence:
  - "root build command exists: scripts.build = 'pnpm -r run build' (feature/165 @ 5c6ca444)"
  - "root test command exists: scripts.test = 'node --test tests/**/*.test.mjs'"
  - "root typecheck command exists: scripts.typecheck = 'pnpm -r run typecheck'"
  - "pnpm run build -> exit 0 (apps/server, packages/core, extensions/example)"
  - "pnpm run typecheck -> exit 0 (3/3 packages, tsc --noEmit)"
  - "pnpm run test -> exit 0, 42/42 pass (incl. 6 root-commands tests)"
  - "pnpm install --frozen-lockfile -> exit 0, lockfile unchanged"
  - "PR #379 diff adds only tests/root-commands.test.mjs (125 additions, 1 file)"
  - "CI run #55 / job #67 'Frozen lockfile install' success (44s)"
```yaml agent: tester phase: complete verdict: pass pr: 379 pr_url: http://gitea:3000/Fabrika/PersonalBlog/pulls/379 ci: green ci_run: 55 ci_url: http://gitea:3000/Fabrika/PersonalBlog/actions/runs/55 ci_job_url: http://gitea:3000/Fabrika/PersonalBlog/actions/runs/55/jobs/67 environment: "Node v24.20.0, pnpm 11.23.0 (corepack), linux arm64" acceptance: root_build_command_exists: pass root_test_command_exists: pass root_typecheck_command_exists: pass evidence: - "root build command exists: scripts.build = 'pnpm -r run build' (feature/165 @ 5c6ca444)" - "root test command exists: scripts.test = 'node --test tests/**/*.test.mjs'" - "root typecheck command exists: scripts.typecheck = 'pnpm -r run typecheck'" - "pnpm run build -> exit 0 (apps/server, packages/core, extensions/example)" - "pnpm run typecheck -> exit 0 (3/3 packages, tsc --noEmit)" - "pnpm run test -> exit 0, 42/42 pass (incl. 6 root-commands tests)" - "pnpm install --frozen-lockfile -> exit 0, lockfile unchanged" - "PR #379 diff adds only tests/root-commands.test.mjs (125 additions, 1 file)" - "CI run #55 / job #67 'Frozen lockfile install' success (44s)" ```
Sign in to join this conversation.