What the model wrote:
const damageEvent = table(
{ name: 'damageEvent', public: true, event: true },
const account = table(
{ name: 'account' },
const log = table(
{
name: 'log',
indexes: [{ accessor: 'byUserDay', algorithm: 'btree', columns: ['userId', 'day'] }]
},
const player = table(
{ name: 'player', public: true },
const customer = table(
{ name: 'customer' },
const entity = table(
{ name: 'entity' },
const account = table(
{
name: 'account',
indexes: [{ accessor: 'byName', algorithm: 'btree', columns: ['name'] }]
},
const primitive = table(
{ name: 'primitive' },
const result = table(
{ name: 'result' },
const profile = table(
{ name: 'profile' },
const announcement = table(
{ name: 'announcement', public: true },
What was expected:
const damageEvent = table({
name: 'damage_event',
public: true,
event: true,
}, {
const account = table({
name: 'account',
}, {
const log = table({
name: 'log',
indexes: [{ accessor: 'byUserDay', algorithm: 'btree', columns: ['userId', 'day'] }],
}, {
const player = table({
name: 'player',
}, {
const customer = table({
name: 'customer',
}, {
const entity = table({
name: 'entity',
}, {
const account = table({
name: 'account',
indexes: [{ accessor: 'byName', algorithm: 'btree', columns: ['name'] }],
}, {
const primitive = table(
{
name: 'primitive',
},
const result = table(
{
name: 'result',
},
const profile = table(
{
name: 'profile',
},
const announcement = table({
name: 'announcement',
public: true,
}, {
What the error says:
schema_parity: describe failed: WARNING: This command is UNSTABLE and subject to breaking changes. Error: Invalid token: InvalidSignature
publish_error: spacetime publish (typescript) failed (exit=2)
Why this happened:
The model consistently produced the older/incorrect table(...) call shape or mixed object-literal formatting, and in some cases also changed table names or flags unnecessarily. This looks like a syntax-template mismatch with the SpacetimeDB API style expected by the benchmark, plus normalization drift in naming/casing.
Affected tasks:
t_024_event_table, t_031_unique_constraint, t_021_multi_column_index, t_025_optional_fields, t_030_two_table_join, t_020_ecs, t_018_constraints, t_014_elementary_columns, t_013_spacetime_sum_type, t_015_product_type_columns, t_022_view_basic
AI guidelines gap:
The cheat-sheets likely did not strongly emphasize the exact table({ ... }, { ... }) signature, canonical snake_case table names, and required formatting conventions. More explicit “use this exact call shape” examples would likely have prevented these misses.
What the model wrote:
export const seed = spacetimedb.reducer((ctx) => {
export const build_order_details = spacetimedb.reducer((ctx) => {
export const setCircle = spacetimedb.reducer(
{ id: t.i32(), radius: t.i32() },
export const tick = spacetimedb.reducer(
{ schedule: tickTimer.rowType },
export const seed = spacetimedb.reducer((ctx) => {
export const seed = spacetimedb.reducer(ctx => {
What was expected:
export const seed = spacetimedb.reducer(
ctx => {
export const build_order_details = spacetimedb.reducer(
(ctx) => {
export const setCircle = spacetimedb.reducer(
{ id: t.i32(), radius: t.i32() },
(ctx, { id, radius }) => {
export const tick = spacetimedb.reducer(
{ schedule: tickTimer.rowType },
(ctx, { schedule }) => {}
);
export const seed = spacetimedb.reducer(
ctx => {
What the error says:
publish_error: spacetime publish (typescript) failed (exit=2)
schema_parity: describe failed ... Invalid token: InvalidSignature
Why this happened:
The model sometimes omitted the reducer wrapper argument list entirely or collapsed the reducer signature into a single function argument when the benchmark expected a typed input schema plus callback. It also confused the reducer factory with a direct function definition in a couple of tasks.
Affected tasks:
t_021_multi_column_index, t_030_two_table_join, t_013_spacetime_sum_type, t_017_scheduled_columns, t_014_elementary_columns
AI guidelines gap:
The guidelines appear to have lacked a crisp reducer signature pattern table showing when spacetimedb.reducer(schema, (ctx, args) => ...) is required versus when spacetimedb.reducer(ctx => ...) is valid.