You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Automated weekly scan. Check the boxes for the improvements you want turned into tracked issues, then close this issue when you're done triaging — closing it is the go signal. On its next run the agent creates the checked items as real issues (unassigned, labelled by priority) and leaves this digest closed; unchecked items are dismissed and won't be re-proposed. While this stays open nothing happens, so take as long as you need.
mpcli-pr128-3Stop the autoSync daemon on a permanent mark-synced failure — A permanent 403 on the PATCH leaves autoSync on, so the daemon re-attempts the same records forever; delete path already guards via deletePermanentlyFailed. (suggested: P2, effort: M, from PR Mark records synced via bulk PATCH /api/records #128)
mpcli-20260826-1Confirm before sources delete <uuid> — deleteSourceCommand deletes a source immediately when a uuid is passed, with no confirmation prompt, inconsistent with the product's careful guarding against accidental destruction. (suggested: P3, effort: S)
mpcli-20260823-3Add markpost push --dry-run to preview which files would be pushed before creating records — Give push the same preview affordance sync just got, listing the resolved files (and missing/skipped inputs) without creating any server records. (suggested: P3, effort: S)
mpcli-pr128-1Abort mark-synced on a repeated non-transient 4xx — A 422 from MAX_UPDATE_BATCH_SIZE drift or malformed-payload 400 is not systemic, so every chunk fires and fails identically; abort after the first such 4xx. (suggested: P3, effort: S, from PR Mark records synced via bulk PATCH /api/records #128)
Rationale
mpcli-pr128-3: A permanent 403 on the PATCH leaves autoSync on, so the daemon re-attempts the same records forever; delete path already guards via deletePermanentlyFailed. (evidence: src/index.ts runDefaultSync mark-synced branch)
mpcli-pr129-1: markpost push '~/vault/**' globs a literal ~ and matches nothing; run the same expander over push args in resolveMarkdownInputs. (evidence: src/commands/push.ts, src/libs/files.ts)
mpcli-20260826-1: src/commands/sources.ts:336-351 runs the DELETE the moment a uuid arg is supplied, no confirm. Deleting a source drops its ingest config and its one-time signing secret (unrecoverable), forcing a full recreate. Every other destructive path in this CLI is deliberately hard to trigger, so a no-confirm source delete is an outlier. A yes/no confirm (skippable with --yes for scripts) matches the established safety posture.
mpcli-20260823-3: commands/push.ts already resolves the full plan up front via resolveMarkdownInputs (files, missing, skipped) before pushFiles creates records, and sync recently gained --dry-run (src/index.ts reportDryRunPlan). A bulk import across globs/directories has no way to confirm the glob matched the right notes before it hammers POST /api/records once per file; a --dry-run that prints the resolved file list and the missing/skipped inputs, then exits without calling createRecord, catches a wrong glob cheaply and is symmetric with sync --dry-run.
mpcli-pr128-1: A 422 from MAX_UPDATE_BATCH_SIZE drift or malformed-payload 400 is not systemic, so every chunk fires and fails identically; abort after the first such 4xx. (evidence: src/libs/records.ts markSyncedChunk)
Automated weekly scan. Check the boxes for the improvements you want turned into tracked issues, then close this issue when you're done triaging — closing it is the go signal. On its next run the agent creates the checked items as real issues (unassigned, labelled by priority) and leaves this digest closed; unchecked items are dismissed and won't be re-proposed. While this stays open nothing happens, so take as long as you need.
mpcli-pr128-3Stop the autoSync daemon on a permanent mark-synced failure — A permanent 403 on the PATCH leaves autoSync on, so the daemon re-attempts the same records forever; delete path already guards via deletePermanentlyFailed. (suggested: P2, effort: M, from PR Mark records synced via bulk PATCH /api/records #128)mpcli-pr129-1Expand ~/$HOME in push input paths — markpost push '~/vault/**' globs a literal ~ and matches nothing; run the same expander over push args in resolveMarkdownInputs. (suggested: P3, effort: S, from PR Expand ~ and $HOME in the configured outputDirectory before writing #129)mpcli-20260826-1Confirm beforesources delete <uuid>— deleteSourceCommand deletes a source immediately when a uuid is passed, with no confirmation prompt, inconsistent with the product's careful guarding against accidental destruction. (suggested: P3, effort: S)mpcli-20260823-3Addmarkpost push --dry-runto preview which files would be pushed before creating records — Give push the same preview affordance sync just got, listing the resolved files (and missing/skipped inputs) without creating any server records. (suggested: P3, effort: S)mpcli-pr128-1Abort mark-synced on a repeated non-transient 4xx — A 422 from MAX_UPDATE_BATCH_SIZE drift or malformed-payload 400 is not systemic, so every chunk fires and fails identically; abort after the first such 4xx. (suggested: P3, effort: S, from PR Mark records synced via bulk PATCH /api/records #128)Rationale
mpcli-pr128-3: A permanent 403 on the PATCH leaves autoSync on, so the daemon re-attempts the same records forever; delete path already guards via deletePermanentlyFailed. (evidence: src/index.ts runDefaultSync mark-synced branch)mpcli-pr129-1: markpost push '~/vault/**' globs a literal ~ and matches nothing; run the same expander over push args in resolveMarkdownInputs. (evidence: src/commands/push.ts, src/libs/files.ts)mpcli-20260826-1: src/commands/sources.ts:336-351 runs the DELETE the moment a uuid arg is supplied, no confirm. Deleting a source drops its ingest config and its one-time signing secret (unrecoverable), forcing a full recreate. Every other destructive path in this CLI is deliberately hard to trigger, so a no-confirm source delete is an outlier. A yes/no confirm (skippable with --yes for scripts) matches the established safety posture.mpcli-20260823-3: commands/push.ts already resolves the full plan up front via resolveMarkdownInputs (files, missing, skipped) before pushFiles creates records, and sync recently gained --dry-run (src/index.ts reportDryRunPlan). A bulk import across globs/directories has no way to confirm the glob matched the right notes before it hammers POST /api/records once per file; a --dry-run that prints the resolved file list and the missing/skipped inputs, then exits without calling createRecord, catches a wrong glob cheaply and is symmetric with sync --dry-run.mpcli-pr128-1: A 422 from MAX_UPDATE_BATCH_SIZE drift or malformed-payload 400 is not systemic, so every chunk fires and fails identically; abort after the first such 4xx. (evidence: src/libs/records.ts markSyncedChunk)