Fix audit and framework deletion
Signed-off-by: Sacha Al Himdani <sacha@getprobo.com>
This commit is contained in:
@@ -67,6 +67,8 @@ function AuditSelectWithQuery<T extends FieldValues = FieldValues>(
|
|||||||
const data = useLazyLoadQuery<AuditSelectFieldQuery>(auditsQuery, { organizationId }, { fetchPolicy: "network-only" });
|
const data = useLazyLoadQuery<AuditSelectFieldQuery>(auditsQuery, { organizationId }, { fetchPolicy: "network-only" });
|
||||||
const audits = data?.organization?.audits?.edges?.map((edge) => edge.node).filter((node) => node !== null) ?? [];
|
const audits = data?.organization?.audits?.edges?.map((edge) => edge.node).filter((node) => node !== null) ?? [];
|
||||||
|
|
||||||
|
const NONE_VALUE = "__NONE__";
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Controller
|
<Controller
|
||||||
control={control}
|
control={control}
|
||||||
@@ -77,12 +79,15 @@ function AuditSelectWithQuery<T extends FieldValues = FieldValues>(
|
|||||||
id={name}
|
id={name}
|
||||||
variant="editor"
|
variant="editor"
|
||||||
placeholder={__("Select an audit")}
|
placeholder={__("Select an audit")}
|
||||||
onValueChange={field.onChange}
|
onValueChange={(value) => field.onChange(value === NONE_VALUE ? "" : value)}
|
||||||
key={audits?.length.toString() ?? "0"}
|
key={audits?.length.toString() ?? "0"}
|
||||||
{...field}
|
{...field}
|
||||||
className="w-full"
|
className="w-full"
|
||||||
value={field.value ?? ""}
|
value={field.value || NONE_VALUE}
|
||||||
>
|
>
|
||||||
|
<Option value={NONE_VALUE}>
|
||||||
|
<span className="text-txt-tertiary">{__("None")}</span>
|
||||||
|
</Option>
|
||||||
{audits?.map((audit) => (
|
{audits?.map((audit) => (
|
||||||
<Option key={audit.id} value={audit.id}>
|
<Option key={audit.id} value={audit.id}>
|
||||||
<div className="flex items-center justify-between w-full">
|
<div className="flex items-center justify-between w-full">
|
||||||
|
|||||||
@@ -112,7 +112,8 @@ export const deleteAuditMutation = graphql`
|
|||||||
|
|
||||||
export const useDeleteAudit = (
|
export const useDeleteAudit = (
|
||||||
audit: { id: string; framework: { name: string } },
|
audit: { id: string; framework: { name: string } },
|
||||||
connectionId: string
|
connectionId: string,
|
||||||
|
onSuccess?: () => void
|
||||||
) => {
|
) => {
|
||||||
const { __ } = useTranslate();
|
const { __ } = useTranslate();
|
||||||
const [mutate] = useMutationWithToasts(deleteAuditMutation, {
|
const [mutate] = useMutationWithToasts(deleteAuditMutation, {
|
||||||
@@ -123,15 +124,17 @@ export const useDeleteAudit = (
|
|||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
confirm(
|
confirm(
|
||||||
() =>
|
async () => {
|
||||||
mutate({
|
await mutate({
|
||||||
variables: {
|
variables: {
|
||||||
input: {
|
input: {
|
||||||
auditId: audit.id!,
|
auditId: audit.id!,
|
||||||
},
|
},
|
||||||
connections: [connectionId],
|
connections: [connectionId],
|
||||||
},
|
},
|
||||||
}),
|
});
|
||||||
|
onSuccess?.();
|
||||||
|
},
|
||||||
{
|
{
|
||||||
message: sprintf(
|
message: sprintf(
|
||||||
__(
|
__(
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ export const useCreateNonconformity = (connectionId: string) => {
|
|||||||
organizationId: string;
|
organizationId: string;
|
||||||
referenceId: string;
|
referenceId: string;
|
||||||
description?: string;
|
description?: string;
|
||||||
auditId: string;
|
auditId?: string;
|
||||||
dateIdentified?: string;
|
dateIdentified?: string;
|
||||||
rootCause: string;
|
rootCause: string;
|
||||||
correctiveAction?: string;
|
correctiveAction?: string;
|
||||||
@@ -183,9 +183,6 @@ export const useCreateNonconformity = (connectionId: string) => {
|
|||||||
if (!input.referenceId) {
|
if (!input.referenceId) {
|
||||||
return alert(__("Failed to create nonconformity: reference ID is required"));
|
return alert(__("Failed to create nonconformity: reference ID is required"));
|
||||||
}
|
}
|
||||||
if (!input.auditId) {
|
|
||||||
return alert(__("Failed to create nonconformity: audit is required"));
|
|
||||||
}
|
|
||||||
if (!input.ownerId) {
|
if (!input.ownerId) {
|
||||||
return alert(__("Failed to create nonconformity: owner is required"));
|
return alert(__("Failed to create nonconformity: owner is required"));
|
||||||
}
|
}
|
||||||
@@ -199,7 +196,7 @@ export const useCreateNonconformity = (connectionId: string) => {
|
|||||||
organizationId: input.organizationId,
|
organizationId: input.organizationId,
|
||||||
referenceId: input.referenceId,
|
referenceId: input.referenceId,
|
||||||
description: input.description,
|
description: input.description,
|
||||||
auditId: input.auditId,
|
auditId: input.auditId || undefined,
|
||||||
dateIdentified: input.dateIdentified,
|
dateIdentified: input.dateIdentified,
|
||||||
rootCause: input.rootCause,
|
rootCause: input.rootCause,
|
||||||
correctiveAction: input.correctiveAction,
|
correctiveAction: input.correctiveAction,
|
||||||
@@ -226,7 +223,7 @@ export const useUpdateNonconformity = () => {
|
|||||||
rootCause?: string;
|
rootCause?: string;
|
||||||
correctiveAction?: string;
|
correctiveAction?: string;
|
||||||
ownerId?: string;
|
ownerId?: string;
|
||||||
auditId?: string;
|
auditId?: string | null;
|
||||||
dueDate?: string | null;
|
dueDate?: string | null;
|
||||||
status?: string;
|
status?: string;
|
||||||
effectivenessCheck?: string;
|
effectivenessCheck?: string;
|
||||||
@@ -237,7 +234,10 @@ export const useUpdateNonconformity = () => {
|
|||||||
|
|
||||||
return promisifyMutation(mutate)({
|
return promisifyMutation(mutate)({
|
||||||
variables: {
|
variables: {
|
||||||
input,
|
input: {
|
||||||
|
...input,
|
||||||
|
auditId: input.auditId || null,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* @generated SignedSource<<a7d4ac5eee7f07fadad4e2c1f25e87e5>>
|
* @generated SignedSource<<db7fca9f154989ebab9e5c9b0f5bfd85>>
|
||||||
* @lightSyntaxTransform
|
* @lightSyntaxTransform
|
||||||
* @nogrep
|
* @nogrep
|
||||||
*/
|
*/
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
import { ConcreteRequest } from 'relay-runtime';
|
import { ConcreteRequest } from 'relay-runtime';
|
||||||
export type NonconformityStatus = "CLOSED" | "IN_PROGRESS" | "OPEN";
|
export type NonconformityStatus = "CLOSED" | "IN_PROGRESS" | "OPEN";
|
||||||
export type CreateNonconformityInput = {
|
export type CreateNonconformityInput = {
|
||||||
auditId: string;
|
auditId?: string | null | undefined;
|
||||||
correctiveAction?: string | null | undefined;
|
correctiveAction?: string | null | undefined;
|
||||||
dateIdentified?: any | null | undefined;
|
dateIdentified?: any | null | undefined;
|
||||||
description?: string | null | undefined;
|
description?: string | null | undefined;
|
||||||
@@ -36,7 +36,7 @@ export type NonconformityGraphCreateMutation$data = {
|
|||||||
readonly name: string;
|
readonly name: string;
|
||||||
};
|
};
|
||||||
readonly id: string;
|
readonly id: string;
|
||||||
};
|
} | null | undefined;
|
||||||
readonly createdAt: any;
|
readonly createdAt: any;
|
||||||
readonly dateIdentified: any | null | undefined;
|
readonly dateIdentified: any | null | undefined;
|
||||||
readonly description: string | null | undefined;
|
readonly description: string | null | undefined;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* @generated SignedSource<<125cf1d460b37ac442d0f30c14e5af11>>
|
* @generated SignedSource<<526115183274c5c81a5a70c16012591e>>
|
||||||
* @lightSyntaxTransform
|
* @lightSyntaxTransform
|
||||||
* @nogrep
|
* @nogrep
|
||||||
*/
|
*/
|
||||||
@@ -21,7 +21,7 @@ export type NonconformityGraphNodeQuery$data = {
|
|||||||
readonly name: string;
|
readonly name: string;
|
||||||
};
|
};
|
||||||
readonly id: string;
|
readonly id: string;
|
||||||
};
|
} | null | undefined;
|
||||||
readonly correctiveAction?: string | null | undefined;
|
readonly correctiveAction?: string | null | undefined;
|
||||||
readonly createdAt?: any;
|
readonly createdAt?: any;
|
||||||
readonly dateIdentified?: any | null | undefined;
|
readonly dateIdentified?: any | null | undefined;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* @generated SignedSource<<9c7a235f3dc4f691c8f9d036536cf272>>
|
* @generated SignedSource<<2f4ca0549a2e01d68d9fb752298beb4c>>
|
||||||
* @lightSyntaxTransform
|
* @lightSyntaxTransform
|
||||||
* @nogrep
|
* @nogrep
|
||||||
*/
|
*/
|
||||||
@@ -35,7 +35,7 @@ export type NonconformityGraphUpdateMutation$data = {
|
|||||||
readonly name: string;
|
readonly name: string;
|
||||||
};
|
};
|
||||||
readonly id: string;
|
readonly id: string;
|
||||||
};
|
} | null | undefined;
|
||||||
readonly correctiveAction: string | null | undefined;
|
readonly correctiveAction: string | null | undefined;
|
||||||
readonly dateIdentified: any | null | undefined;
|
readonly dateIdentified: any | null | undefined;
|
||||||
readonly description: string | null | undefined;
|
readonly description: string | null | undefined;
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ import { getAuditStateLabel, getAuditStateVariant, auditStates, fileSize, sprint
|
|||||||
import type { AuditGraphNodeQuery } from "/hooks/graph/__generated__/AuditGraphNodeQuery.graphql";
|
import type { AuditGraphNodeQuery } from "/hooks/graph/__generated__/AuditGraphNodeQuery.graphql";
|
||||||
import { use } from "react";
|
import { use } from "react";
|
||||||
import { PermissionsContext } from "/providers/PermissionsContext";
|
import { PermissionsContext } from "/providers/PermissionsContext";
|
||||||
|
import { useNavigate } from "react-router";
|
||||||
|
|
||||||
const updateAuditSchema = z.object({
|
const updateAuditSchema = z.object({
|
||||||
name: z.string().nullable().optional(),
|
name: z.string().nullable().optional(),
|
||||||
@@ -54,10 +55,12 @@ export default function AuditDetailsPage(props: Props) {
|
|||||||
const { __ } = useTranslate();
|
const { __ } = useTranslate();
|
||||||
const organizationId = useOrganizationId();
|
const organizationId = useOrganizationId();
|
||||||
const { isAuthorized } = use(PermissionsContext);
|
const { isAuthorized } = use(PermissionsContext);
|
||||||
|
const navigate = useNavigate();
|
||||||
|
|
||||||
const deleteAudit = useDeleteAudit(
|
const deleteAudit = useDeleteAudit(
|
||||||
{ id: auditEntry.id!, framework: { name: auditEntry.framework!.name} },
|
{ id: auditEntry.id!, framework: { name: auditEntry.framework!.name} },
|
||||||
ConnectionHandler.getConnectionID(organizationId, "AuditsPage_audits")
|
ConnectionHandler.getConnectionID(organizationId, "AuditsPage_audits"),
|
||||||
|
() => navigate(`/organizations/${organizationId}/audits`)
|
||||||
);
|
);
|
||||||
|
|
||||||
const { control, formState, handleSubmit, register, reset } = useFormWithSchema(updateAuditSchema, {
|
const { control, formState, handleSubmit, register, reset } = useFormWithSchema(updateAuditSchema, {
|
||||||
|
|||||||
@@ -273,9 +273,11 @@ function NonconformityRow({
|
|||||||
</Badge>
|
</Badge>
|
||||||
</Td>
|
</Td>
|
||||||
<Td>
|
<Td>
|
||||||
{nonconformity.audit.name
|
{nonconformity.audit
|
||||||
? `${nonconformity.audit.framework.name} - ${nonconformity.audit.name}`
|
? nonconformity.audit.name
|
||||||
: nonconformity.audit.framework.name
|
? `${nonconformity.audit.framework?.name} - ${nonconformity.audit.name}`
|
||||||
|
: nonconformity.audit.framework?.name
|
||||||
|
: <span className="text-txt-tertiary">{__("No audit")}</span>
|
||||||
}
|
}
|
||||||
</Td>
|
</Td>
|
||||||
<Td>{nonconformity.owner.fullName}</Td>
|
<Td>{nonconformity.owner.fullName}</Td>
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ const updateNonconformitySchema = z.object({
|
|||||||
effectivenessCheck: z.string().optional(),
|
effectivenessCheck: z.string().optional(),
|
||||||
status: z.enum(["OPEN", "IN_PROGRESS", "CLOSED"]),
|
status: z.enum(["OPEN", "IN_PROGRESS", "CLOSED"]),
|
||||||
ownerId: z.string().min(1, "Owner is required"),
|
ownerId: z.string().min(1, "Owner is required"),
|
||||||
auditId: z.string().min(1, "Audit is required"),
|
auditId: z.string().optional(),
|
||||||
});
|
});
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
@@ -198,7 +198,6 @@ export default function NonconformityDetailsPage(props: Props) {
|
|||||||
name="auditId"
|
name="auditId"
|
||||||
label={__("Audit")}
|
label={__("Audit")}
|
||||||
error={formState.errors.auditId?.message}
|
error={formState.errors.auditId?.message}
|
||||||
required
|
|
||||||
disabled={isSnapshotMode}
|
disabled={isSnapshotMode}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* @generated SignedSource<<b53ef2729d5b435baeb0d3b068be8cef>>
|
* @generated SignedSource<<310dfd9974ac15af86b8e8ecf21d2b5c>>
|
||||||
* @lightSyntaxTransform
|
* @lightSyntaxTransform
|
||||||
* @nogrep
|
* @nogrep
|
||||||
*/
|
*/
|
||||||
@@ -24,7 +24,7 @@ export type NonconformitiesPageFragment$data = {
|
|||||||
};
|
};
|
||||||
readonly id: string;
|
readonly id: string;
|
||||||
readonly name: string | null | undefined;
|
readonly name: string | null | undefined;
|
||||||
};
|
} | null | undefined;
|
||||||
readonly correctiveAction: string | null | undefined;
|
readonly correctiveAction: string | null | undefined;
|
||||||
readonly createdAt: any;
|
readonly createdAt: any;
|
||||||
readonly dateIdentified: any | null | undefined;
|
readonly dateIdentified: any | null | undefined;
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ import { formatDatetime, getStatusOptions } from "@probo/helpers";
|
|||||||
const schema = z.object({
|
const schema = z.object({
|
||||||
referenceId: z.string().min(1, "Reference ID is required"),
|
referenceId: z.string().min(1, "Reference ID is required"),
|
||||||
description: z.string().optional(),
|
description: z.string().optional(),
|
||||||
auditId: z.string().min(1, "Audit is required"),
|
auditId: z.string().optional(),
|
||||||
dateIdentified: z.string().optional(),
|
dateIdentified: z.string().optional(),
|
||||||
rootCause: z.string().min(1, "Root cause is required"),
|
rootCause: z.string().min(1, "Root cause is required"),
|
||||||
correctiveAction: z.string().optional(),
|
correctiveAction: z.string().optional(),
|
||||||
@@ -78,7 +78,7 @@ export function CreateNonconformityDialog({
|
|||||||
organizationId,
|
organizationId,
|
||||||
referenceId: formData.referenceId,
|
referenceId: formData.referenceId,
|
||||||
description: formData.description || undefined,
|
description: formData.description || undefined,
|
||||||
auditId: formData.auditId,
|
auditId: formData.auditId || undefined,
|
||||||
dateIdentified: formatDatetime(formData.dateIdentified),
|
dateIdentified: formatDatetime(formData.dateIdentified),
|
||||||
rootCause: formData.rootCause,
|
rootCause: formData.rootCause,
|
||||||
correctiveAction: formData.correctiveAction || undefined,
|
correctiveAction: formData.correctiveAction || undefined,
|
||||||
@@ -128,7 +128,6 @@ export function CreateNonconformityDialog({
|
|||||||
name="auditId"
|
name="auditId"
|
||||||
label={__("Audit")}
|
label={__("Audit")}
|
||||||
error={formState.errors.auditId?.message}
|
error={formState.errors.auditId?.message}
|
||||||
required
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div className="space-y-2">
|
<div className="space-y-2">
|
||||||
|
|||||||
4
pkg/coredata/migrations/20251208T172842Z.sql
Normal file
4
pkg/coredata/migrations/20251208T172842Z.sql
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
ALTER TABLE nonconformities DROP CONSTRAINT IF EXISTS nonconformities_audit_id_fkey;
|
||||||
|
ALTER TABLE nonconformities ALTER COLUMN audit_id DROP NOT NULL;
|
||||||
|
ALTER TABLE nonconformities ADD CONSTRAINT nonconformities_audit_id_fkey
|
||||||
|
FOREIGN KEY (audit_id) REFERENCES audits(id) ON UPDATE CASCADE ON DELETE SET NULL;
|
||||||
@@ -34,7 +34,7 @@ type (
|
|||||||
SourceID *gid.GID `db:"source_id"`
|
SourceID *gid.GID `db:"source_id"`
|
||||||
ReferenceID string `db:"reference_id"`
|
ReferenceID string `db:"reference_id"`
|
||||||
Description *string `db:"description"`
|
Description *string `db:"description"`
|
||||||
AuditID gid.GID `db:"audit_id"`
|
AuditID *gid.GID `db:"audit_id"`
|
||||||
DateIdentified *time.Time `db:"date_identified"`
|
DateIdentified *time.Time `db:"date_identified"`
|
||||||
RootCause string `db:"root_cause"`
|
RootCause string `db:"root_cause"`
|
||||||
CorrectiveAction *string `db:"corrective_action"`
|
CorrectiveAction *string `db:"corrective_action"`
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ type (
|
|||||||
OrganizationID gid.GID
|
OrganizationID gid.GID
|
||||||
ReferenceID string
|
ReferenceID string
|
||||||
Description *string
|
Description *string
|
||||||
AuditID gid.GID
|
AuditID *gid.GID
|
||||||
DateIdentified *time.Time
|
DateIdentified *time.Time
|
||||||
RootCause string
|
RootCause string
|
||||||
CorrectiveAction *string
|
CorrectiveAction *string
|
||||||
@@ -53,7 +53,7 @@ type (
|
|||||||
RootCause *string
|
RootCause *string
|
||||||
CorrectiveAction **string
|
CorrectiveAction **string
|
||||||
OwnerID *gid.GID
|
OwnerID *gid.GID
|
||||||
AuditID *gid.GID
|
AuditID **gid.GID
|
||||||
DueDate **time.Time
|
DueDate **time.Time
|
||||||
Status *coredata.NonconformityStatus
|
Status *coredata.NonconformityStatus
|
||||||
EffectivenessCheck **string
|
EffectivenessCheck **string
|
||||||
@@ -66,7 +66,7 @@ func (cnr *CreateNonconformityRequest) Validate() error {
|
|||||||
v.Check(cnr.OrganizationID, "organization_id", validator.Required(), validator.GID(coredata.OrganizationEntityType))
|
v.Check(cnr.OrganizationID, "organization_id", validator.Required(), validator.GID(coredata.OrganizationEntityType))
|
||||||
v.Check(cnr.ReferenceID, "reference_id", validator.Required(), validator.SafeText(NameMaxLength))
|
v.Check(cnr.ReferenceID, "reference_id", validator.Required(), validator.SafeText(NameMaxLength))
|
||||||
v.Check(cnr.Description, "description", validator.SafeText(ContentMaxLength))
|
v.Check(cnr.Description, "description", validator.SafeText(ContentMaxLength))
|
||||||
v.Check(cnr.AuditID, "audit_id", validator.Required(), validator.GID(coredata.AuditEntityType))
|
v.Check(cnr.AuditID, "audit_id", validator.GID(coredata.AuditEntityType))
|
||||||
v.Check(cnr.RootCause, "root_cause", validator.Required(), validator.SafeText(ContentMaxLength))
|
v.Check(cnr.RootCause, "root_cause", validator.Required(), validator.SafeText(ContentMaxLength))
|
||||||
v.Check(cnr.CorrectiveAction, "corrective_action", validator.SafeText(ContentMaxLength))
|
v.Check(cnr.CorrectiveAction, "corrective_action", validator.SafeText(ContentMaxLength))
|
||||||
v.Check(cnr.OwnerID, "owner_id", validator.Required(), validator.GID(coredata.PeopleEntityType))
|
v.Check(cnr.OwnerID, "owner_id", validator.Required(), validator.GID(coredata.PeopleEntityType))
|
||||||
@@ -149,10 +149,12 @@ func (s *NonconformityService) Create(
|
|||||||
return fmt.Errorf("cannot load organization: %w", err)
|
return fmt.Errorf("cannot load organization: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if req.AuditID != nil {
|
||||||
audit := &coredata.Audit{}
|
audit := &coredata.Audit{}
|
||||||
if err := audit.LoadByID(ctx, conn, s.svc.scope, req.AuditID); err != nil {
|
if err := audit.LoadByID(ctx, conn, s.svc.scope, *req.AuditID); err != nil {
|
||||||
return fmt.Errorf("cannot load audit: %w", err)
|
return fmt.Errorf("cannot load audit: %w", err)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
people := &coredata.People{}
|
people := &coredata.People{}
|
||||||
if err := people.LoadByID(ctx, conn, s.svc.scope, req.OwnerID); err != nil {
|
if err := people.LoadByID(ctx, conn, s.svc.scope, req.OwnerID); err != nil {
|
||||||
|
|||||||
@@ -2155,7 +2155,7 @@ type Nonconformity implements Node {
|
|||||||
organization: Organization! @goField(forceResolver: true)
|
organization: Organization! @goField(forceResolver: true)
|
||||||
referenceId: String!
|
referenceId: String!
|
||||||
description: String
|
description: String
|
||||||
audit: Audit! @goField(forceResolver: true)
|
audit: Audit @goField(forceResolver: true)
|
||||||
dateIdentified: Datetime
|
dateIdentified: Datetime
|
||||||
rootCause: String!
|
rootCause: String!
|
||||||
correctiveAction: String
|
correctiveAction: String
|
||||||
@@ -3661,7 +3661,7 @@ input CreateNonconformityInput {
|
|||||||
organizationId: ID!
|
organizationId: ID!
|
||||||
referenceId: String!
|
referenceId: String!
|
||||||
description: String
|
description: String
|
||||||
auditId: ID!
|
auditId: ID
|
||||||
dateIdentified: Datetime
|
dateIdentified: Datetime
|
||||||
rootCause: String!
|
rootCause: String!
|
||||||
correctiveAction: String
|
correctiveAction: String
|
||||||
@@ -3679,7 +3679,7 @@ input UpdateNonconformityInput {
|
|||||||
rootCause: String
|
rootCause: String
|
||||||
correctiveAction: String @goField(omittable: true)
|
correctiveAction: String @goField(omittable: true)
|
||||||
ownerId: ID
|
ownerId: ID
|
||||||
auditId: ID
|
auditId: ID @goField(omittable: true)
|
||||||
dueDate: Datetime @goField(omittable: true)
|
dueDate: Datetime @goField(omittable: true)
|
||||||
status: NonconformityStatus
|
status: NonconformityStatus
|
||||||
effectivenessCheck: String @goField(omittable: true)
|
effectivenessCheck: String @goField(omittable: true)
|
||||||
|
|||||||
@@ -11708,7 +11708,7 @@ type Nonconformity implements Node {
|
|||||||
organization: Organization! @goField(forceResolver: true)
|
organization: Organization! @goField(forceResolver: true)
|
||||||
referenceId: String!
|
referenceId: String!
|
||||||
description: String
|
description: String
|
||||||
audit: Audit! @goField(forceResolver: true)
|
audit: Audit @goField(forceResolver: true)
|
||||||
dateIdentified: Datetime
|
dateIdentified: Datetime
|
||||||
rootCause: String!
|
rootCause: String!
|
||||||
correctiveAction: String
|
correctiveAction: String
|
||||||
@@ -13214,7 +13214,7 @@ input CreateNonconformityInput {
|
|||||||
organizationId: ID!
|
organizationId: ID!
|
||||||
referenceId: String!
|
referenceId: String!
|
||||||
description: String
|
description: String
|
||||||
auditId: ID!
|
auditId: ID
|
||||||
dateIdentified: Datetime
|
dateIdentified: Datetime
|
||||||
rootCause: String!
|
rootCause: String!
|
||||||
correctiveAction: String
|
correctiveAction: String
|
||||||
@@ -13232,7 +13232,7 @@ input UpdateNonconformityInput {
|
|||||||
rootCause: String
|
rootCause: String
|
||||||
correctiveAction: String @goField(omittable: true)
|
correctiveAction: String @goField(omittable: true)
|
||||||
ownerId: ID
|
ownerId: ID
|
||||||
auditId: ID
|
auditId: ID @goField(omittable: true)
|
||||||
dueDate: Datetime @goField(omittable: true)
|
dueDate: Datetime @goField(omittable: true)
|
||||||
status: NonconformityStatus
|
status: NonconformityStatus
|
||||||
effectivenessCheck: String @goField(omittable: true)
|
effectivenessCheck: String @goField(omittable: true)
|
||||||
@@ -37092,9 +37092,9 @@ func (ec *executionContext) _Nonconformity_audit(ctx context.Context, field grap
|
|||||||
return ec.resolvers.Nonconformity().Audit(ctx, obj)
|
return ec.resolvers.Nonconformity().Audit(ctx, obj)
|
||||||
},
|
},
|
||||||
nil,
|
nil,
|
||||||
ec.marshalNAudit2ᚖgoᚗproboᚗincᚋproboᚋpkgᚋserverᚋapiᚋconsoleᚋv1ᚋtypesᚐAudit,
|
ec.marshalOAudit2ᚖgoᚗproboᚗincᚋproboᚋpkgᚋserverᚋapiᚋconsoleᚋv1ᚋtypesᚐAudit,
|
||||||
true,
|
|
||||||
true,
|
true,
|
||||||
|
false,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -57528,7 +57528,7 @@ func (ec *executionContext) unmarshalInputCreateNonconformityInput(ctx context.C
|
|||||||
it.Description = data
|
it.Description = data
|
||||||
case "auditId":
|
case "auditId":
|
||||||
ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("auditId"))
|
ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("auditId"))
|
||||||
data, err := ec.unmarshalNID2goᚗproboᚗincᚋproboᚋpkgᚋgidᚐGID(ctx, v)
|
data, err := ec.unmarshalOID2ᚖgoᚗproboᚗincᚋproboᚋpkgᚋgidᚐGID(ctx, v)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return it, err
|
return it, err
|
||||||
}
|
}
|
||||||
@@ -62420,7 +62420,7 @@ func (ec *executionContext) unmarshalInputUpdateNonconformityInput(ctx context.C
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return it, err
|
return it, err
|
||||||
}
|
}
|
||||||
it.AuditID = data
|
it.AuditID = graphql.OmittableOf(data)
|
||||||
case "dueDate":
|
case "dueDate":
|
||||||
ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("dueDate"))
|
ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("dueDate"))
|
||||||
data, err := ec.unmarshalODatetime2ᚖtimeᚐTime(ctx, v)
|
data, err := ec.unmarshalODatetime2ᚖtimeᚐTime(ctx, v)
|
||||||
@@ -73824,16 +73824,13 @@ func (ec *executionContext) _Nonconformity(ctx context.Context, sel ast.Selectio
|
|||||||
case "audit":
|
case "audit":
|
||||||
field := field
|
field := field
|
||||||
|
|
||||||
innerFunc := func(ctx context.Context, fs *graphql.FieldSet) (res graphql.Marshaler) {
|
innerFunc := func(ctx context.Context, _ *graphql.FieldSet) (res graphql.Marshaler) {
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
ec.Error(ctx, ec.Recover(ctx, r))
|
ec.Error(ctx, ec.Recover(ctx, r))
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
res = ec._Nonconformity_audit(ctx, field, obj)
|
res = ec._Nonconformity_audit(ctx, field, obj)
|
||||||
if res == graphql.Null {
|
|
||||||
atomic.AddUint32(&fs.Invalids, 1)
|
|
||||||
}
|
|
||||||
return res
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83347,10 +83344,6 @@ func (ec *executionContext) marshalNAssignTaskPayload2ᚖgoᚗproboᚗincᚋprob
|
|||||||
return ec._AssignTaskPayload(ctx, sel, v)
|
return ec._AssignTaskPayload(ctx, sel, v)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ec *executionContext) marshalNAudit2goᚗproboᚗincᚋproboᚋpkgᚋserverᚋapiᚋconsoleᚋv1ᚋtypesᚐAudit(ctx context.Context, sel ast.SelectionSet, v types.Audit) graphql.Marshaler {
|
|
||||||
return ec._Audit(ctx, sel, &v)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (ec *executionContext) marshalNAudit2ᚖgoᚗproboᚗincᚋproboᚋpkgᚋserverᚋapiᚋconsoleᚋv1ᚋtypesᚐAudit(ctx context.Context, sel ast.SelectionSet, v *types.Audit) graphql.Marshaler {
|
func (ec *executionContext) marshalNAudit2ᚖgoᚗproboᚗincᚋproboᚋpkgᚋserverᚋapiᚋconsoleᚋv1ᚋtypesᚐAudit(ctx context.Context, sel ast.SelectionSet, v *types.Audit) graphql.Marshaler {
|
||||||
if v == nil {
|
if v == nil {
|
||||||
if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
|
if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
|
||||||
|
|||||||
@@ -377,7 +377,7 @@ type CreateNonconformityInput struct {
|
|||||||
OrganizationID gid.GID `json:"organizationId"`
|
OrganizationID gid.GID `json:"organizationId"`
|
||||||
ReferenceID string `json:"referenceId"`
|
ReferenceID string `json:"referenceId"`
|
||||||
Description *string `json:"description,omitempty"`
|
Description *string `json:"description,omitempty"`
|
||||||
AuditID gid.GID `json:"auditId"`
|
AuditID *gid.GID `json:"auditId,omitempty"`
|
||||||
DateIdentified *time.Time `json:"dateIdentified,omitempty"`
|
DateIdentified *time.Time `json:"dateIdentified,omitempty"`
|
||||||
RootCause string `json:"rootCause"`
|
RootCause string `json:"rootCause"`
|
||||||
CorrectiveAction *string `json:"correctiveAction,omitempty"`
|
CorrectiveAction *string `json:"correctiveAction,omitempty"`
|
||||||
@@ -1368,7 +1368,7 @@ type Nonconformity struct {
|
|||||||
Organization *Organization `json:"organization"`
|
Organization *Organization `json:"organization"`
|
||||||
ReferenceID string `json:"referenceId"`
|
ReferenceID string `json:"referenceId"`
|
||||||
Description *string `json:"description,omitempty"`
|
Description *string `json:"description,omitempty"`
|
||||||
Audit *Audit `json:"audit"`
|
Audit *Audit `json:"audit,omitempty"`
|
||||||
DateIdentified *time.Time `json:"dateIdentified,omitempty"`
|
DateIdentified *time.Time `json:"dateIdentified,omitempty"`
|
||||||
RootCause string `json:"rootCause"`
|
RootCause string `json:"rootCause"`
|
||||||
CorrectiveAction *string `json:"correctiveAction,omitempty"`
|
CorrectiveAction *string `json:"correctiveAction,omitempty"`
|
||||||
@@ -1997,7 +1997,7 @@ type UpdateNonconformityInput struct {
|
|||||||
RootCause *string `json:"rootCause,omitempty"`
|
RootCause *string `json:"rootCause,omitempty"`
|
||||||
CorrectiveAction graphql.Omittable[*string] `json:"correctiveAction,omitempty"`
|
CorrectiveAction graphql.Omittable[*string] `json:"correctiveAction,omitempty"`
|
||||||
OwnerID *gid.GID `json:"ownerId,omitempty"`
|
OwnerID *gid.GID `json:"ownerId,omitempty"`
|
||||||
AuditID *gid.GID `json:"auditId,omitempty"`
|
AuditID graphql.Omittable[*gid.GID] `json:"auditId,omitempty"`
|
||||||
DueDate graphql.Omittable[*time.Time] `json:"dueDate,omitempty"`
|
DueDate graphql.Omittable[*time.Time] `json:"dueDate,omitempty"`
|
||||||
Status *coredata.NonconformityStatus `json:"status,omitempty"`
|
Status *coredata.NonconformityStatus `json:"status,omitempty"`
|
||||||
EffectivenessCheck graphql.Omittable[*string] `json:"effectivenessCheck,omitempty"`
|
EffectivenessCheck graphql.Omittable[*string] `json:"effectivenessCheck,omitempty"`
|
||||||
|
|||||||
@@ -3984,7 +3984,7 @@ func (r *mutationResolver) UpdateNonconformity(ctx context.Context, input types.
|
|||||||
RootCause: input.RootCause,
|
RootCause: input.RootCause,
|
||||||
CorrectiveAction: UnwrapOmittable(input.CorrectiveAction),
|
CorrectiveAction: UnwrapOmittable(input.CorrectiveAction),
|
||||||
OwnerID: input.OwnerID,
|
OwnerID: input.OwnerID,
|
||||||
AuditID: input.AuditID,
|
AuditID: UnwrapOmittable(input.AuditID),
|
||||||
DueDate: UnwrapOmittable(input.DueDate),
|
DueDate: UnwrapOmittable(input.DueDate),
|
||||||
Status: input.Status,
|
Status: input.Status,
|
||||||
EffectivenessCheck: UnwrapOmittable(input.EffectivenessCheck),
|
EffectivenessCheck: UnwrapOmittable(input.EffectivenessCheck),
|
||||||
@@ -4596,7 +4596,11 @@ func (r *nonconformityResolver) Audit(ctx context.Context, obj *types.Nonconform
|
|||||||
panic(fmt.Errorf("cannot get nonconformity: %w", err))
|
panic(fmt.Errorf("cannot get nonconformity: %w", err))
|
||||||
}
|
}
|
||||||
|
|
||||||
audit, err := prb.Audits.Get(ctx, nonconformity.AuditID)
|
if nonconformity.AuditID == nil {
|
||||||
|
return nil, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
audit, err := prb.Audits.Get(ctx, *nonconformity.AuditID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
var errNotFound *coredata.ErrAuditNotFound
|
var errNotFound *coredata.ErrAuditNotFound
|
||||||
if errors.As(err, &errNotFound) {
|
if errors.As(err, &errNotFound) {
|
||||||
|
|||||||
@@ -784,7 +784,7 @@ func (r *Resolver) UpdateNonconformityTool(ctx context.Context, req *mcp.CallToo
|
|||||||
RootCause: input.RootCause,
|
RootCause: input.RootCause,
|
||||||
CorrectiveAction: UnwrapOmittable(input.CorrectiveAction),
|
CorrectiveAction: UnwrapOmittable(input.CorrectiveAction),
|
||||||
OwnerID: input.OwnerID,
|
OwnerID: input.OwnerID,
|
||||||
AuditID: input.AuditID,
|
AuditID: UnwrapOmittable(input.AuditID),
|
||||||
DueDate: UnwrapOmittable(input.DueDate),
|
DueDate: UnwrapOmittable(input.DueDate),
|
||||||
Status: input.Status,
|
Status: input.Status,
|
||||||
EffectivenessCheck: UnwrapOmittable(input.EffectivenessCheck),
|
EffectivenessCheck: UnwrapOmittable(input.EffectivenessCheck),
|
||||||
|
|||||||
@@ -1496,7 +1496,6 @@ components:
|
|||||||
- id
|
- id
|
||||||
- organization_id
|
- organization_id
|
||||||
- reference_id
|
- reference_id
|
||||||
- audit_id
|
|
||||||
- root_cause
|
- root_cause
|
||||||
- owner_id
|
- owner_id
|
||||||
- status
|
- status
|
||||||
@@ -1525,7 +1524,11 @@ components:
|
|||||||
- "null"
|
- "null"
|
||||||
description: Description
|
description: Description
|
||||||
audit_id:
|
audit_id:
|
||||||
$ref: "#/components/schemas/GID"
|
anyOf:
|
||||||
|
- $ref: "#/components/schemas/GID"
|
||||||
|
description: Audit ID
|
||||||
|
- type: "null"
|
||||||
|
description: No audit
|
||||||
description: Audit ID
|
description: Audit ID
|
||||||
date_identified:
|
date_identified:
|
||||||
type:
|
type:
|
||||||
@@ -1626,7 +1629,6 @@ components:
|
|||||||
required:
|
required:
|
||||||
- organization_id
|
- organization_id
|
||||||
- reference_id
|
- reference_id
|
||||||
- audit_id
|
|
||||||
- root_cause
|
- root_cause
|
||||||
- owner_id
|
- owner_id
|
||||||
- status
|
- status
|
||||||
@@ -1641,7 +1643,11 @@ components:
|
|||||||
type: string
|
type: string
|
||||||
description: Description
|
description: Description
|
||||||
audit_id:
|
audit_id:
|
||||||
$ref: "#/components/schemas/GID"
|
anyOf:
|
||||||
|
- $ref: "#/components/schemas/GID"
|
||||||
|
description: Audit ID
|
||||||
|
- type: "null"
|
||||||
|
description: No audit
|
||||||
description: Audit ID
|
description: Audit ID
|
||||||
date_identified:
|
date_identified:
|
||||||
type: string
|
type: string
|
||||||
@@ -1718,6 +1724,7 @@ components:
|
|||||||
$ref: "#/components/schemas/GID"
|
$ref: "#/components/schemas/GID"
|
||||||
- type: "null"
|
- type: "null"
|
||||||
description: Audit ID
|
description: Audit ID
|
||||||
|
go.probo.inc/mcpgen/omittable: true
|
||||||
due_date:
|
due_date:
|
||||||
type: ["string", "null"]
|
type: ["string", "null"]
|
||||||
format: date-time
|
format: date-time
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ var (
|
|||||||
AddFrameworkToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["framework"],"properties":{"framework":{"type":"object","required":["id","organization_id","name","created_at","updated_at"],"properties":{"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Framework description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Framework name"},"organization_id":{"type":"string","format":"string"},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
AddFrameworkToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["framework"],"properties":{"framework":{"type":"object","required":["id","organization_id","name","created_at","updated_at"],"properties":{"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Framework description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Framework name"},"organization_id":{"type":"string","format":"string"},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
AddMeasureToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","name","category"],"properties":{"category":{"type":"string","description":"Measure category"},"description":{"type":"string","description":"Measure description"},"name":{"type":"string","description":"Measure name"},"organization_id":{"type":"string","format":"string"}}}`)
|
AddMeasureToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","name","category"],"properties":{"category":{"type":"string","description":"Measure category"},"description":{"type":"string","description":"Measure description"},"name":{"type":"string","description":"Measure name"},"organization_id":{"type":"string","format":"string"}}}`)
|
||||||
AddMeasureToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measure"],"properties":{"measure":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
AddMeasureToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measure"],"properties":{"measure":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
AddNonconformityToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","reference_id","audit_id","root_cause","owner_id","status"],"properties":{"audit_id":{"type":"string","format":"string"},"corrective_action":{"type":"string","description":"Corrective action"},"date_identified":{"type":"string","description":"Date identified","format":"date-time"},"description":{"type":"string","description":"Description"},"due_date":{"type":"string","description":"Due date","format":"date-time"},"effectiveness_check":{"type":"string","description":"Effectiveness check"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"status":{"description":"Status","anyOf":[{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},{"type":"null","description":"No status"}]}}}`)
|
AddNonconformityToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","reference_id","root_cause","owner_id","status"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No audit"}]},"corrective_action":{"type":"string","description":"Corrective action"},"date_identified":{"type":"string","description":"Date identified","format":"date-time"},"description":{"type":"string","description":"Description"},"due_date":{"type":"string","description":"Due date","format":"date-time"},"effectiveness_check":{"type":"string","description":"Effectiveness check"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"status":{"description":"Status","anyOf":[{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},{"type":"null","description":"No status"}]}}}`)
|
||||||
AddNonconformityToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformity"],"properties":{"nonconformity":{"type":"object","required":["id","organization_id","reference_id","audit_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"type":"string","format":"string"},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
AddNonconformityToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformity"],"properties":{"nonconformity":{"type":"object","required":["id","organization_id","reference_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No audit"}]},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
AddObligationToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","owner_id","status"],"properties":{"actions_to_be_implemented":{"type":"string","description":"Actions to be implemented"},"area":{"type":"string","description":"Area"},"due_date":{"type":"string","description":"Due date","format":"date-time"},"last_review_date":{"type":"string","description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"type":"string","description":"Regulator"},"requirement":{"type":"string","description":"Requirement"},"source":{"type":"string","description":"Source"},"status":{"description":"Status","anyOf":[{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},{"type":"null","description":"No status"}]}}}`)
|
AddObligationToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","owner_id","status"],"properties":{"actions_to_be_implemented":{"type":"string","description":"Actions to be implemented"},"area":{"type":"string","description":"Area"},"due_date":{"type":"string","description":"Due date","format":"date-time"},"last_review_date":{"type":"string","description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"type":"string","description":"Regulator"},"requirement":{"type":"string","description":"Requirement"},"source":{"type":"string","description":"Source"},"status":{"description":"Status","anyOf":[{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},{"type":"null","description":"No status"}]}}}`)
|
||||||
AddObligationToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligation"],"properties":{"obligation":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
AddObligationToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligation"],"properties":{"obligation":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
AddPeopleToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","full_name","primary_email_address","kind"],"properties":{"additional_email_addresses":{"type":"array","description":"Additional email addresses","items":{"type":"string"}},"contract_end_date":{"type":"string","description":"Contract end date","format":"date-time"},"contract_start_date":{"type":"string","description":"Contract start date","format":"date-time"},"full_name":{"type":"string","description":"Full name"},"kind":{"type":"string","enum":["EMPLOYEE","CONTRACTOR","SERVICE_ACCOUNT"]},"organization_id":{"type":"string","format":"string"},"position":{"type":"string","description":"Position"},"primary_email_address":{"type":"string","description":"Primary email address"}}}`)
|
AddPeopleToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id","full_name","primary_email_address","kind"],"properties":{"additional_email_addresses":{"type":"array","description":"Additional email addresses","items":{"type":"string"}},"contract_end_date":{"type":"string","description":"Contract end date","format":"date-time"},"contract_start_date":{"type":"string","description":"Contract start date","format":"date-time"},"full_name":{"type":"string","description":"Full name"},"kind":{"type":"string","enum":["EMPLOYEE","CONTRACTOR","SERVICE_ACCOUNT"]},"organization_id":{"type":"string","format":"string"},"position":{"type":"string","description":"Position"},"primary_email_address":{"type":"string","description":"Primary email address"}}}`)
|
||||||
@@ -71,7 +71,7 @@ var (
|
|||||||
GetMeasureToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
GetMeasureToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
||||||
GetMeasureToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measure"],"properties":{"measure":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
GetMeasureToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measure"],"properties":{"measure":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
GetNonconformityToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
GetNonconformityToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
||||||
GetNonconformityToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformity"],"properties":{"nonconformity":{"type":"object","required":["id","organization_id","reference_id","audit_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"type":"string","format":"string"},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
GetNonconformityToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformity"],"properties":{"nonconformity":{"type":"object","required":["id","organization_id","reference_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No audit"}]},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
GetObligationToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
GetObligationToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
||||||
GetObligationToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligation"],"properties":{"obligation":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
GetObligationToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligation"],"properties":{"obligation":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
GetPeopleToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
GetPeopleToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"id":{"type":"string","format":"string"}}}`)
|
||||||
@@ -111,7 +111,7 @@ var (
|
|||||||
ListMeasuresToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id"],"properties":{"cursor":{"type":"string","format":"string"},"filter":{"type":"object","properties":{"query":{"type":"string","description":"Search query"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]}}},"order_by":{"type":"object","required":["field","direction"],"properties":{"direction":{"type":"string","enum":["ASC","DESC"]},"field":{"type":"string","enum":["CREATED_AT","NAME"]}}},"organization_id":{"type":"string","format":"string"},"size":{"type":"integer","description":"Page size"}}}`)
|
ListMeasuresToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id"],"properties":{"cursor":{"type":"string","format":"string"},"filter":{"type":"object","properties":{"query":{"type":"string","description":"Search query"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]}}},"order_by":{"type":"object","required":["field","direction"],"properties":{"direction":{"type":"string","enum":["ASC","DESC"]},"field":{"type":"string","enum":["CREATED_AT","NAME"]}}},"organization_id":{"type":"string","format":"string"},"size":{"type":"integer","description":"Page size"}}}`)
|
||||||
ListMeasuresToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measures"],"properties":{"measures":{"type":"array","items":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}},"next_cursor":{"type":"string","format":"string"}}}`)
|
ListMeasuresToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measures"],"properties":{"measures":{"type":"array","items":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}},"next_cursor":{"type":"string","format":"string"}}}`)
|
||||||
ListNonconformitiesToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id"],"properties":{"cursor":{"type":"string","format":"string"},"filter":{"type":"object","properties":{"snapshot_id":{"type":"string","format":"string"}}},"order_by":{"type":"object","required":["field","direction"],"properties":{"direction":{"type":"string","enum":["ASC","DESC"]},"field":{"type":"string","enum":["CREATED_AT","REFERENCE_ID","DATE_IDENTIFIED","DUE_DATE","STATUS"]}}},"organization_id":{"type":"string","format":"string"},"size":{"type":"integer","description":"Page size"}}}`)
|
ListNonconformitiesToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id"],"properties":{"cursor":{"type":"string","format":"string"},"filter":{"type":"object","properties":{"snapshot_id":{"type":"string","format":"string"}}},"order_by":{"type":"object","required":["field","direction"],"properties":{"direction":{"type":"string","enum":["ASC","DESC"]},"field":{"type":"string","enum":["CREATED_AT","REFERENCE_ID","DATE_IDENTIFIED","DUE_DATE","STATUS"]}}},"organization_id":{"type":"string","format":"string"},"size":{"type":"integer","description":"Page size"}}}`)
|
||||||
ListNonconformitiesToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformities"],"properties":{"next_cursor":{"type":"string","format":"string"},"nonconformities":{"type":"array","items":{"type":"object","required":["id","organization_id","reference_id","audit_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"type":"string","format":"string"},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}}`)
|
ListNonconformitiesToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformities"],"properties":{"next_cursor":{"type":"string","format":"string"},"nonconformities":{"type":"array","items":{"type":"object","required":["id","organization_id","reference_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No audit"}]},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}}`)
|
||||||
ListObligationsToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id"],"properties":{"cursor":{"type":"string","format":"string"},"filter":{"type":"object","properties":{"snapshot_id":{"type":"string","format":"string"}}},"order_by":{"type":"object","required":["field","direction"],"properties":{"direction":{"type":"string","enum":["ASC","DESC"]},"field":{"type":"string","enum":["CREATED_AT","LAST_REVIEW_DATE","DUE_DATE","STATUS"]}}},"organization_id":{"type":"string","format":"string"},"size":{"type":"integer","description":"Page size"}}}`)
|
ListObligationsToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["organization_id"],"properties":{"cursor":{"type":"string","format":"string"},"filter":{"type":"object","properties":{"snapshot_id":{"type":"string","format":"string"}}},"order_by":{"type":"object","required":["field","direction"],"properties":{"direction":{"type":"string","enum":["ASC","DESC"]},"field":{"type":"string","enum":["CREATED_AT","LAST_REVIEW_DATE","DUE_DATE","STATUS"]}}},"organization_id":{"type":"string","format":"string"},"size":{"type":"integer","description":"Page size"}}}`)
|
||||||
ListObligationsToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligations"],"properties":{"next_cursor":{"type":"string","format":"string"},"obligations":{"type":"array","items":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}}`)
|
ListObligationsToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligations"],"properties":{"next_cursor":{"type":"string","format":"string"},"obligations":{"type":"array","items":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}}`)
|
||||||
ListOrganizationsToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","properties":{"organization_id":{"type":"string","format":"string"}}}`)
|
ListOrganizationsToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","properties":{"organization_id":{"type":"string","format":"string"}}}`)
|
||||||
@@ -161,7 +161,7 @@ var (
|
|||||||
UpdateMeasureToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"category":{"type":"string","description":"Measure category"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]}}}`)
|
UpdateMeasureToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"category":{"type":"string","description":"Measure category"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]}}}`)
|
||||||
UpdateMeasureToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measure"],"properties":{"measure":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
UpdateMeasureToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["measure"],"properties":{"measure":{"type":"object","required":["id","category","name","state","created_at","updated_at"],"properties":{"category":{"type":"string","description":"Measure category"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"description":{"description":"Measure description"},"id":{"type":"string","format":"string"},"name":{"type":"string","description":"Measure name"},"state":{"type":"string","enum":["NOT_STARTED","IN_PROGRESS","NOT_APPLICABLE","IMPLEMENTED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
UpdateNonconformityToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null"}]},"corrective_action":{"description":"Corrective action"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"owner_id":{"description":"Owner ID","anyOf":[{"type":"string","format":"string"},{"type":"null"}]},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]}}}`)
|
UpdateNonconformityToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null"}]},"corrective_action":{"description":"Corrective action"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"owner_id":{"description":"Owner ID","anyOf":[{"type":"string","format":"string"},{"type":"null"}]},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]}}}`)
|
||||||
UpdateNonconformityToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformity"],"properties":{"nonconformity":{"type":"object","required":["id","organization_id","reference_id","audit_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"type":"string","format":"string"},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
UpdateNonconformityToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["nonconformity"],"properties":{"nonconformity":{"type":"object","required":["id","organization_id","reference_id","root_cause","owner_id","status","created_at","updated_at"],"properties":{"audit_id":{"description":"Audit ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No audit"}]},"corrective_action":{"description":"Corrective action"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"date_identified":{"description":"Date identified","format":"date-time"},"description":{"description":"Description"},"due_date":{"description":"Due date","format":"date-time"},"effectiveness_check":{"description":"Effectiveness check"},"id":{"type":"string","format":"string"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"reference_id":{"type":"string","description":"Reference ID"},"root_cause":{"type":"string","description":"Root cause"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"status":{"type":"string","enum":["OPEN","IN_PROGRESS","CLOSED"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
UpdateObligationToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"owner_id":{"description":"Owner ID","anyOf":[{"type":"string","format":"string"},{"type":"null"}]},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"source":{"description":"Source"},"status":{"description":"Status","anyOf":[{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},{"type":"null","description":"No status"}]}}}`)
|
UpdateObligationToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"owner_id":{"description":"Owner ID","anyOf":[{"type":"string","format":"string"},{"type":"null"}]},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"source":{"description":"Source"},"status":{"description":"Status","anyOf":[{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},{"type":"null","description":"No status"}]}}}`)
|
||||||
UpdateObligationToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligation"],"properties":{"obligation":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
UpdateObligationToolOutputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["obligation"],"properties":{"obligation":{"type":"object","required":["id","organization_id","owner_id","status","created_at","updated_at"],"properties":{"actions_to_be_implemented":{"description":"Actions to be implemented"},"area":{"description":"Area"},"created_at":{"type":"string","description":"Creation timestamp","format":"date-time"},"due_date":{"description":"Due date","format":"date-time"},"id":{"type":"string","format":"string"},"last_review_date":{"description":"Last review date","format":"date-time"},"organization_id":{"type":"string","format":"string"},"owner_id":{"type":"string","format":"string"},"regulator":{"description":"Regulator"},"requirement":{"description":"Requirement"},"snapshot_id":{"description":"Snapshot ID","anyOf":[{"type":"string","format":"string"},{"type":"null","description":"No snapshot"}]},"source":{"description":"Source"},"source_id":{"description":"Source ID"},"status":{"type":"string","enum":["NON_COMPLIANT","PARTIALLY_COMPLIANT","COMPLIANT"]},"updated_at":{"type":"string","description":"Update timestamp","format":"date-time"}}}}}`)
|
||||||
UpdatePeopleToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"additional_email_addresses":{"description":"Additional email addresses","anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null","description":"No additional email addresses"}]},"contract_end_date":{"description":"Contract end date","format":"date-time"},"contract_start_date":{"description":"Contract start date","format":"date-time"},"full_name":{"type":"string","description":"Full name"},"id":{"type":"string","format":"string"},"kind":{"type":"string","enum":["EMPLOYEE","CONTRACTOR","SERVICE_ACCOUNT"]},"position":{"description":"Position"},"primary_email_address":{"type":"string","description":"Primary email address"}}}`)
|
UpdatePeopleToolInputSchema = mcp.MustUnmarshalSchema(`{"type":"object","required":["id"],"properties":{"additional_email_addresses":{"description":"Additional email addresses","anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null","description":"No additional email addresses"}]},"contract_end_date":{"description":"Contract end date","format":"date-time"},"contract_start_date":{"description":"Contract start date","format":"date-time"},"full_name":{"type":"string","description":"Full name"},"id":{"type":"string","format":"string"},"kind":{"type":"string","enum":["EMPLOYEE","CONTRACTOR","SERVICE_ACCOUNT"]},"position":{"description":"Position"},"primary_email_address":{"type":"string","description":"Primary email address"}}}`)
|
||||||
@@ -344,7 +344,7 @@ type AddMeasureOutput struct {
|
|||||||
// AddNonconformityInput represents the schema
|
// AddNonconformityInput represents the schema
|
||||||
type AddNonconformityInput struct {
|
type AddNonconformityInput struct {
|
||||||
// Audit ID
|
// Audit ID
|
||||||
AuditID gid.GID `json:"audit_id"`
|
AuditID *gid.GID `json:"audit_id,omitempty"`
|
||||||
// Corrective action
|
// Corrective action
|
||||||
CorrectiveAction *string `json:"corrective_action,omitempty"`
|
CorrectiveAction *string `json:"corrective_action,omitempty"`
|
||||||
// Date identified
|
// Date identified
|
||||||
@@ -1450,7 +1450,7 @@ type MeasureOrderBy struct {
|
|||||||
// Nonconformity represents the schema
|
// Nonconformity represents the schema
|
||||||
type Nonconformity struct {
|
type Nonconformity struct {
|
||||||
// Audit ID
|
// Audit ID
|
||||||
AuditID gid.GID `json:"audit_id"`
|
AuditID *gid.GID `json:"audit_id,omitempty"`
|
||||||
// Corrective action
|
// Corrective action
|
||||||
CorrectiveAction *string `json:"corrective_action,omitempty"`
|
CorrectiveAction *string `json:"corrective_action,omitempty"`
|
||||||
// Creation timestamp
|
// Creation timestamp
|
||||||
@@ -1965,7 +1965,7 @@ type UpdateMeasureOutput struct {
|
|||||||
// UpdateNonconformityInput represents the schema
|
// UpdateNonconformityInput represents the schema
|
||||||
type UpdateNonconformityInput struct {
|
type UpdateNonconformityInput struct {
|
||||||
// Audit ID
|
// Audit ID
|
||||||
AuditID *gid.GID `json:"audit_id,omitempty"`
|
AuditID mcp.Omittable[*gid.GID] `json:"audit_id,omitempty"`
|
||||||
// Corrective action
|
// Corrective action
|
||||||
CorrectiveAction mcp.Omittable[*string] `json:"corrective_action,omitempty"`
|
CorrectiveAction mcp.Omittable[*string] `json:"corrective_action,omitempty"`
|
||||||
// Date identified
|
// Date identified
|
||||||
|
|||||||
Reference in New Issue
Block a user