FY2025 GRI report · Bluefin Processing TH
Bluefin Foods Group / Processing / Thailand · FY2025 (Jan 2025 - Dec 2025). One question of the cycle, opened for entry. Date answer.
cycle active
methodology lock provisional
GRI 2-23 (b)
Responsible business policy commitment, date approved by the board
Composed guidance (placeholder)
Give the calendar day the board signed off the policy commitment that covers this site. If the sign-off ran over several meetings, use the day the final approval was recorded in the minutes.
Enter an answer
Report an omission instead
Demo helperState 1 of 2 · a real date, accepted
2025-11-14
Format YYYY-MM-DD, year first, for example 2025-11-14. One calendar day only.
Demo helperState 2 of 2 · not a real calendar date, refused
2025-02-30
2025-02-30 is not a real calendar date. February 2025 ends on the 28th. Enter a day that exists, written as YYYY-MM-DD.
Nothing was saved. The date you had before is untouched. ANSWER_FORMAT_INVALID
One or the other, never both.
A question holds either an answer or an omission. If you switch to "Report an omission instead",
the answer on this question is cleared when you save the omission. If you switch back, the omission
is cleared. The screen tells you before it clears anything, and nothing is cleared until you save.
CancelSave answer
Layout · the PM's part 1 ruling R2-6Data entry is the main function of this page, so it is now the main visual area. Before this pass the question reference card and the cycle context card filled the whole first screen and the answer field started below the fold. Nothing was deleted. The facts a person needs WHILE typing sit in the question strip under the page header: question code, composed question title, answer format, reporting status, whether an omission is allowed, and the answered status. Everything else moved into the collapsed "Question and cycle details" section under the entry area, one press away, and the state gallery below draws that section OPEN so the review can confirm every row of both former cards survived. The alternatives the PM offered were a card on the right and a card below. The right-hand card was rejected because it takes width the table answer on page 6 of this wireframe set needs, and the four entry pages have to share one layout. A plain card below was rejected because it keeps the full reference block permanently in the scroll for detail an entry person rarely needs mid-keystroke; the strip plus the expander gives the at-entry facts for free and the rest on demand. Wireframes are static, so the expander is drawn closed here and open in the gallery rather than toggled.
Annotation · not proposed UIDate format contract (spec ii
3.9).
date is one of the three formats added by spec ii and it uses the value slot,
holding an ISO-8601 date string, server-validated. The screen shows the ISO shape to the user on purpose: the
stored string and the displayed string are the same thing, so a Thai or Singapore reader is never guessing
whether 14/11 means November or April. Question for the PM: whether the picker also offers a localized display
format on top of the ISO hint is a UI choice this drawing does not settle. The refusal code drawn in muted
text is ANSWER_FORMAT_INVALID, the per-type format refusal named in spec ii 6.6: one 422 code for an
unparseable date, an illegal table cell, or an out-of-range value, with the per-type detail carried in the response
envelope. It is quoted from the spec, not proposed. The wireframe round is what surfaced the gap; spec v2.2 closed it.Annotation · not proposed UIWhat identifies this answer (spec
ii 6.4 and 3.8). A native answer is keyed by cycle, clause logical id, topic instance (null throughout I1),
organization scope, and period. Native rows carry
clauseLogicalId and do NOT populate
disclosureId; they never pass through the legacy assignment and entry resolvers. The clause is
resolved through the cycle's frozen edition set, so a question outside that edition set refuses with
CLAUSE_NOT_IN_ASSEMBLY rather than rendering.Annotation · not proposed UIExclusivity is structural, not a
screen convention (spec ii 3.9 and 3.10). The answer payload is a closed set with exactly one legal slot per
answer format: this question uses
value. Every native write is one atomic update that sets the
legal slot and unsets the others plus omission, or sets omission and unsets every
payload slot. A date answer converted to an omission therefore retains no stale payload; test 9.2 walks the
whole transition matrix. The screen copy states the rule in plain words because the user has to know the
switch clears, not because the storage needs the warning.Annotation · not proposed UIOmission contract (spec ii 3.10).
Stored shape is
{reason, explanation, expectedAvailability} with four reasons. I1 validates SHAPE
ONLY and refuses a bad reason with OMISSION_REASON_INVALID; whether an omission is PERMITTED for
a given question is enforced in I3, so this screen never claims an omission here is acceptable to a reviewer.
SETTLED, and drawn as settled: the I1 shape is the single free-text
explanation plus expectedAvailability. The 2026-08-21 plan-review adjudication (GF8.2)
recorded per-reason required subfields for the "information not available" case (what is missing, why, steps taken,
timeframe); spec ii 3.10 as amended states that the subfield split lands WITH the I3 enforcement work, not in I1,
so neither record contradicts the other. One item is still open for the PM and it is only wording: the four reason
labels drawn here are composed in our own words, because the spec fixes the enum values and not their display text.Annotation · not proposed UIRole. Daniel Ong holds ENTRY
access. Spec ii 6.2 gives the entry role read access to the two cycle catalog reads (
GET
/v1/reporting-cycles/:id/catalog and .../catalog/clauses/:logicalId) and 403 on every
cycle mutation route; the full matrix is test 9.3. That is why no cycle action appears on this page. The
application shell around the page stands in for existing NxStart chrome and is drawn identically on all twelve
pages of this wireframe set so the surfaces can be compared; which menu items an entry-role user actually sees is existing
product behavior this wireframe set does not restate, and it is not the mechanism that stops the write. The server is.State gallery · date answer · annotation · not proposed UI
The same question in its omission, switch-warning, and untouched states. White cards are the proposed rendering; the amber frames are review scaffolding.
The "Question and cycle details" section, opened · nothing was lost in the move
This is the same section drawn closed under the entry area on the page above, here opened so the review can check the move row by row. Every row of the two former cards is present and unedited. The question code, the answer format, the reporting status, and the omission rule are deliberately DUPLICATED between this section and the question strip: they are the four facts an entry person needs without opening anything, and repeating them costs one line in the strip.
State 3 · the omission tab, selected
Enter an answer
Report an omission instead
The information is not available or is incomplete
Not applicable to this organization
Reporting it is prohibited by law
Held back under a confidentiality restriction
The information is not available or is incomplete
The board minutes for the 2025 policy review are held by group secretariat in Singapore and have not been released to the site yet. The site cannot confirm the exact approval day without them.
Say what is missing and why, in your own words. This text is read by whoever reviews the report.
2026-12-31
Format YYYY-MM-DD. Leave empty if you cannot give a date.
Saving this omission clears the answer on this question. A question holds an answer or an omission, never both. Nothing is cleared until you press Save omission.
CancelSave omission
The four reasons are the spec ii 3.10 set, worded in our own words. Explanation is required with every reason; the availability date is optional and is what a reviewer chases later. Saving here clears any date answer on this question in the same write.
State 4 · switching away from a saved answer
Enter an answer
Report an omission instead
Switching clears the answer you saved
This question already holds the date 2025-11-14, saved by Daniel Ong on 2026-06-03. A question holds an answer or an omission, never both, so saving an omission removes that date.
- The date is removed from this question only. Other questions are untouched.
- The change is recorded with your name and the time.
- You can go back to an answer later; doing that clears the omission instead.
Keep the answerContinue to the omission form
This confirmation dialog is the one switch-away pattern for the whole wireframe set. Every answer type, and the value chain fact form, uses this exact confirmation when a save would clear the other side: it names the saved value, who saved it and when, what clearing does, and offers Keep against Continue. Pages 6, 7, and 10 of this wireframe set reference it rather than drawing a second, weaker version. Self-explaining state per the wireframe set's plain-language rule: what it is, why, and what happens next. The clearing itself is one atomic write server-side (spec ii 3.9), so there is no window in which both exist.
State 5 · nothing entered yet
Enter an answer
Report an omission instead
YYYY-MM-DD
Format YYYY-MM-DD, year first, for example 2025-11-14. One calendar day only.
Empty is a legitimate state in I1: nothing forces an answer or an omission yet. Enforcement of when an omission is permitted, and of completeness, arrives in a later iteration (spec ii 3.10).
State 6 · the answer as it reads back after saving
Date approved2025-11-14
Recorded byDaniel OngSite Manager, Bluefin Processing TH
Recorded at2026-06-03 11:48times are shown in the workspace time zone
OmissionNone on this questiona question holds one or the other, so this line reads None whenever an answer exists
Change the answer
Report an omission instead
The read-back deliberately shows the Omission line as None rather than hiding it, so the one-or-the-other rule is visible in the saved state and not only in the warning that precedes it. Answer entries are not attested and are not made read-only in I1; attestation applies to value chain facts (spec ii 4.1), drawn on page 10 of this wireframe set.