Timesheets: finish CLI/MCP sharing (ts copy bypasses the create service, delete, read document, check summary)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 38/100
- Tipo de issue
- Refactorización
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- csharp
- Área
- api, cli, testing-qa
Línea de trabajo
Read TimesheetUpdateService and TimesheetAcceptService as patterns, then trace ts copy, ts delete, DeleteTimesheet, GetTimesheets, CheckCommand/CheckWeek, and single-day ts get. The work is done when the listed service migrations, shared documents, summary and strict fields, lookup path, and copy success/failure tests are complete without breaking the stated MCP wire changes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Why
Create, update and accept are genuinely shared. What is left on the timesheet side:
ts copybypassesTimesheetCreateService. It builds its ownTimesheetRequest(no sell price, the source row'sCategorycopied intoCategoryIdrather than resolved, no rate check, no read-back), counts aSuccess=falseresponse as copied and exits 0, reports the normal empty success body as "Failed: Unknown error", and skips the confirmation on--jsonwithout--yes. CLAUDE.md says a create request is never built outside the service.GetTimesheetsdrops fields agents need. The MCP projection omitsiteration/iterationId, category,less, location id and billable flags.UpdateTimesheetandAcceptSuggestedTimesheettake an iteration, but an agent cannot read a row's current one.- Delete shares only the suggestion guard; guard → DELETE → result is written twice (
DeleteCommand,DeleteTimesheet). ts checksummary and--strictverdict are computed only inCheckCommand(CheckEvaluator.Summarize);CheckWeekhas no summary or strict field.ts getfor a single day does not go throughTimesheetLookup.
Migrate
-
ts copy: oneTimesheetCreateService.PrepareAsync/ApplyAsyncper row; count only verified outcomes; exit non-zero on any failed row; require--yeson--json; tests for success,Success=falseand partial failure. -
TimesheetDeleteService(guard + delete + result) used byts deleteandDeleteTimesheet; dropDeleteTimesheetfromTimesheetToolsUsingApiDirectly. - One timesheet-row document for
ts get --jsonandGetTimesheets(keep the weekend policy an explicit argument). - Put the summary line and strict verdict in
WeekCheckResult. -
ts get <date>reads throughTimesheetLookup.
How
TimesheetUpdateService / TimesheetAcceptService are the pattern. The copy change and the delete service are patch-safe; the GetTimesheets document and the CheckWeek fields are MCP wire changes for 0.4.0.
Part of #38.
- Lenguaje dominante
- C#
- Estrellas
- 3
- Forks
- 0
- Merge medio
- 7 min
- PR fusionados (30 d)
- 30
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de SSWConsulting/TimePro.Tools
-
Priority: P3 Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
SSWConsulting/TimePro.Tools#101 ·
Los mantenedores suelen responder en 1 día
-
Priority: P3 Type: Refactor
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
SSWConsulting/TimePro.Tools#100 ·
Los mantenedores suelen responder en 1 día
-
Accounting: share product, SKU, rate, unbilled and recurring reads (unbilled paging is a no-op)AbiertoPriority: P3 Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
SSWConsulting/TimePro.Tools#99 ·
Los mantenedores suelen responder en 1 día
-
Priority: P2 Type: Refactor
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
SSWConsulting/TimePro.Tools#98 ·
Los mantenedores suelen responder en 1 día
-
Priority: P2 Type: Feature
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
SSWConsulting/TimePro.Tools#96 ·
Los mantenedores suelen responder en 1 día
Todos los issues de SSWConsulting/TimePro.Tools
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
builtbybel/CrapFixer#112 ·
-
area-ai untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
dotnet/extensions#7790 ·
Los mantenedores suelen responder en 1 día
-
Beginner Friendly T: Bugfix
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
space-wizards/space-station-14#46220 ·
Los mantenedores suelen responder en 1 día
-
P2 testing
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
Los mantenedores suelen responder en 1 día
-
area-Infrastructure-coreclr os-ios os-maccatalyst os-tvos untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
dotnet/runtime#134766 · 3 comentarios ·
Los mantenedores suelen responder en 1 día